C语言精编100题1.docx

上传人:b****6 文档编号:14168266 上传时间:2023-06-21 格式:DOCX 页数:38 大小:26.69KB
下载 相关 举报
C语言精编100题1.docx_第1页
第1页 / 共38页
C语言精编100题1.docx_第2页
第2页 / 共38页
C语言精编100题1.docx_第3页
第3页 / 共38页
C语言精编100题1.docx_第4页
第4页 / 共38页
C语言精编100题1.docx_第5页
第5页 / 共38页
C语言精编100题1.docx_第6页
第6页 / 共38页
C语言精编100题1.docx_第7页
第7页 / 共38页
C语言精编100题1.docx_第8页
第8页 / 共38页
C语言精编100题1.docx_第9页
第9页 / 共38页
C语言精编100题1.docx_第10页
第10页 / 共38页
C语言精编100题1.docx_第11页
第11页 / 共38页
C语言精编100题1.docx_第12页
第12页 / 共38页
C语言精编100题1.docx_第13页
第13页 / 共38页
C语言精编100题1.docx_第14页
第14页 / 共38页
C语言精编100题1.docx_第15页
第15页 / 共38页
C语言精编100题1.docx_第16页
第16页 / 共38页
C语言精编100题1.docx_第17页
第17页 / 共38页
C语言精编100题1.docx_第18页
第18页 / 共38页
C语言精编100题1.docx_第19页
第19页 / 共38页
C语言精编100题1.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言精编100题1.docx

《C语言精编100题1.docx》由会员分享,可在线阅读,更多相关《C语言精编100题1.docx(38页珍藏版)》请在冰点文库上搜索。

C语言精编100题1.docx

C语言精编100题1

计算机C语言精编100题

精通学院

C语言精编100题

一、单选题

1.

(1)由C语言编写的代码程序(B)

A.可直接执行B.是一个源程序

C.经过编译即可执行D.经过编译解释才能执行

(2)C语言源程序的扩展名为(B)

A..objB..cC.exeD..cpp

2.

(1)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(B)

A.大写字母B.中划线C.数字字符D.下划线

(2)下列选项中,不能用作标识符的是(D)

A._1234_B._1_2C.int_2_D.2_int_

(3)以下选项中合法的用户标识符是(B)

A.longB._2TestC.3DmaxD.A.dat

(4)以下不能定义为用户标识符的是(D)

A.MainB._0C._intD.sizeof

(5)下列定义变量的语句错误的是(D)

A.int_int;B.doubleint_;C.charFor;D.floatUS$;

3.在C语言中,整型数据分为(B)

A.二进制、八进制、十进制B.二进制、十进制、十六进制

C.八进制、十进制、十六进制D.二进制、八进制、十进制、十六进制

4.

(1)在C语言中,合法的实型常数是(C)

A.5E2.0B.E-3C..2E0D.1.3E

(2)在C语言中,合法的实型常数是(C)

A.1.2E0.5B.3.14159EC.5E-3D.E15

(3)以下选项中,不能作为合法常量的是(B)

A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0

(4)以下不合法的数值常量是(C)

A.011B.le1C.8.0E0.5D.0xabcd

(5)以下选项中,能用作数据常量的是(D)

A.o115B.0118C.1.5e1.5D.115

5.

(1)在C语言中,非法的字符常量是(C)

A.‘\t’B.‘\17’C."\n"D.‘\xaa’

(2)以下不合法的字符常量是(A)

A.‘\018’B.‘\"’C.‘\\’D.‘\xcc’

(3)以下选项不属于字符常量的是(B)

A.'C'B."C"C.'\xCC'D.'\072'

6.在C语言中,以下关于运算符叙述错误的是(C)

A.在C语言中,逗号运算符的优先级最低

B.在C语言中,赋值运算符自右向左运算

C.在C语言中,+、-、*、/、%是算术运算符,可用于整型和实型数的运算

D.在C语言中,++、--运算符可以改变变量的值

7.下列运算符中优先级最高的运算符是(C)(B)

A.<=B.=C.%D.&&

A.==B./C.=D.>=

8.

(1)以下程序的输出结果是(C)

main()

{inta=3,b=4;printf("%d\n",a<=b);}

A.3B.4C.1D.0

(2)在C语言中,表达式10!

=9的值为(C)

A.0B.FalseC.1D.True

9.在C语言中,以下非法的表达式是(D)

A.0<=x<=100B.i=j==0C.(char)(65+3)D.x+1=x+1

10.在C语言中,以下非法的赋值语句是(B)

A.j++;B.++(i+1)自加自减只能用于变量,不能用于常量或表达式;C.x=j>0;D.k=i==j;

11.表达式3.6-5/2+1.2+5%2的值是(D)

A.4.3B.4.8C.3.3D.3.8

12.

(1)设有语句:

inta=3;则执行了语句a+=a-=a*a;变量a的值是(D)

A.3B.0C.9D.-12

(2)设有语句:

intx=10;则执行了语句x+=x-=x-x;变量x的值是(B)

A.10B.20C.40D.30

(3)设有语句:

inta=0;则执行语句a+=(a=8);变量a的值是(C)

A.0B.8C.16D.24

13.以下程序的输出结果是(B)(D)(B)

⑴main()

{inti=10,j=1;

printf("%d,%d\n",i--,++j);}

A.9,2B.10,2C.9,1D.10,1

⑵main()

{inta=12,b=12;

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

A.1010B.1212C.1110D.1113

⑶main()

{intx=023;

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

A.17B.18C.23D.24

14.以下程序的输出结果是(A)

main()

{intx=100,y=200;

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

}

A.200B.100

C.100200D)200100

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

main()

{intx=10,y=3,z;

printf("%d\n",z=(x%y,x/y));

}

A.1B.0C.4D.3

16.intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A)

A.k++B.k+=1C.++kD.k+1

17.以下程序的输出结果是(C)

main()

{intx,y,z;

x=y=1;

z=x++,y++,++y;

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

}

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

18.设x、y、t均为int型变量,则执行语句:

x=y=3;t=++x||++y;后,y的值为(C)

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

19.设intx=-1;执行表达式++x||++x||++x||++x,x的值是(B)

A.0B.1C.2D.4

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

(1)main(){intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}(D)

A.k=11,k=12,k=11B.k=11,k=13,k=13

C.k=11,k=013,k=0xbD.k=11,k=13,k=b

(2)main(){intk=17;printf("%d,%o,%x\n",k,k,k);}(D)

A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,11

21.运行时从键盘上输入9876543210表示回车),则该程序的输出结果是()

main()

{inta;floatb,c;

scanf("%2d%3f%4f",&a,&b,&c);

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

}

A.a=98,b=765,c=4321B.a=10,b=432,c=8765

C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.0

22.设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量

a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。

以下所示的输入形式中正

确的是(注:

□代表空格字符)()

A.10□X□20□Y<回车>B.10□X20□Y<回车>

C.10□X<回车>D.10X<回车>

20□Y<回车>20Y<回车>

23.以下程序的输出结果是()

#defineMA(x)x*(x-1)

main()

{inta=1,b=2;

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

}

A.6B.8C.10D.12

24.以下程序的输出结果是()

#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.19B.17C.15D.12

25.以下程序段的输出结果是()

#defineMIN(x,y)(x)<(y)?

(x):

(y)

main()

{inti=10,j=15,k;

k=10*MIN(i,j);

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

}

A.15B.100C.10D.150

26.设a=1,b=2,c=3,d=4,则表达式a

a:

c

a:

d的结果是()

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

27.以下程序段的输出结果是()

main()

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

if(x>y)

if(y

elseprintf("%d",++y);

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

}

A.331B.41C.2D.1

28.以下程序段的输出结果是()

main()

{intx=5;

if(x++>5)printf("%d\n",x);

elseprintf("%d\n",x--);

}

A.4B.5C.6D.7

29.以下程序段的输出结果是()

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

case3:

a++;b++;

}

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

}

A.a=1,b=0B.a=2,b=2C.a=1,b=1D.a=2,b=1

30.有以下程序

main()

{intn=4;

while(n--)

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

}

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

A.20B.31C.321D.210

31.有以下程序

main()

{inti;

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

switch(i)

{case0:

printf("%d",i);

case1:

printf("%d",i);

default:

printf("%d",i);

}

}

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

A.000112B.012C.012020D.120

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

A.构成C程序的基本单位是函数

B.可以在一个函数中定义另一个函数

C.main()函数必须放在其它函数之前

D.所有被调用函数一定要在调用之前进行定义

33.以下说法中正确的是()

A.C语言程序总是从第一个函数开始执行

B.在C语言程序中,要调用的函数必须在main()函数中定义

C.C语言程序总是从main()函数开始执行

D.C语言程序中的main()函数必须放在程序的开始部分

34.以下程序段的输出结果是()

intfun(intx,inty)

{return(x+y);}

main()

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

sum=fun((a++,b++,a+b),c++);

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

}

A.6B.7C.8D.9

35.以下程序的输出结果是()

intfun(intx)

{intp;

if(x==0||x==1)p=3;

elsep=x-fun(x-2);

returnp;}

main()

{printf("%d\n",fun(7));}

A.7B.3C.2D.0

36.以下数组定义中错误的是()

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

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

C.intx[][3]={{1,2,3},{4,5,6}};

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

37.以下能正确定义二维数组的是()

A.inta[][3];B.inta[][3]={2*3};

C.inta[][3]={};D.inta[2][3]={{1},{2},{3,4}};

38.以下程序的输出结果是()

main()

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

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

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

39.以下程序的输出结果是()

main()

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

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

}

A.0B.1C.10D.9

40.以下程序的输出结果是()

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.16B.10C.8D.6

41.设有chararray[]="China";

则数组array所占的空间字节数为()

A.4B.5C.6D.7

42.在C语言中,对于以下定义正确的叙述为()

charx[]="abcdefg";

chary[]={'a','b','c','d','e','f','g'};

A.数组x和数组y等价B.数组x和数组y的长度相同

C.数组x的长度大于数组y的长度D.数组x的长度小于数组y的长度

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

A.charstr[5]="good!

";B.charstr[]="good!

";

B.char*str="good!

";D.charstr[5]={‘g’,‘o’,‘o’,‘d’};

44.

(1)以下程序的输出结果是()

main()

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

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

}

A.68B.'D'C.0D.'0'

(2)以下程序的输出结果是()

main()

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

printf("%c\n",*p+4));

}

A.oB.uC.eD.f

(3)以下程序的输出结果是()

main()

{char*s="ABCDE";

s+=2;

printf("%d\n",s[0]);}

A.CB.DC.67D.68

45.

(1)以下程序的输出结果是()

main()

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

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

}

A.5B.15C.6D.16

(2)以下程序的输出结果是()

main()

{chars[]="1234567890\0";

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

}

A.8B.9C.10D.11

46.

(1)以下程序的输出结果是()

voidpoint(char*p)

{p+=3;}

main()

{charb[4]={'a','b','c','d'},*p=b;

point(p);

printf("%c\n",*p);}

A.aB.bC.cD.d

47.以下程序的输出结果是()

main()

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

int*p1=&a,*p2=&b,*p=&c;

*p=(*p1)*(*p2);

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

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

48.inta[10],*p=a;

不能代表a[1]地址的是()

A.p+1B.a+1C.++aD.++p

49.inta[4][5],(*p)[5];

p=a;

下列对数组a数组元素正确的引用形式是()

A.p+1B.*(p+3)C.p[0][2]D.*(p+1)+3

50.设有以下说明语句,则下面的叙述不正确的是()

structex

{chara;

intb;

floatc;}example;

A.struct是结构体关键字B.example是结构体类型名

C.a、b、c是结构体成员名D.structex是结构体类型

二、填空题

51.一个C源程序至少应该有一个函数。

52.在C语言中,实型变量分为和。

53.以下程序运行后的输出结果是。

main()

{intx=2006,y=2007;

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

54.

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

main()

{inta=10;

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

}

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

main()

{inta,b,c;

a=25;b=025;c=Ox25;

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

}

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

main()

{inta=1,b=2;

a=a+b;b=a-b;a=a-b;

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

}

(4)设整型变量a和b中的值分别为7和9,要求按一下格式输出a和b的值:

a=7

b=9

请完成输出语句:

printf("",a,b);

55.

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

main()

{charch='B';

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

}

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

main()

{charch='B';

ch+=32;

printf("%c\n",ch);

}

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

main()

{intc;

charch=97;

c=ch+1;

printf("%c%c\n",c,ch);}

56.`以下程序运行后的输出结果是。

main()

{floatx=123.4567;

printf("%f\n",(int)(x*100+0.5)/100.0);

}

57.

(1)有程序如下,要求给i赋10,给j赋20,则应该从键盘输入。

main()

{inti,j;

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

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

}

(2)输入123456,则输出结果是。

main()

{inta,b;

scanf("%2d%2d",&a,&b);

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

58.

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

main()

{inta=10;

a=(3*5,a+4);

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

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

main()

{inta=0,b=0,c=0;

c=(a+=a-=5),(a=b,b+3);

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

59.

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

main()

{inta=5,b=4,c=3,x;

x=a>b>c;

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

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

main()

{inta=3,b=2;

b=a<0&&a++>3;

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

}

60.

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

#defineMAX(x,y)(x)>(y)?

(x):

(y)

main()

{inta=5,b=2,c=3,d=3,t;

t=MAX(a+b,c+d)*10;

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

}

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

#define S(x)4*x*x+1

main()

{int i=6,j=8;

  printf("%d\n",S(i+j));

}

61.以下程序运行后的输出结果是。

main()

{intx,a=1,b=2,c=3,d=4;

x=(a

a:

b;

x=(x

x:

c;

x=(x

x:

d;

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

}

62.以下程序运行后的输出

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

当前位置:首页 > 人文社科 > 法律资料

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

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