二级c习题范俊伟.docx

上传人:b****1 文档编号:2083023 上传时间:2023-05-02 格式:DOCX 页数:31 大小:23.10KB
下载 相关 举报
二级c习题范俊伟.docx_第1页
第1页 / 共31页
二级c习题范俊伟.docx_第2页
第2页 / 共31页
二级c习题范俊伟.docx_第3页
第3页 / 共31页
二级c习题范俊伟.docx_第4页
第4页 / 共31页
二级c习题范俊伟.docx_第5页
第5页 / 共31页
二级c习题范俊伟.docx_第6页
第6页 / 共31页
二级c习题范俊伟.docx_第7页
第7页 / 共31页
二级c习题范俊伟.docx_第8页
第8页 / 共31页
二级c习题范俊伟.docx_第9页
第9页 / 共31页
二级c习题范俊伟.docx_第10页
第10页 / 共31页
二级c习题范俊伟.docx_第11页
第11页 / 共31页
二级c习题范俊伟.docx_第12页
第12页 / 共31页
二级c习题范俊伟.docx_第13页
第13页 / 共31页
二级c习题范俊伟.docx_第14页
第14页 / 共31页
二级c习题范俊伟.docx_第15页
第15页 / 共31页
二级c习题范俊伟.docx_第16页
第16页 / 共31页
二级c习题范俊伟.docx_第17页
第17页 / 共31页
二级c习题范俊伟.docx_第18页
第18页 / 共31页
二级c习题范俊伟.docx_第19页
第19页 / 共31页
二级c习题范俊伟.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

二级c习题范俊伟.docx

《二级c习题范俊伟.docx》由会员分享,可在线阅读,更多相关《二级c习题范俊伟.docx(31页珍藏版)》请在冰点文库上搜索。

二级c习题范俊伟.docx

二级c习题范俊伟

一、选择题答案

1.下列选项中,合法的C语言关键字是B

A)VAR

B)cher

C)integer

D)default

你所选择的答案是:

*,正确答案是:

2.下列程序的运行结果是B

voidfun(int*a,int*b)

{int*k;

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

}

main()

{inta=3,b=6,*x=&a,*y=&b;

fun(x,y);

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

}

A)63

B)36

C)编译出错

D)00

你所选择的答案是:

*,正确答案是:

3.下面程序的输出结果是C

main()

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

p=a;

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

}

A)0

B)1

C)10

D)9

你所选择的答案是:

*,正确答案是:

4.以下程序的输出结果是A

longfun(intn)

{longs;

if(n==1||n==2)s=2;

elses=n-fun(n-1);

returns;

}

main()

{printf("%ld\n",fun(3));}

A)1

B)2

C)3

D)4

你所选择的答案是:

*,正确答案是:

5.以下选项中合法的字符常量是B

A)"B"

B)'\010'

C)68

D)D

你所选择的答案是:

*,正确答案是:

6.以下程序的输出结果是

main()

{intnum=0;

while(num<=2)

{num++;printf("%d\n",num);

}

A)1

2

3

4

B)1

2

3

C)1

2

D)l

你所选择的答案是:

*,正确答案是:

7.假定int类型变量占用两个字节,其有定义:

intx[10]={0,2,4};,则数组x在内存中所占字节数是

A)3

B)6

C)10

D)20

你所选择的答案是:

*,正确答案是:

8.以下叙述正确的是

A)可以把define和if定义为用户标识符

B)可以把define定义为用户标识符,但不能把if定义为用户标识符

C)可以把if定义为用户标识符,但不能把define定义为用户标识符

D)define和if都不能定义为用户标识符

你所选择的答案是:

*,正确答案是:

9.以下程序的输出结果是

main()

{inta=0,i;

for(i=;i<5;i++)

{switch(i)

{case0:

case3:

a+=2;

case1:

case2:

a+=3;

default:

a+=5;

}

}

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

}

A)31

B)13

C)10

D)20

你所选择的答案是:

*,正确答案是:

10.在C语言中,形参的缺省存储类是

A)auto

B)register

C)static

D)extern

你所选择的答案是:

*,正确答案是:

11.若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是

A)p=2*(int*)malloc(sizeof(int));

B)p=(int*)malloc(2*sizeof(int));

C)p=(int*)malloc(2*2);

D)p=(int*)calloc(2,sizeof(int));

你所选择的答案是:

*,正确答案是:

12.以下不能正确进行字符串赋初值的语句是

A)charstr[5]="good!

";

B)charstr[]="good!

";

C)char*str="good!

";

D)charstr[5]={'g','o','o','d'};

你所选择的答案是:

*,正确答案是:

13.已知i、j、k为int型变量,若从键盘输入:

1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是

A)scanf("%2d%2d%2d",&i,&j,&k);

B)scanf("%d%d%d",&i,&j,&k);

C)scanf("%d,%d,%d",&i,&j,&k);

D)scanf("i=%d,j=%d,k=%d",&i,&j,&k);

你所选择的答案是:

*,正确答案是:

14.有一函数,

1(x>0)

y=0(x=0)

-1(x<0)

以下程序段中不能根据x值正确计算出y值的是

A)if(x>0)y=1;

elseif(x==0)y=0;

elsey=-1;

B)y=0;

if(x>0)y=1;

elseif(x<0)y=-1;

C)y=0;

if(x>=0);

if(x>0)y=1;

elsey=-1;

D)if(x>=0)

if(x>0)y=1;

elsey=0;

elsey=-1;

你所选择的答案是:

*,正确答案是:

15.有以下程序

main()

{inta=15,b=21,m=0;

switch(a%3)

{case0:

m++;break;

case1:

m++;

switch(b%2)

{default:

m++;

case0:

m++;break;

}

}

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

}

程序运行后的输出结果是

A)1

B)2

C)3

D)4

你所选择的答案是:

*,正确答案是:

16.有以下程序

voidfun(char*c,intd)

{*c=*c+1;d=d+1;

printf("%c,%c,",*c,d);

}

main()

{chara='A',b='a';

fun(&b,a);printf("%c,%c\n",a,b);

}

程序运行后的输出结果是

A)B,a,B,a

B)a,B,a,B

C)A,b,A,b

D)b,B,A,b

你所选择的答案是:

*,正确答案是:

17.有以下程序

main()

{chara[]={'a','b','c','d','e','f','g','h','\0'};inti,j;

i=sizeof(a);j=strlen(a);

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

}

程序运行后的输出结果是

A)9,9

B)8,9

C)1,8

D)9,8

你所选择的答案是:

*,正确答案是:

18.有以下程序

#include

main()

{char*p="abcde\Ofghjik\0";

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

}

程序运行后的输出结果是

A)12

B)15

C)6

D)5

你所选择的答案是:

*,正确答案是:

19.若有以下程序段(n所赋的是八进制数)

  intm=32767,n=032767

  printf("%d,%o/n",m,n);

  执行后输出结果是( )。

 A)32767,32767

 B)32767,032767

 C)32767,77777

 D)32767,077777

你所选择的答案是:

*,正确答案是:

20.以下函数的功能是:

通过键盘输入数据,为数组中的所有元素赋值。

  #defineN10

  voidarrin(intx[N])

  {inti=0;

  while(i

  scanf("%d",_____);

  }

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

 A)x+i

 B)&x[i+1]

 C)x+(i++)

 D)&x[++i]

你所选择的答案是:

*,正确答案是:

21.有以下程序

  main()

  {chars[]="\n123\\";

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

  }

  执行后输出结果是( )。

A)赋初值的字符串有错

 B)6,7

 C)5,6

 D)6,6

你所选择的答案是:

*,正确答案是:

22.有以下程序

  main()

  {union{unsignedintn;

  unsignedcharc;

  }u1;

  ul.c=`A`;

  printf("%c\n",u1.n);

  }

执行后输出结果是( )。

 A)产生语法错

 B)随机值

 C)A

 D)65

你所选择的答案是:

*,正确答案是:

23.以下程序段中,能够通过调用函数fun,使main函数中的指针变量p指向一个合法的整型单元的是( )。

 A)main() 

  {int*p;

  fun(p);

  }

  intfun(int*p)

  {ints;p=&s;}

B)main

 {int*p;

 fun(&p);

 }

 intfun(int**p)

 {ints;*p=&s;}

C)#include

  main()

  {int*p;

  fun(&p);

  }

  intfun(int**p)

  {*p=(int*)malloc

(2);}

D)#include

 main()

 {int*p;

  fun(p);

 }

 intfun(int*p)

 {p=(int*)malloc(sizeo(int));}

你所选择的答案是:

*,正确答案是:

24.以下叙述中不正确的是( )。

 A)C语言中的文本文件以ASCⅡ码形式存储数据

 B)C语言中对二进制文件的访问速度比文本文件快

 C)C语言中,随机读写方式不适用于文本文件

 D)C语言中,顺序读写方式不适用于二进制文件

你所选择的答案是:

*,正确答案是:

25.以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。

  #include

  main()

  {FILE*fout;charch;

  fout=fopen('abc.txt','w');

  ch=fgetc(stdin);

  while(ch!

='#')

  {fputc(ch,fout);

  ch=fgetc(stdin);

  }

  fclose(fout);

  }

出错的原因是( )。

A)函数fopen调用形式错误

B)输入文件没有关闭

C)函数fgetc调用形式错误

D)文件指针stdin没有定义

你所选择的答案是:

*,正确答案是:

26.有以下程序

  main()

  {intk=4,n=0;

  for(;n  {n++;

  if(n%3!

=0)continue;

  k--;}

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

  }

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

 A)1,1

 B)2,2

 C)3,3

 D)4,4

你所选择的答案是:

*,正确答案是:

27.若以下选项中的变量已正确定义,则正确的赋值语句是( )。

A)x1=26.8%3;  B)1+2=x2  C)x3=0x12  D)x4=1+2=3;

你所选择的答案是:

*,正确答案是:

28.有以下程序

main()

{chark;intI;

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

 {scanf(“%c”,&k);

  switch(k)

   {case‘0’:

printf(“another\n”);

    case‘1’:

printf(“number\n”);

   }

 }

}

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

01<回车>,程序执行后的输出结果是( )。

A)another

 number

another

B)another

number

 number

C)another

 number

D)number

number

你所选择的答案是:

*,正确答案是:

29.有以下程序

main()

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

  while(z-->0&&++x<5)y=y-1;

    printf(“%d,%d,%d\n”,x,y,z);

}

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

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

你所选择的答案是:

*,正确答案是:

30.有以下程序

charfun(charx,chary)

{if(xreturny;

}

 main()

 {inta=’9’,b=’8’,c=’7’;

  printf(“%c\n”,fun(fun(a,B),fun(b,C)));

 }

程序的执行结果是( )。

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

你所选择的答案是:

*,正确答案是:

31.有以下程序

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;

}

main()

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

printf(“%d\n”,f(A));

}

执行后的输出结果是( )。

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

你所选择的答案是:

*,正确答案是:

32.用C语言编写的代码程序( )。

A)可立即执行

B)是一个源程序

C)经过编译即可执行

D)经过编译解释才能执行

你所选择的答案是:

*,正确答案是:

33.有以下定义语句

doublea,b;intw;longc;

若各变量已正确赋值,则下列选项中正确的表达式是( )。

A)a=a+b=b++

B)w%(int)a+b)

C)(c+w)%(int)a

D)w=a==b;

你所选择的答案是:

*,正确答案是:

34.有以下程序

  main()

  {

  inta=3,b=4,c=5,d=2;

  if(a>b)

  if(b>c)

  printf("%d",d+++1);

  else

  printf("%d",++d+1);

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

  }

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

A)2

B)3

C)43

D)44

你所选择的答案是:

*,正确答案是:

35.有以下定义和语句

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

p[0]=a[1];

则*p[0]+1)所代表的数组元素是( )。

A)a[0][1]

B)a[1][0]

C)a[1][1]

D)a[1][2]

你所选择的答案是:

*,正确答案是:

36.有以下程序

  main()

  {unsignedinta;

  intb=-1;

  a=b;

  printf("%u",a);

  }

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

A)-1

B)65535

C)32767

D)-32768

你所选择的答案是:

*,正确答案是:

37.数字字符0的ASCII值为48,若有以下程序

main()

{chara='1',b='2';

printf("%c,",b++);

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

}

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

 A)3,2

 B)50,2

 C)2,2

 D)2,50

你所选择的答案是:

*,正确答案是:

38.有定义语句:

intb;charc[10];,则正确的输入语句是( )。

 A)scanf("%d%s",&b,&c);

 B)scanf("%d%s",&b,c);

 C)scanf("%d%s",b,c);

 D)scanf("%d%s",b,&c);

你所选择的答案是:

*,正确答案是:

39.有以下程序

main()

{

intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;

while(i++<7)if(p[i]%2)j+=p[i];

printf("%d",j);

}

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

 A)42

 B)45

 C)56

 D)60

你所选择的答案是:

*,正确答案是:

40.已有定义:

chara[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是( )。

 A)数组a和b的长度相同

 B)a数组长度小于b数组长度

 C)a数组长度大于b数组长度

 D)上述说法都不对

你所选择的答案是:

*,正确答案是:

41.有以下程序

main()

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

for(p=a;p

printf("%d,",*p);

}

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

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

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

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

 D)1,1,1,1,1,1,1,1,1,,1,

你所选择的答案是:

*,正确答案是:

42.有以下程序

main()

{

intc=35;printf("%d",c&c);

}

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

 A)0

 B)70

 C)35

 D)1

你所选择的答案是:

*,正确答案是:

43.有以下函数

fun(char*a,char*b)

{

while((*a!

='')&&(*b!

='')&;&(*a==*b))

{a++;b++;}

return(*a-*b);

}

该函数的功能是( )。

 A)计算a和b所指字符串的长度之差

 B)将b所指字符串复制到a所指字符串中

 C)将b所指字符串连接到a所指字符串后面

 D)比较a和b所指字符串的大小

你所选择的答案是:

*,正确答案是:

44.程序中若有如下的说明和定义语句

charfun(char*);

main()

{

char*s="one",a[5]={0},(*f1)()=fun,ch;

……

}

以下选项中对函数fun的正确调用语句是( )。

 A)(*f1)(a);

 B)*f1(*s);

 C)fun(&a);

 D)ch=*f1(s)

你所选择的答案是:

*,正确答案是:

45.以下关于函数的叙述中正确的是( )。

  A)每个函数都可以被其它函数调用(包括main函数)

  B)每个函数都可以被单独编译

  C)每个函数都可以单独运行

  D)在一个函数内部可以定义另一个函数

你所选择的答案是:

*,正确答案是:

46.设变量已正确定义,则以下能正确计算f=n!

的程序段是( )。

A)f=0;

  for(i=1;i<=n;i++)

f*=i;

B)f=1;

for(i=1;i>=2;i--)

 f*=i;

C)f=1;         

 for(i=n;i>1;i--)

f=f*i;

D)f=1;

for(i=n;i>=2;i--)

f=f*i

你所选择的答案是:

*,正确答案是:

47.设有定义:

intn1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是( )。

  A)*p=*q;B)p=q;C)*p=&n1;D)p=*q;

你所选择的答案是:

*,正确答案是:

48.有以下程序

  #include

  main()

  {charc1='1',c2='2';

  c1=getchar();c2=getchar();putchar(c1);putchar(c2);

  }

当运行时输入:

a<回车>后,以下叙述正确的是( )。

  A)变量c1被赋予字符a,c2被赋予回车符

  B)程序将等待用户输入第2个字符

  C)变量c1被赋予字符a,c2中仍是原有字符2

  D)变量c1被赋予字符a,c2中将无确定值

你所选择的答案是:

*,正确答案是:

49.有以下程序

  voidsort(inta[],intn)

  {inti,j,t;

  for(i=0;i  for(j=i+1;j  if(a[i]  }

  main()

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

  sort(aa+2,5);

  for(i=0;i<10;i++)printf("%d,",aa[i]);

  printf("\n");

  }

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

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

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

你所选择的答案是:

*,正确答案是:

50.有以下程序

  voidsum(inta[])

  {a[0]=a[-1]+a[1];}

  main()

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

  sum(&a[2]);

  printf("%d\n",a[2]);

  }

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

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

你所选择的答案是:

*,正确答案是:

51.有以下程序

  inta=2;

  intf(intn)

  {staticinta=3;

  i

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

当前位置:首页 > 高中教育 > 英语

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

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