二级C语言模拟题169真题含答案与解析交互.docx

上传人:b****7 文档编号:16047243 上传时间:2023-07-10 格式:DOCX 页数:30 大小:23.85KB
下载 相关 举报
二级C语言模拟题169真题含答案与解析交互.docx_第1页
第1页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第2页
第2页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第3页
第3页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第4页
第4页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第5页
第5页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第6页
第6页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第7页
第7页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第8页
第8页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第9页
第9页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第10页
第10页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第11页
第11页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第12页
第12页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第13页
第13页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第14页
第14页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第15页
第15页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第16页
第16页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第17页
第17页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第18页
第18页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第19页
第19页 / 共30页
二级C语言模拟题169真题含答案与解析交互.docx_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

二级C语言模拟题169真题含答案与解析交互.docx

《二级C语言模拟题169真题含答案与解析交互.docx》由会员分享,可在线阅读,更多相关《二级C语言模拟题169真题含答案与解析交互.docx(30页珍藏版)》请在冰点文库上搜索。

二级C语言模拟题169真题含答案与解析交互.docx

二级C语言模拟题169真题含答案与解析交互

二级C语言模拟题2018年(169)

(总分100,做题时间90分钟)

选择题

1. 

下面函数的功能是______。

sss(s,t)

char*s,*t;

{while((*s)&&(*t)&&(*t++==s++));

return(*s-*t);

}

A 将字符串s复制到字符串t中

B 比较两个字符串的大小

C 求字符串的长度

D 将字符串s接续到字符串t中

    分值:

2

答案:

B

2. 

下面能正确进行字符串赋值的是______。

A chars[5]={"ABCDE");

B chars[5]={"A","B","C","D","E"};

C char*s;s="ABCDE";

D char*s;printf("%s",s);

    分值:

2

答案:

C

3. 

字符串“\\"ABCDEF"\\”的长度是______。

A 15

B 10

C 7

D 8

    分值:

2

答案:

B

4. 

若有chars[3][4]={"AAA","BBB","CCC"};说明语句,则与它等价的语句是______。

A char**s={"AAA","BBB","CCC"};

B char*s[3]={"AAA","BBB","CCC"};

C chars[][5]={"AAA","BBB","CCC"};

D chars[][4]={"AAA","BBB","CCC"};

    分值:

2

答案:

D

5. 

已知char**s,下面正确的语句是______。

A s="ABCDEF";

B *s="ABCDEF";

C **s="ABCDEF";

D *s="A";

    分值:

2

答案:

B

6. 

若有以下说明,则______不是对strcpy库函数的正确的调用。

strcpy库函数用于复制一个字符串:

char*strl="abcd",str2[10],*str3="hijklmn",*str4[2],*str5="aaaa";

A strcpy(str2,str1)

B strcpy(str3,str1)

C strcpy(str4,str1)

D strcpy(str5,str1)

    分值:

2

答案:

C

7. 

下面的程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,程序空白处应该填写的是______。

#include<stdio.h>

main()

{chars1[]="chinese",s2[]="japnese";

inti;

for(i=0;s1[i]!

="\0"&&s2[i]!

="\0";i++)

if(s1[i]==s2[i]&&i<7)

______;

}

A putchar(s2[i]);putcha(i)

B puts(sl[i],i)

C printf("%c%d\n",s2[i],i)

D printf("%c",s1[i]);printf("%d\n",i)

    分值:

2

答案:

C

8. 

若已包括头文件<stdio.h>和<string.h>,运行下面程序段时输出结果是______。

inti=0;

chars1[10]="ABCD",s2[10]="EFG";

strcat(s1,s2);

while(s2[i++]!

="\0")

s2[i]=s1[i];

puts(s2);

A ABC

B ABCDEF

C EBCDEFG

D CBD

    分值:

2

答案:

C

9. 

下面各语句行中,能正确进行赋值字符串操作的是______。

A chars[5]={"a","b","c","d,","e"};

B char*s;gets(s);

C char*s;*s*="ABCDEF";

D chars[5];scanf("%s",&s);

    分值:

2

答案:

B

10. 

若二维数组a有m列,则在a[i][j]前的元素个数为______。

A i*m+j-1

B i*m+j

C j*m+i

D i*m+j+1

    分值:

2

答案:

B

11. 

若输入bcdefgh、m、abcdefg,以下程序的输出结果为______。

#include<stdio.h>

#include<string.h>

main()

{inti;

charstring[20],str[3][20];

for(i=0;i<3;i++)gets(str[i]);

if(strcmp(str[0],str[1])>0)

strcpy(string,str[0]);

elsestrcpy(string,str[1]);

if(strcmp(str[2],string)>0)

strcpy(string,str[2]);

pfintf("%s",string);

}

A bcdefgh

B .m

C abcdefg

D bcdefgh或abcdefg

    分值:

2

答案:

B

12. 

若已包括头文件<stdio.h>和<string.h>,运行下面程序段时输出结果是______。

inti=0;

chars1[10]="ABCD",s2[10]="EFG";

strcat(s1,s2);

while(s2[i++]!

="\0")

s2[i]=s1[i];

puts(s2);

A ABC

B ABCDEF

C EBCDEFG

D CBD

    分值:

2

答案:

C

13. 

对下述程序的判断中,正确的是______。

#include<stdio.h>

voidmain()

{char*p,s[256];

p=s;

while(strcmp(s,"theend"))

{printf("Inputthestring:

");

gets(s);

while(*p)

putchar(*p++);

}

}

A 此程序循环接收字符串并输出,直到接收到字符串“theend”为止

B 此程序循环接收字符串,接收到字符串“theend”则输出,否则程序终止

C 此程序循环接收字符串并输出,直到接收字符串“theend”为止,但因为代码有错误,程序不能正常工作

D 此程序循环接收字符串并将其连接在一起,直到接收字符串“theend”为止,输出连接在一起的字符串

    分值:

2

答案:

A

14. 

若已包括头文件<stdio.h>和<string.h>,运行下面程序的输出结果是______。

chars1[10]="12345",s2[10]="089",s3[]="67";

strcat(strcpy(s1,s2),s3);

puts(s1);

A 08967

B 0894567

C 089567

D 089567

    分值:

2

答案:

A

15. 

设已执行预编译命令#include<string.h>,以下程序段的输出结果是______。

chars[]="abcdefg";

printf("%d\n",strlen(s));

A 7

B 8

C 9

D 10

    分值:

2

答案:

A

16. 

下述程序的输出结果是______。

#include<stdio.h>

main()

{chara[]={"a","b","c","d","e","f","\0"};

inti,j;

i=sizeof(a);

j=strlen(a);

printf("%d,%d",i,j);

}

A 7,7

B 7,6

C 6,6

D 6,7

    分值:

2

答案:

B

17. 

下面程序的输出是______。

#include<stdio.h>

#include<string.h>

main()

{charp1[]="WHO",p2[]="who",str[50]="xyz";

strcpy(str+1,strcat(p1,p2));

printf("%s",str);

}

A xyzWHOwho

B zWHOwho

C zWHOwho

D xWHOwho

    分值:

2

答案:

D

18. 

若已包括头文件<string.h>且已有定义chars1[18],s2={"ABCDE"}和inti,现要将字符串"ABCDE"赋给s1,下述语句错误的是______。

A strcpy(s1,s2);

B strcpy(s1,"ABCDE");

C s1="ABCDE";

D for(i=0;i<6;i++)s1[i]=s2[i];

    分值:

2

答案:

C

19. 

下面各语句行中,不能正确进行操作的语句或声明是______。

A charst[4][5]={"ABCDE"};

B chars[5]={"A","B","C","D","E"};

C char*s;s="ABCDE";

D char*s;scanf("%s",s);

    分值:

2

答案:

B

20. 

下面各语句行中,不能正确进行操作的语句或声明是______。

A charstr[14];str="Iloveyou!

";

B char*a="Iloveyou!

";

C char*a;a="Iloveyou!

";

D charstr[14]={"Iloveyou!

"};

    分值:

2

答案:

A

21. 

设有说明语句:

chara="\72";则变量a______。

A 包含1个字符

B 包含2个字符

C 包含3个字符

D 说明不合法

    分值:

2

答案:

A

22. 

已知有声明“chara[6],*p=a;”,现需要在程序运行过程中将字符串"Hello"保存到a数组中,则下列选项中能正确完成此操作的表达式是______。

A a[6]="Hello"

B a="Hello"

C p="Hello"

D strcpy(a,"Hello")

    分值:

2

答案:

D

23. 

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

A chars[10]="abcdefg";

B chart[]="abcdefg",*s=t;

C chars[10];s="abcdefg";

D chars[10];strcpy(s,"abcdefg");

    分值:

2

答案:

C

24. 

若有数组A和B的声明“staticcharA[]="ABCDEF",B[]={"A","B","c","D","E","F"};”,则数组A和数组B的长度分别是______。

A 7,6

B 6,7

C 6,6

D 7,7

    分值:

2

答案:

A

25. 

有以下程序:

main()

{charS[]="\065\t\xe4\n";

printf(%d,%d\n",strlen(s),sizeof(s));

}

执行后输出结果是______。

A 赋初值的字符串有错

B 6,7

C 5,6

D 6,6

    分值:

2

答案:

B

26. 

函数调用:

strcat(strcpy(s1,s2),s3)的功能是______。

A 将串s1复制到串s2中后再连接到串s3之后

B 将串s1连接到串s2中后再复制到串s3之后

C 将串s2复制到串s1中后再将串s3连接到s1之后

D 将串s2连接到串s1中后再将串s1复制到s3中

    分值:

2

答案:

C

27. 

已知有预处理命令“#include<stdio.h>”和声明“chars[10]="Thankyou";inti;”,要求输出字符串“Thankyou”,以下选项中不能达到该要求的语句是______。

A puts(s);

B printf("%s",s[10]);

C for(i=0;S[i]!

="\0";i++)printf("%c",s[i]);

D for(i=0;s[i]!

="\0";i++)putchar(s[i]);

    分值:

2

答案:

B

28. 

设有如下程序:

#include<stdio.h>

main()

{chars[128]={"\0"),*p=s;

while(strcmp(s,"END"))

{gets(s);while(*p)putchar(*p++);}

}

gets函数每次输入一个字符串。

以下关于该程序运行时输出结果的叙述中正确的是______。

A 所有输入的字符串都能被完整输出

B 所有输入的字符串都不能被完整输出

C 只能完整输出第一个字符串

D 只能完整输出最后一个字符串

    分值:

2

答案:

C

29. 

下述语句中,可以在字符串s1和s2不相等时输出“XYZ”的是______。

A if(*s1!

=*s2)puts("XYZ");

B if(!

strcmp(s1,s2))puts("XYZ");

C if(s1!

=s2)puts("XYZ");

D if(strcmp(s1,s2))puts("XYZ");

    分值:

2

答案:

D

30. 

设有如下定义:

char*s[2]={"abed","ABCD");

则以下说法错误的是______。

A s数组元素的值分别是"abed"和"ABCD"两个字符串的首地址

B s是指针数组名,它含有两个元素分别指向字符型一维数组

C s数组的两个元素分别存放的是含有4个字符的一维字符数组中的元素

D s数组的两个元素中各自存放了字符"a"和"A"的地址

    分值:

2

答案:

C

31. 

有以下程序:

#include<stdio.h>

main()

{charChr[20];

scanf("%s",&Chr);

printf("%s\n",Chr);

}

运行上面的程序,输入字符串MicrosoftVisualStudio,则程序的执行结果是______。

A MicrosoftVisualStudio

B .M

C Microsoft

D MicrosoftVisualStudio

    分值:

2

答案:

C

32. 

下列一维数组说明中,不正确的是______。

A intN;scanf("%d",&N);intb[N];

B floata[]={1,6,6,0,2};

C #defineS10

D inta[S+5];

    分值:

2

答案:

A

33. 

下列程序的输出结果为______。

main()

{unionun

{char*name;

intage;

intpay;

)s;

s.name="zhaoming";

s.age=32;

s.pay=3000;

printf("%d\n".s.age);

}

A 32

B 3000

C 0

D 不确定

    分值:

2

答案:

B

34. 

有以下程序:

#include<stdio.h>

main()

{inta[]={1,2,3,4),y,*p=&a[3];

--p;y=*p;printf("y=%d\n",y);

}

程序的运行结果是______。

A y=0

B y=1

C y=2

D y=3

    分值:

2

答案:

D

35. 

以下程序段的输出结果为______。

staticchara[]="programme";

char*p;

p=a;

for(p=a;p<a+8;p+=2)

putchar(*p);

A programme

B porm

C 有语法错误

D prog

    分值:

2

答案:

B

36. 

下面程序的输出结果是______。

#include<stdio.h>

main()

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

p=a;

printf("%d\n",*p+8);

}

A 0

B 1

C 10

D 9

    分值:

2

答案:

D

37. 

下面程序段的运行结果是______。

#include<stdio.h>

voidmain()

{charstr[]="ABC",*p=str;

printf("%d\n",*(p+3));

}

A 67

B 0

C 字符"C"的地址

D 字符"C"

    分值:

2

答案:

B

38. 

执行下列程序后,输入456<空格>789<空格>123<回车>,输出结果是______。

#include<stdio.h>

main()

{charm[80];

intc,i;

scanf("%d",&c);

scanf("%c",&i);

scanf("%s",&m);

printf("%d,%c,%s\n",c,i,m);

}

A 456,789,123

B 456,,789

C 4,5,6

D 4,56,789

    分值:

2

答案:

B

39. 

下列程序的输出结果是______。

#include<stdio.h>

voidfun(int*a,int*b)

{int*k;

k=a;a=b;b=k;}

main()

{inta=1,b=2,*x=&a,*y=&b;

fun(x,y);

printf("%d%d",a,b);

}

A 21

B 12

C 编译出错

D 00

    分值:

2

答案:

B

40. 

设有如下定义:

structsk

{intm;

floatx;

}data,*q;

若要使q指向data中的m域,正确的赋值语句是______。

A q=&data.m;

B *q=data.m;

C q=(structsk*)&data.m;

D q=(structsk*)data.m;

    分值:

2

答案:

C

41. 

若输入“abcdef”、“abdef”,以下程序的输出结果为______。

#include<stdio.h>

#include<string.h>

main()

{intn;

chars1[20],s2[20],*p1,*p2;

scanf("%s",s1);

scanf("%s",s2);

p1=s1;

p2=s2;

n=strcmp(p1,p2);

printf("%d\n",n);)

A -1

B 0

C "abcdef"

D "abdef"

    分值:

2

答案:

A

42. 

若说明int*p,n;则通过语句scanf能够正确读入数据的程序段是______。

A p=&n;scanf("%d",&p);

B p=&n;scanf("%d",*p);

C scanf("%d",n);

D p=&n;scanf("%d",p);

    分值:

2

答案:

D

43. 

有以下程序:

#include<stdio.h>

main()

{intc;

while((c=getchar())!

="\n")

{switch(c-"3")

{case0:

case1:

putchar(c+4);

case2:

putchar(c+4);break;

case3:

putchar(c+3);

case4:

putchar(c+3);break;

}}

printf("\n");}

从第一列开始输入数据(<CR>代表一个回车符):

3845<CR>,则程序输出结果为______。

A 77889

B 77868

C 776810

D 77886610

    分值:

2

答案:

A

44. 

有以下程序:

#include<string.h>

inta=4;

intf(intn)

{intt=0;staticinta=5;

if(n%2){inta=6;t+=a++;}

else{inta=7;t+=a++;)

returnt+a++;

}

main()

{ints=a,i=0;

for(;i<2;i++)s+=f(i);

printf("%d\n",s);

}

程序运行后的输出结果是______。

A 24

B 28

C 32

D 36

    分值:

2

答案:

B

45. 

以下程序段的输出结果是______。

#include<stdio.h>

main()

{charp[][4]={"ABC","DEF","GHI");

inti;

for(i=0;i<3;i++)

puts(p[i]);

}

A.

B.ADG

C.

D.ABC

A  B  C  D  

    分值:

2

答案:

C

46. 

sizeof(char)是______。

A 一种函数调用

B 一个整型表达式

C 一个字符型表达式

D 一个不合法的表达式

    分值:

2

答案:

B

47. 

以下程序:

#include<stdio.h>

#include<string.h>

main()

{charstr[]="abcd\n\123\xab";

printf("%d",strlen(str));

}

运行后的输出结果是______。

A 10

B 9

C 7

D 14

    分值:

2

答案:

C

48. 

判断char型变量c1是否为小写字母的正确表达式为______。

A "a"<=c1<="z"

B (c1>=a)&&(c1<=z)

C ("a">=c1||("z"<=c1)

D (c1>="a")&&(c1<="z")

    分值:

2

答案:

D

49. 

下列字符数组初始化语句中,不正确的是______。

A charc[]="goodmorning";

B charc[20]="goodmoming";

C charc[]={"a","b","c","d"};

D charc[]={"goodmoming"};

    分值:

2

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

当前位置:首页 > IT计算机 > 计算机硬件及网络

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2