二级C语言上机题库01.docx

上传人:b****7 文档编号:9030067 上传时间:2023-02-02 格式:DOCX 页数:31 大小:23.35KB
下载 相关 举报
二级C语言上机题库01.docx_第1页
第1页 / 共31页
二级C语言上机题库01.docx_第2页
第2页 / 共31页
二级C语言上机题库01.docx_第3页
第3页 / 共31页
二级C语言上机题库01.docx_第4页
第4页 / 共31页
二级C语言上机题库01.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

二级C语言上机题库01.docx

《二级C语言上机题库01.docx》由会员分享,可在线阅读,更多相关《二级C语言上机题库01.docx(31页珍藏版)》请在冰豆网上搜索。

二级C语言上机题库01.docx

二级C语言上机题库01

一、选择题答案

1.以下所列的C语言常量中,错误的是

A)0xFF

B)1.2e0.5

C)2L

D)'\72'

你所选择的答案是:

B,正确答案是:

B√

2.有以下程序段

intx=3

do

{printf("%d",x-=2);}

while(!

(--x));

其输出结果是

A)1

B)30

C)1-2

D)死循环

你所选择的答案是:

C,正确答案是:

C√

3.当调用函数时,实参是一个数组名,则向函数传送的是

A)数组的长度

B)数组的首地址

C)数组每一个元素的地址

D)数组每个元素中的值

你所选择的答案是:

B,正确答案是:

B√

4.若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是

A)EOF

B)-1

C)非零值

D)NULL

你所选择的答案是:

C,正确答案是:

C√

5.假定x和y为double型,则表达式x=2,y=x+3/2的值是

A)3.500000

B)3

C)2.000000

D)3.000000

你所选择的答案是:

D,正确答案是:

D√

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

main()

{inta=3;

printf("%d\n",(a+a-=a*a));

}

A)-6

B)12

C)0

D)-12

你所选择的答案是:

D,正确答案是:

D√

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

main()

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

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

}

A)0650

B)1470

C)5430

D)输出值不定

你所选择的答案是:

A,正确答案是:

A√

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

#defineM(x,y,z)x*y+z

main()

{inta=1,b=2,c=3;

printf("%d\n",M(a+b,b+c,c+a));

}

A)19

B)17

C)15

D)12

你所选择的答案是:

D,正确答案是:

D√

9.若变量a是int类型,并执行了语句:

a='A'+1.6;,则正确的叙述是

A)a的值是字符C

B)a的值是浮点型

C)不允许字符型和浮点型相加

D)a的值是字符'A'的ASCII值加上1。

你所选择的答案是:

B,正确答案是:

10.以下程序中,while循环的循环次数是

main()

{inti=0;

while(i<10)

{if(i<1)continue;

if(i==5)break;

i++;

}

......

}

A)1

B)10

C)6

D)死循环,不能确定次数

你所选择的答案是:

D,正确答案是:

D√

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

#include

main()

{

inti=0,a=0;

while(i<20)

{

for(;;)

{

if((i%10)==0)break;

elsei--;

}

i+=11;a+=i;

}

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

}

A)21

B)32

C)33

D)11

你所选择的答案是:

A,正确答案是:

12.以下程序段的输出结果是

chars[]="\\141\141abc\t";

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

A)9

B)12

C)13

D)14

你所选择的答案是:

A,正确答案是:

A√

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

A)auto

B)register

C)static

D)extern

你所选择的答案是:

A,正确答案是:

A√

14.若指针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));

你所选择的答案是:

A,正确答案是:

A√

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

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i

returns;

}

main()

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

x=f(a,3,7);

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

}

A)10

B)18

C)8

D)15

你所选择的答案是:

A,正确答案是:

A√

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

main()

{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

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

for(j=i;j<=i;j++)t=t+b[i][b[j][j]];

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

}

A)3

B)4

C)1

D)9

你所选择的答案是:

B,正确答案是:

B√

17.有以下程序

intf(intn)

{if(n==1)return1;

elsereturnf(n-1)+1;

}

main()

{inti,j=0;

for(i=i;i<3;i++)j+=f(i);

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

}

程序运行后的输出结果是

A)4

B)3

C)2

D)1

你所选择的答案是:

B,正确答案是:

B√

18.有以下程序

inta=3;

main()

{ints=0;

{inta=5;s+=a++;}

s+=a++;printf("%d\n",s);

}

程序运行后的输出结果是

A)8

B)10

C)7

D)11

你所选择的答案是:

D,正确答案是:

19.C语言中用于结构化程序设计的三种基本结构是( )。

 A)顺序结构、选择结构、循环结构

 B)if、switch、break

 C)for、while、do-while

 D)if、for、continue

你所选择的答案是:

A,正确答案是:

A√

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

  intm=32767,n=032767

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

  执行后输出结果是( )。

 A)32767,32767

 B)32767,032767

 C)32767,77777

 D)32767,077777

你所选择的答案是:

A,正确答案是:

A√

21.有以下程序

  main()

  {char*s[]={"one","two","three"},*p;

  p=s[1];

  printf("%c,%s\n",*(p+1),s[0]);

  }

执行后输出结果是( )。

 A)n,two

 B)t,one

 C)w,one

 D)o,two

你所选择的答案是:

C,正确答案是:

C√

22.有以下程序

  main()

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

  inti,j,k=2;

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

  {printf("%d",m[k][i]);}

  }

执行后输出结果是( )。

 A)456

 B)258

 C)369

 D)789

你所选择的答案是:

C,正确答案是:

C√

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

 A)全局变量的作用域一定比局部变量的作用域范围大

 B)静态(static)类别变量的生存期贯穿于整个程序的运行期间

 C)函数的形参都属于全局变量

 D)未在定义语句中赋初值的auto变量和static变量的初值都是随机值

你所选择的答案是:

B,正确答案是:

B√

24.有以下程序

voidfun(int*a,inti,intj)

{

intt;

if(i

{

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

fun(a,++i,--j);

}

}

main()

{

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

fun(a,0,5);

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

printf("%d",a[i]);

}

执行后的输出结果是

A)654321

B)432156

C)456123

D)123456

你所选择的答案是:

A,正确答案是:

A√

25.有以下程序

  main()

  {inta;charc=10;

  floatf=100.0;doublex;

  a=f/=c*=(x=6.5);

  printf("%d%d%3.1f%3.1f\n",a,c,f,x);

  }

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

 A)16516.5

 B)1651.56.5

 C)1651.06.5

 D)2651.56.5

你所选择的答案是:

B,正确答案是:

B√

26.以下选项中非法的表达式是( )。

 A)0<=x<100

 B)i=j==0

 C)(char)(65+3)

 D)x+1=x+1

你所选择的答案是:

D,正确答案是:

D√

27.要求以下程序的功能是计算:

s=1+1/2+1/3+……+1/10

  main()

  {intn;floats;

  s=1.0;

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

  s=s+1/n;

  printf("%6.4f\n",s);

  }

程序运行后输出结果错误,导致错误结果的程序行是( )。

 A)s=1.0;

 B)for(n=10;n>1;n--)

 C)s=s+1/n;

 D)printf("%6.4f\n",s);

你所选择的答案是:

C,正确答案是:

C√

28.有以下程序

  voidfun(char*a,char*b)

  {a=b;(*a)++;}

  main()

  {charc1='A',c2='a',*p1,*p2;

  p1=&c1;p2=&c2;fun(p1,p2);

  printf("%c%c\n",c1,c2);

  }

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

 A)Ab

 B)aa

 C)Aa

 D)Bb

你所选择的答案是:

C,正确答案是:

29.已定义以下函数

fun(int*p)

{return*p;}

该函数的返回值是( )。

 A)不确定的值

 B)形参p中存放的值

 C)形参p所指存储单元中的值

 D)形参p的地址值

你所选择的答案是:

C,正确答案是:

C√

30.有以下程序

fun(inta,intb)

{if(a>b)return(a);

elsereturn(b);

}

main()

{intx=3,y=8,z=6,r;

r=fun(fun(x,y),2*z);

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

}

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

 A)3

 B)6

 C)8

 D)12

你所选择的答案是:

D,正确答案是:

D√

31.有以下程序

structs

{intx,y;}data[2]={10,100,20,200};

main()

{structs*p=data;

printf("%d\n",++(p->x));

}

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

 A)10

 B)11

 C)20

 D)21

你所选择的答案是:

B,正确答案是:

B√

32.有以下程序

main()

{

intx=102,y=012;

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

}

执行后输出结果是( )。

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

你所选择的答案是:

C,正确答案是:

C√

33.有以下程序

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

你所选择的答案是:

D,正确答案是:

34.有以下程序

main()

{inti,s=0;

for(i=1;i<10;i+=2)s+=i+1;

printf(“%d\n”,s);

}

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

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

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

你所选择的答案是:

D,正确答案是:

D√

35.有以下程序

main()

{inti,n=0;

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

{do

{if(i%3)continue;

   n++;

}while(!

i);

   n++;

}

printf(“n=%d\n”,n);

}

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

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

你所选择的答案是:

D,正确答案是:

D√

36.有以下程序

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

你所选择的答案是:

D,正确答案是:

D√

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

*

***

*****

*******

main()

{inti,j;

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

{for(j=1;j<=4-i;j++)printf(““);

for(j=1;j<=_______;j++)printf(“*”);

printf(“\n”);

}

}

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

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

你所选择的答案是:

B,正确答案是:

B√

38.以下定义语句中正确的是( )。

A)chara='A'b='B';

B)floata=b=10.0;

C)inta=10,*b=&a;

D)float*a,b=&a;

你所选择的答案是:

C,正确答案是:

C√

39.有以下定义语句

doublea,b;intw;longc;

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

A)a=a+b=b++

B)w%(int)a+b)

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

D)w=a==b;

你所选择的答案是:

D,正确答案是:

40.有以下程序

intf(inta)

{returna%2;}

main()

{ints[8]={1,3,4,2,3,6},i,d=0;

for(i=0;f(s[i]);i++)

{d=d+s[i];printf("%d,%d\n",i,s[i]);}

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

}

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

A)9

B)4

C)19

D)21  

你所选择的答案是:

B,正确答案是:

B√

41.若有以下说明和语句,intc[4][5],(*p)[5];p=c;能正确引用c数组元素的是( )。

A)p+1

B)*(p+3)

C)*(p+1)+3

D)*(p[0]+2])  

你所选择的答案是:

D,正确答案是:

D√

42.有以下程序

main()

{

chars[]="ABCD",*p;

for(p=s+1;p

}

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

A)ABCD

 BCD

 CD

 D

B)A

 B

 C

 D

C)B

 C

 D

D)BCD

 CD

 D

你所选择的答案是:

D,正确答案是:

D√

43.有以下程序

main()

{chars[]="Yes\n/No",*ps=s;

printf("%s,",ps+4);

*(ps+4)=0;

printf("%s",s);

}

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

A)/No,Yes

B)/No,/No

C)n/NO,Yes

D)Yes,Yes

你所选择的答案是:

A,正确答案是:

A√

44.有以下程序

main()

{inti=1,j=2,k=3;

if(i++==1&&(++j==3||k++==3))

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

}

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

 A)123

 B)234

 C)223

 D)233

你所选择的答案是:

D,正确答案是:

D√

45.有以下程序

main()

{inta[3][2]={0},(*ptr)[2],i,j;

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

{ptr=a+i;

scanf("%d",ptr);

ptr++;

}

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

{

for(j=0;j<2;j++)

printf("%2d",a[i][j]);

printf("");

}

}

若运行时输入:

123<回车>,则输出结果为( )。

A)产生错误信息

B)10

 20

 00

C)12

 30

 00

D)10

 20

 30

你所选择的答案是:

B,正确答案是:

B√

46.以下叙述中错误的是( )。

  A)用户所定义的标识符允许使用关键字

  B)用户所定义的标识符应尽量做到“见名知意”

  C)用户所定义的标识符必须以字母或下划线开头

  D)用户定义的标识符中,大、小写字母代表不同标识

你所选择的答案是:

A,正确答案是:

A√

47.有以下程序段

  typedefstructNODE

  {intnum;structNODE*next;

  }OLD;

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

  A)以上的说明形式非法    B)NODE是一个结构体类型

  C)OLD是一个结构体类型    D)OLD是一个结构体变量

你所选择的答案是:

C,正确答案是:

C√

48.设有定义:

inta=2,b=3,c=4;,则以下选项中值为0的表达式是( )。

  A)(!

a==1)&&(!

b==0)  B)a    C)a&&b  D)a||(b+b)&&(c-a)

你所选择的答案是:

A,正确答案是:

A√

49.有以下程序

  main()

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

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

  }

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

  A)16   B)10   C)8   D)6

你所选择的答案是:

B,正确答案是:

B√

50.有以下程序

  main()

  {inta[]={2,4,6,8,10},y=0,x,*p;

  p=&a[1];

  for(x=1;x<3;x++)y+=p[x];

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

  }

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

  A)10   B)11  C)14  D)15

你所选择的答案是:

C,正确答案是:

C√

51.有以下程序

  #include

  main()

  {charp[]={'a','b','c'},q[10]={'a','b','c'};

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

  }

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

  A)在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3

  B)由于p数组中没有字符串结束符,长度不能确定;但q数组中字符串长度为3

  C)由于q数组中没有字符串结束符,长度不能确定;但p数组中字符串长度为3

  D)由于p和q数组中都没有字符串结束符,故长度都不能确定

你所选择的答案是:

A,正确答案是:

52.以下程序的功能是进行位运算

  main()

  {unsignedchara,b;

  a=7^3;b=~4&3;

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

  }

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

  A)43   B)73  C)70  D)40

你所选择的答案是:

A,正确答案是:

A√

53.以下数组定义中错误的是

 A)intx[][3]={0};

 B)intx[2][3]={{1,2},{3,4},{5,6}};

 C)ntx[][3]={{1,2,3},{4,5,6}};

 D)intx[2][3]={1,2,3,4,5,6};

你所选择的答案是:

B,正确答案是:

B√

54.已定义以下函数

intfun(int*p)

{return*p;}

fun函数返回值是

 A)不确定的值

 B)一个整数

 C)形参p中存放的值

 D)形参p的地址值

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

当前位置:首页 > 人文社科 > 哲学历史

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

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