二级C语言笔试试题及参考解答Word文件下载.docx

上传人:b****5 文档编号:19975497 上传时间:2023-01-13 格式:DOCX 页数:19 大小:21.91KB
下载 相关 举报
二级C语言笔试试题及参考解答Word文件下载.docx_第1页
第1页 / 共19页
二级C语言笔试试题及参考解答Word文件下载.docx_第2页
第2页 / 共19页
二级C语言笔试试题及参考解答Word文件下载.docx_第3页
第3页 / 共19页
二级C语言笔试试题及参考解答Word文件下载.docx_第4页
第4页 / 共19页
二级C语言笔试试题及参考解答Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

二级C语言笔试试题及参考解答Word文件下载.docx

《二级C语言笔试试题及参考解答Word文件下载.docx》由会员分享,可在线阅读,更多相关《二级C语言笔试试题及参考解答Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

二级C语言笔试试题及参考解答Word文件下载.docx

B)b++C)c++;

D)d++;

17、设有定义:

floata=2,b=4,h=3;

以下C语言表达式与代数式计算结果不相

符的是()

A)(a+b)*h/2B)(1/2)*(a+b)*hC)(a+b)*h*1/2D)h/2*(a+b)

18、有以下程序

main()

{

intx=102,y=012;

printf("

%2d,%2d\n"

x,y);

}执行后输出结果是()

A)10,01B)002,12C)102,10D)02,10

19、以下4个选项中,不能看作一条语句的是()

A){;

}B)a=0,b=0,c=0;

C)if(a>

0);

D)if(b==0)m=1;

n=2;

20、设有定义:

inta,*pa=&

a;

以下scanf语句中能正确为变量a读入数据的是()

A)scanf("

%d"

pa);

B)scanf("

a);

C)scanf("

&

pa);

D)scanf("

*pa);

21、以下程序段中与语句k=a>

b?

(b>

c?

1:

0):

0;

功能等价的是()

A)if((a>

b)&

&

c))k=1;

B)if((a>

b)||(b>

c))k=1

elsek=0;

C)if(a<

=b)k=0;

D)if(a>

b)k=1;

elseif(b<

=c)k=1;

elseif(b>

c)k=1;

22、有以下程序

{chark;

intI;

for(i=1;

i<

3;

i++)

{scanf("

%c"

k);

switch(k)

{case'

0'

:

another\n"

);

case'

1'

number\n"

}

}

程序运行时,从键盘输入:

01<

回车>

,程序执行后的输出结果是()

A)anotherB)anotherC)anotherD)number

numbernumbernumbernumber

anothernumber

23、有以下程序

{intx=0,y=5,z=3;

while(z-->

0&

++x<

5)y=y-1;

%d,%d,%d\n"

x,y,z);

}

程序执行后的输出结果是()

A)3,2,0B)3,2,-1C)4,3,-1D)5,-2,-5

24、有以下程序

{inti,s=0;

10;

i+=2)s+=i+1;

%d\n"

s);

A)自然数1~9的累加和B)自然数1~10的累加和

C)自然数1~9中的奇数之和D)自然数1~10中的偶数之和

25、有以下程序

{inti,n=0;

for(i=2;

5;

{do

{if(i%3)continue;

n++;

}while(!

i);

n=%d\n"

n);

A)n=5B)n=2C)n=3D)n=4

26、若程序中定义了以下函数

doublemyadd(doublea,doubleb)

{return(a+b);

并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()

A)doublemyadd(doublea,b);

B)doublemyadd(double,double);

C)doublemyadd(doubleb,doublea);

D)doublemyadd(doublex,doubley);

27、有以下程序

charfun(charx,chary)

{if(x<

y)returnx;

returny;

main()

{inta='

9'

b='

8'

c='

7'

;

%c\n"

fun(fun(a,b),fun(b,c)));

}

程序的执行结果是()

A)函数调用出错B)8C)9D)7

28、设有定义:

intn=0,*p=&

n,**q=&

p;

则以下选项中,正确的赋值语句是()

A)p=1;

B)*q=2;

C)q=p;

D)*p=5;

29、有以下程序

voidf(intv,intw)

{intt;

t=v;

v=w;

w=t;

{intx=1,y=3,z=2;

if(x>

y)f(x,y);

elseif(y>

z)f(y,z);

elsef(x,z);

执行后输出结果是()

A)1,2,3B)3,1,2C)1,3,2D)2,3,1

30、有以下程序段

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&

a[3],b;

b=p[5];

b中的值是()

A)5B)6C)8D)9

31、有以下程序

{chara[]="

abcdefg"

b[10]="

%d%d\n"

sizeof(a),sizeof(b));

A)77B)88C)810D)1010

32、有以下程序

voidswap1(intc[])

t=c[0];

c[0]=c[1];

c[1]=t;

voidswap2(intc0,intc1)

t=c0;

c0=c1;

c1=t;

{inta[2]={3,5},b[2]={3,5};

swap1(a);

swap2(b[0],b[1]);

%d%d%d%d\n"

a[0],a[1],b[0],b[1]);

其输出结果是()

A)5353B)5335C)3535D)3553

33、有以下程序

voidsum(int*a)

{a[0]=a[1];

{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;

i>

=0;

i--)sum(&

aa[i]);

aa[0]);

执行后的输出结果是()

A)4B)3C)2D)1

34、有以下程序

intf(intb[][4])

{inti,j,s=0;

for(j=0;

j<

4;

j++)

{i=j;

if(i>

2)i=3-j;

s+=b[i][j];

returns;

{inta[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};

f(a));

A)12B)11C)18D)16

35、有以下定义

#include<

stdio.h>

chara[10],*b=a;

不能给数组a输入字符串的语句是()

A)gets(a)B)gets(a[0])C)gets(&

a[0]);

D)gets(b);

36、有以下程序

{char*p[10]={"

abc"

"

aabdfg"

dcdbe"

abbd"

cd"

};

strlen(p[4]));

A)2B)3C)4D)5

37、有以下程序

inta=2;

intf(int*a)

{return(*a)++;

{ints=0;

{inta=5;

s+=f(&

a);

A)10B)9C)7D)8

38、有以下程序

#definef(x)x*x

{inti;

i=f(4+4)/f(2+2);

i);

A)28B)22C)16D)4

39、设有以下语句

typedefstructS

{intg;

charh;

}T;

则下面叙述中正确的是()

A)可用S定义结构体变量B)可以用T定义结构体变量

C)S是struct类型的变量D)T是structS类型的变量

40、有以下程序

strucSTU{

charname[10];

intnum;

};

voidf1(structSTUc)

{structSTUb={"

LiSiGuo"

2042};

c=b;

voidf2(structSTU*c)

SunDan"

2044};

*c=b;

{structSTUa={"

YangSan"

2041},b={"

WangYin"

2043};

f1(a);

f2(&

b);

a.num,b.num);

A)20412044B)20412043C)20422044D)20422043

41、有以下程序

{unsignedchara,b;

a=4|3;

b=4&

a,b(;

A)70B)07C)11D)430

42、下面程序的功能是输出以下形式的金字塔图案是:

*

***

*****

*******

{inti,j;

=4;

{for(j=1;

=4-i;

j++)printf("

"

for(j=1;

=_______;

*"

\n"

在下划线处应填入的是()

A)iB)2*i-1C)2*i+1D)i+2

43、有以下程序

voidsort(inta[],intn)

{inti,j,t;

for(i=0;

n-1;

i+=2)

for(j=i+2;

n;

j+=2)

if(a[i]<

a[j]){t=a[i];

a[i]=a[j];

a[j]=t;

main()

sort(aa,10);

i++)printf("

aa[i]);

A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,

C)9,2,7,4,5,6,3,8,1,10,D)1,10,3,8,5,6,7,4,9,2,

44、以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()

A)chars[10]="

B)chart[]="

*s=t;

C)chars[10];

s="

D)chars[10];

strcpy(s,"

45、有以下程序

string.h>

main(intargc,char*argv[])

{inti,len=0;

argc;

i+=2)len+=strlen(argv[i]);

5d\n"

len);

}经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行

exabcdefgh3k44

A)14B)12C)8D)6

46、有以下程序

voidf(inta[],inti,intj)

if(i<

j)

{t=a[i];

a[i]=a[j];

f(a,i+1,j-1);

{inti,aa[5]={1,2,3,4,5};

f(aa,0,4);

%d,"

A)5,4,3,2,1,B)5,2,3,4,1,C)1,2,3,4,5,D)1,2,3,4,5,

47、有以下程序

structSTU

{charname[10];

intScore;

{structSTUs[5]={{"

20041,703},{"

20042,580},

{"

wangYin"

20043,680},{"

20044,550},

Penghua"

20045,537}},*p[5],*t;

inti,j;

i++)p[i]=&

s[i];

for(j=i+1;

if(p[i]->

Score>

p[j]->

Score)

{t=p[i];

p[i]=p[j];

p[j]=t;

5d%d\n"

s[1].Score,p[1]->

Score);

A)550550B)680680C)580550D)580680

48、有以下程序

stdlib.h>

structNODE{

structNODE*next;

{structNODE*p,*q,*r;

intsum=0;

p=(structNODE*)malloc(sizeof(structNODE));

q=(structNODE*)malloc(sizeof(structNODE));

r=(structNODE*)malloc(sizeof(structNODE));

p->

num=1;

q->

num=2;

r->

num=3;

next=q;

next=r;

next=NULL;

sum+=q->

next->

num;

sum+=p->

printf("

sum);

执行后的输出结果是

A)3B)4C)5D)6

49、有以下程序

{FILE*fp;

inti,k=0,n=0;

fp=fopen("

d1.dat"

w"

i++)fprintf(fp,"

fclose(fp);

r"

fscanf(fp,"

%d%d"

k,&

n);

k,n);

A)12B)1230C)123D)00

50、有以下程序(提示:

程序中fseek(fp,-2L*sizeof(int),SEEK_END);

语句的作用是使位置指针从文件尾向前移2*sizeof(int)字节)

inti,a[4]={1,2,3,4},b;

data.dat"

wb"

i++)fwrite(&

a[i],sizeof(int),1,fp);

rb"

);

fseek(fp,-2L*sizeof(int).SEEK_END);

fread(&

b,sizeof(int),1,fp);

/*从文件中读取sizeof(int)字节的数据到变量b中*/

b);

A)2B)1C)4D)3

二、填空题(每空2分,共40分)

1、E-mail地址由用户名和域名两部分组成,这两部分的分隔符为【1】。

2、计算机网络分为广域网和局域网,因特网属于【2】。

3、从Windows环境进入MS-DOS方式后,返回Windows环境的DOS命令为【3】。

4、在Windows环境下,只要在"

开始"

菜单中单击【4】选项,就可以查阅最近打开过的文档清单。

5、计算机的运算速度可以用MIPS来描述,1MIPS是指每秒执行【5】条指令。

6、已知字符A的ACSII码值为65,以下语句的输出结果是【6】

charch=’B’;

%c%d\n"

ch,ch);

7、有以下语句段

intn1=10,n2=20;

【7】"

n1.n2);

要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。

n1=10

n2=20

8、有以下程序

{intt=1,i=5;

for(;

i--)t*=i;

t);

}执行后输出结果是【8】。

9、有以下程序

{intn=0,m=1,x=2;

if(!

n)x-=1;

if(m)x-=2;

if(x)x-=3;

x);

}执行后输出结果是【9】。

10、有以下程序

{charch1,ch2;

intn1,n2;

ch1=getchar();

ch2=getchar();

n1=ch1-‘0’;

n2=n1*10+(ch2-‘0’);

n2);

}程序运行时输入:

12<

,执行后输出结果是【10】。

11、有以下程序

voidf(inty,int*x)

{y=y+*x;

*x=*x+y;

{intx=2,y=4;

f(y,&

x);

}执行后输出的结果是【11】。

12、函数fun的功能是计算xn

doublefun(doublex,intn)

{inti;

doubley=1;

=n;

i++)y=y*x;

}主函数中已经正确定义m,a,b变量并赋值,并调用fun函数计算:

m=a4+b4-(a+b)3。

实现这一计算的函数调用语句为【12】。

13、下面rotate函数的功能是:

将n行n列的矩阵A转置为A’,例如:

123415913

5678261014

当A=9101112则A’=371115

13141516481216

请填空

#defineN4

voidrotate(inta[][N])

N;

【13】;

{t=a[i][j];

【14】;

a[j][i]=t;

14、以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。

请填空。

voidsstrcpy(char*s,char*t)

{while(*s++=【15】);

{charstr1[100],str2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 司法考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1