c语言程序设计试题库.docx

上传人:b****7 文档编号:10317294 上传时间:2023-02-10 格式:DOCX 页数:107 大小:76.04KB
下载 相关 举报
c语言程序设计试题库.docx_第1页
第1页 / 共107页
c语言程序设计试题库.docx_第2页
第2页 / 共107页
c语言程序设计试题库.docx_第3页
第3页 / 共107页
c语言程序设计试题库.docx_第4页
第4页 / 共107页
c语言程序设计试题库.docx_第5页
第5页 / 共107页
点击查看更多>>
下载资源
资源描述

c语言程序设计试题库.docx

《c语言程序设计试题库.docx》由会员分享,可在线阅读,更多相关《c语言程序设计试题库.docx(107页珍藏版)》请在冰豆网上搜索。

c语言程序设计试题库.docx

c语言程序设计试题库

《C语言程序设计》试题库

一、选择题(共250个,每题2分)

1、一个c语言程序的执行是从()

A、本程序的main函数开始,到main函数结束

B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C、本程序的main函数开始,到本程序文件的最后一个函数结束

D、本程序文件的第一个函数开始,到本程序main函数结束

2、一个c语言程序是由()

A、一个主程序和若干子程序组成B、函数组成

C、若干过程组成D、若干子函数组成

3、以下选项中是正确的整型常量是()

A、12.B、-20C、1,000D、456

4、以下选项中正确的实型常量是()

A、0B、3.1415C、0.329*10^2D、.871

5、以下选项中不合法的实型常量是()

A、2.607E-1B、0.8103*12C、-77.77D、456e-2

6、以下选项中不合法的字符串是()

A、’abc’B、”12’12”C、“0”D、””

7、下面正确的字符常量是()

A、”c”B、‘\\’’C、‘w’D、‘’

8、以下选项中不合法的用户标识符是()

A、abc.cB、fileC、MainD、PRINTF

9、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()

A、必须为字母B、必须为下划线C、必须为字母或下划线

D、可以是字母、数字和下划线中任意一种字符

10、以下选项中不合法的用户标识符是()

A、_123B、printfC、A$D、Dim

11、c语言中运算对象必须是整型的运算符是()

A、%B、/C、!

D、**

12、可在C程序中用作用户标识符的一组标识符是()

A、ntB、as-b3C、FirD、2c

define-123_bcDO

WORDifnameSIG

13、若变量已正确定义并赋值,符合C语言语法的表达式是()

A、a=a+7;B、a=7+b+c,a++C、int(12.3%4)D、a=a+7=c+b

14、若a,b,c,d都是int类型变量且初值为0,以下选项中不正确的赋值语句是()

A、a=b=c=100;B、d++;C、c+b;D、d=(c=22)-(b++);

15、若x、i、j和k都是int变量,则计算下面表达式后,x的值是()

x=(i=4,j=16,k=32)

A、4B、16C、32D、52

16、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()

A、7B、8C、6D、2

17、若有代数表达式a2.b2,则正确的c语言表达式是()

A、a^*b^B、pow(a,2).pow(b,2)C、a*a.b*bD、(a*a)*(b*b)

18、若有代数表达式

,则不正确的c语言表达式是()

A、a/b/c*e*3B、3*a*e/b/cC、3*a*e/b*cD、a*e/c/b*3

19、若有定义:

inta=8,b=5,c;执行语句c=a/b+0.4;后,c的值为()。

A、1.4B、1C、2.0D、2

20、char型数据在内存中的存储形式是()

A、补码B、反码C、原码D、ASCII码

21、设变量a是整型,f是实型,i是双精度,则表达式10+‘a’+i*f值的数据类型为()

A、intB、floatC、doubleD、不确定

22、若有定义:

inta=7;flaotx=2.5,y=4.7;;则表达式x+a%3*(int)(x+y)%2/4的值是()。

A、2.500000B、2.750000C、3.500000D、0.000000

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

a=’A’+1.6;则正确的叙述是()。

A、a的值是字符CB、a的值是浮点型

C、不允许字符型和浮点型相加D、a的值是字符’A’的ASCII值加上1

24.、以下选项中合法的字符常量是()。

A、“B”B、’\010’C、68D、D

25、以下选项中不是C语句的是()

A、{inti;i++;printf(“%d\n”,i);}B、;

C、a=5,c=10D、{;}

26、以下合法的C语言赋值语句是()

A、a=b=58B、k=int(a+b)C、a=58,b=58D、--i;

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

A、0B、1C、3D、不确定的值

main()

{intx=10,y=3;

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

}

28、设c语言中,一个int型数据在内存中占2个字节,则unsignedint型数据的取值范围为()

A、0~255B、0~32767C、0~65535D、0~2147483647

29、若变量已正确定义为int类型,要给a、b、c输入数据,以下正确的输入语句是()

A、read(a,b,c);

B、scanf(“%d%d%d”a,b,c);

C、scanf(“%D%D%D”,&a,&b,&c);

D、scanf(“%d%d%d”,&a,&b,&c);

30、若变量已正确定义为float类型,要通过赋值语句scanf(“%f%f%f”,&a,&b,&c)给A赋值10,B赋予22,C,赋予33,以下不正确的输入形式是()

A、10B、10.0,22.0,33.0C、10.0D、1022

2222.033.033

33

31、设有说明:

charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()

A、floatB、charC、intD、double

32、若变量已正确定义,要将a和b中的数进行交换,下面选项中不正确的是()

A、a=a+b,b=a-b,a=a-b;B、t=a,a=b,b=t;C、a=t;t=b;b=a;D、t=b;b=a;a=t;

33、若变量已正确定义,以下程序段的输出结果是()

A、输出格式说明与输出项不匹配,输出无定值

B、5.170000C、5.168000D、5.169000

x=5.16894;

printf(“%f\n”,(int)(x*1000+0.5)/(float)1000);

34、若有以下程序段,c3的值是()

A、0B、1/2C、0.5D、1

intc1=1,c2=2,c3;

c3=c1/c2;

35、若有以下程序段,其输出结果是()

A、0,0,-10B、0,0,5C、-10,3,-10D、3,3,-10

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

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

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

36、若已知变量的类型说明如下:

intk,a,b;unsingedlongw=5;doublex=1.42;则以下不符合c语言的表达式是()

A、x%(-3)B、w+=-2C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)

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

A、a=%2,b=%fB、a=2,b=5C、a=%%d,b=%%dD、a=%d,b=%d

main()

{inta=2,b=3;

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

}

38、若int类型占两个字节,则以下程序段的输出是()

A、–1,-1B、–1,32767C、–1,32768D、–1,65535

inta=-1;

printf(“%d,%u\n”,a,a);

39、下列运算符中优先级最高的运算符是()

A、!

B、%C、-=D、&&

40、下列运算符中优先级最低运算符是()

A、||B、!

=C、〈=D、+

41、为表示关系x≥y≥z,应使用的C语言表达式是()

A、(x>=y)&&(y>=z)B、(x>=y)AND(y>=z)

C、(x>=y>=z)D、(x>=y)&(y>=z)

42、若有以下定义,则能使值为3的表达式是()intk=7,x=12;

A、x%=k-k%5)B、x%=(k%=5)C、x%=(k-k%5)D、(x%=k)-(k%=5)

43、设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为()。

A、0B、1C、2D、3

44、假定w、x、y、z、m均为int型变量,有如下程序段:

w=1;x=2;y=3;z=4;

m=(w

w:

x;

m=(m

m:

y;

m=(m

m:

z;

则该程序运行后,m的值是()。

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

45、以下程序的输出是()

A、0B、1C、2D、3

main()

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

if(b

if(b<0)c=0;

printf(“%d\n”,c);}

46、设a,b和c都是int型变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是()

A、a&&bB、a<=bC、a||b+c&&b-cD、!

((a

c||1)

47、以下程序的输出是()

A、0B、1C、2D、3

main()

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

if(a

if(b<0)c=0;

elsec+=1;

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

}

48、以下程序的输出是()

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

main()

{intw=4,x=3,y=2,z=1;

printf(“%d\n”,(w

w:

z

z:

x));

}

49、已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是()

if(x>y)z=x;x=y;y=z;

A、x=10,y=20,z=30B、x=20,y=30,z=30

C、x=20,y=30,z=10D、x=20,y=30,z=20

50、以下程序的运行结果是()

main(){intm=5;

if(m++>5)printf(“%d\n”,m);

elseprintf(“%d\n”,m--);}

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

51、若执行以下程序时从键盘上输入3和4,则输出结果是()

A、14B、16C、18D、20

main()

{inta,b,s;

scanf(“%d%d”,&a,&b);

s=a;

if(a

s*=s;

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

}

52、运行以下程序,输出()

A、****B、&&&&

C、####&&&&D、有语法错误不能通过编译

main()

{intk=-3;

if(k<=0)printf(“****\n”);

elseprintf(“&&&&\n”);

}

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

main(){intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez=z+1;

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

A、3B、2C、1D、0

54、为了避免在嵌套的条件语句if-else中产生二义性,c语言规定:

else子句总是与()配对。

A、上下位置在同一列的ifB、else前面最近的if

C、else之后最近的ifD、同一行上的if

55、以下不正确的语句为()

A、if(x>y);B、if(x==y)&&(x!

=0)x+=y;C、if(x

D、if(x!

=y)scanf(“%d”,&x);elsescanf(“%d”,&y);

56、当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是()

if(a

if(a

else

if(a

if(b

elsex=3;

elsex=6;

elsex=7;

A、1B、2C、3D、6

57、以下程序段,intk=10;while(k=0)k=k+1;则下面描述中正确的是()。

A、while循环执行10次B、循环是无限循环

C、循环体语句一次也不执行D、循环体语句执行一次

58.以下程序中,while循环的循环次数是()。

main(){inti=0;

while(i<10)

{if(i<1)break;

i++;}}

A、1B、10C、6D、死循环,不能确定次数

59、以下程序中,while循环的循环次数是()。

main(){inti=0;

while(i<10)

{if(i<1)contimue;

if(i==5)break;

i++;}}

A、1B、10C、6D、死循环,不能确定次数

60、若执行以下程序时从键盘上输入9,则输出结果是()

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

main()

{intn;

scanf("%d",&n);

if(n++<10)printf("%d\n",n);

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

}

61、有以下程序段()

intk=0

while(k==1)k++;

while循环执行的次数是

A、无限次B、有语法错,不能执行C、一次也不执行D、执行1次

62、对于下面①,②两个循环语句,()是正确的描述。

①while

(1);②for(;;);

A、①②都是无限循环B、①是无限循环,②错误

C、①循环一次,②错误D、①②皆错误

63、语句while(!

E);中的表达式!

E等价于()

A、E==0B、E!

=1C、E!

=0D、E==1

64、下面程序段运行结果是()

x=y=0;while(x<15)y++,x=x+(++y);

pirntf(“%d,%d”,y,x);

A、20,7B、6,12C、20,8D、8,20

65、设有以下程序段intx=0,s=0;

while(!

x!

=0)s+=++x;

printf(“%d”,s);则()

A、运行程序段后输出0B、运行程序段后输出1

C、程序段中的控制表达式是非法的D、程序段执行无限次

66、下面程序段的运行结果是()

intn=0;while(n++<=2);printf(“%d”,n);

A、2B、3C、4D、有语法错误

67、下面程序的运行结果是()

#include

main(){intnum=0;

while(num<=2)

{num++;printf(“%d”,num);}}

A、1B、12C、123D、1234

68、c语言中while和do-while循环的主要区别是()

A、do-while的循环体至少无条件执行一次

B、while的循环控制条件比do-while的循环控制条件严格

C、do-while允许从外部转到循环体内

D、do-while的循环体不能是复合语句

69、下面有关for循环的正确描述是()

A、for循环只是能用于循环次数已经确定的情况

B、for循环是先执行循环体语句,后判断表达式

C、在for循环中,不能用break语句跳出循环体

D、for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

70、对for(表达式1;;表达式3)可以理解为()

A、for(表达式1;0;表达式3)B、for(表达式1;表达式1;表达式3

C、for(表达式1;1;表达式3)D、for(表达式1;表达式3;表达式3)

71、若i为整型变量,则以下循环执行次数是()

for(i=2;i==0;)printf(“%d”,i--);

A、无限次B、0次C、1次D、2次

72、下面程序的运行结果是()

#include

main(){inty=10;

do{y--;}while(--y);

printf(“%d\n”,y--);}

A、-1B、1C、8D、0

73、下面程序的运行结果是()

#include

main(){inta=1,b=10;

do{b-=a;a++;}while(b--<0);

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

A、a=3,b=11B、a=2,b=8C、a=1,b=-1D、a=4,b=9

74、下面程序段的运行结果是()

for(y=1;y<10;)y=((x=3*y,x+1),x-1);

printf(“x=%d,y=%d”,x,y);

A、x=27,y=27B、x=12,y=13C、x=15,y=14D、x=y=27

75、下列程序段不是死循环的是()

A、inti=100;while

(1){i=i%100+1;if(i>100)break;}B、for(;;)

C、intk=0;do{++k;}while(k==0);D、ints=36;while(s);--s;

76、以下程序段输出结果是()

A、9B、1C、11D、10

intk,j,s;

for(k=2;k<6;k++,k++)

{s=1;

for(j=k;j<6;j++)s+=j;

}

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

77、以下程序段输出结果是()

A、12B、15C、20D、25

inti,j,m=0;

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

for(j=3;j<=19;j+=4)m++;

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

78、以下程序段输出结果是()

A、10B、9C、10D、9

9898

8787

76

intn=10;

while(n>7)

{n--;

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

}

79、以下程序段输出结果是()

A、1B、30C、1–2D、死循环

intx=3;

do

{printf(“%3d”,x-=2);}

while(!

(--x));

80、以下程序段输出结果是()

A、15B、14C、不确定D、0

main()

{inti,sum;

for(i=1;i<6;i++)sum+=sum;

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

}

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

A、741B、852C、963D、875421

main()

{inty=10;

for(;y>0;y--)

if(y%3==0)

{printf(“%d”,--y);continue;}

}

82、若x是int型变量,以下程序段的输出结果是()

A、**3B、##3C、##3D、**3##4

##4**4**4##5**5

**5##5

for(x=3;x<6;x++)

printf((x%2)?

(“**%d”):

(“##%d\n”),x);

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

A、*#*#*#$B、#*#*#*$C、*#*#$D、#*#*$

main()

{inti;

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

{if(i%2)printf(“*”);

elsecontinue;

printf(“#”);

}

printf(“$\n”);

}

84、以下叙述不正确的是()

A、do-while语句构成的循环不能用其他语句构成的循环来代替。

B、do-while语句构成的循环只能用break语句退出。

C、用do-while语句构成循环时,只有在while后的表达式为非零时结束循环。

D、用do-while语句构成循环时,只有在while后的表达式为零时结束循环

85、C语言中的简单数据类型有()

A、整型、实型、逻辑型B、整型、实型、字符型

C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型

86、C语言中,字符(char)型数据在微机内存中的存储形式是()

A、反码B、补码C、EBCDIC码D、ASCII码

87、设有定义语句chara=‘\72’;,则变量a()

A、包含1个字符B、包含2个字符

C、包含3个字符D、包含4个字符

88、C语言中不合法的字符常量是()

A、‘\xff’B、‘\65’C、‘&’D、‘\028’

89、C语言中不合法的字符串常量是()

A、“121”B、‘y=’C、“\n\n”D、“ABCD\x6d”

90、判断char型变量c是否为大写字母的最简单且正确的表达式是:

()

A、‘A’<=c<=‘Z’B、(c>=‘A’)&(c<=‘Z’)

C、(‘A’<=c)AND(‘Z’>=c)D、(c>=‘A’)&&(c<=‘Z’)

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

A、因输出格式不合法,无正确输出B、65,90

C、A,YD、65,89

main()

{charc1=’A’,c2=’Y’;

printf(“%d,%d\n”,c1,c2);

}

92、以下程序段的输出结果是()

A、AB、aC、ZD、z

main()

{charx=’A’;

x=(x>=’A’&&x<=’Z’)?

(x+32):

x;

printf(“%c\n”,x);}

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

A、67,CB、B,CC、C,DD、不确定的值

main()

{charch1,ch2;

ch1=’A’+’5’-‘3’;

ch2=’A’+’5’-‘3’;

printf(“%d,%c\n,”ch1,ch2”);}

94、以下程序的输出结果使()

A、11B、20C、21D、31

func(inta,intb)

{intc;

c=a+b;

returnc;}

main()

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

r=func((x--,y++,x+y),z--);

printf(“%d\n”,r);}

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

A、-1B、0C、1D、2

main()

{inti=2,p;

p=f(i,i+1);

printf(“%d\n”,p);}

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

当前位置:首页 > 高等教育 > 哲学

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

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