C语言选择题精选2.docx

上传人:b****2 文档编号:24564134 上传时间:2023-05-28 格式:DOCX 页数:33 大小:25.81KB
下载 相关 举报
C语言选择题精选2.docx_第1页
第1页 / 共33页
C语言选择题精选2.docx_第2页
第2页 / 共33页
C语言选择题精选2.docx_第3页
第3页 / 共33页
C语言选择题精选2.docx_第4页
第4页 / 共33页
C语言选择题精选2.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

C语言选择题精选2.docx

《C语言选择题精选2.docx》由会员分享,可在线阅读,更多相关《C语言选择题精选2.docx(33页珍藏版)》请在冰豆网上搜索。

C语言选择题精选2.docx

C语言选择题精选2

*76、

若希望当A的值为奇数时,表达式的值为"真",A的值为偶数表达式的值

为"假"。

则以下不能满足要求的表达式是:

A)A%2==1B)!

(A%2==0)C)!

(A%2)D)A%2

*77、

设有inta=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>b)&&(n=c>d)后n的值为:

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

*78、

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

A)'a'<=cl<='z'B)(cl>=a)&&(cl<=z)

C)('a'>=cl)||('z'<=cl)D)(c1>='a')&&(cl<='z')

*79、

以下程序的运行结果是:

#include"stdio.h"

main(),,\

{inta,b,d=241;

a=d/100%9

b=(-1)&&(-1);

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

}

A)6,1B)2,1C)6,0D)2,0

*80、

执行以下语句后a的值为:

inta,b,c;

a=b=c=1;

++a||++b&&++c

A)错误B)0C)2D)1

*81、

执行以下语句后b的值为:

inta=5,b=6,w=1,x=2,y=3,z=4;

(a=w>x)&&(b=y>z);

A)6B)0C)1D)4

*82、

以下不正确的if语句形式是:

A)if(x>y&&x!

=y);

B)if(x==y)x+=y

C)if(x!

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

D)if(X

*83、

下列运算符中优先级最低的是:

A)?

:

B)&&c)+D)!

=

*84、

以下if语句语法正确的是---。

A)if(x>0)

printf("%f",x)

elseprintf("%f",--x);

B)if(x>0)

{x=x+y;printf("%f",x);}

elseprintf("f",-x);

C)if(x>0)

{x=x+y;prinrf("%f",x);};

elseprintf("%f",-x);

D)if(x>0)

{x=x+y;printf("%f",x)}

elseprintf("%f",-x);

*85、

请阅读以下程序:

main()

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

if(a=b+c)printf("***\n");

e1seprintf("$$$\n");

以上程序:

A有语法错不能通过编译B可以通过编译但不能通过连接

C输出***D输出$$$

*86、

以下程序的运行结果是:

main()

{intm=5;

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

e1seprintf("%d\n",m--);

}

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

*87、

当a=1,b=3,c=5,d=4,执行完下面-段程序后x的值是:

if(a

if(c

else

if(a

if(b

elsex=3;

elsex=6;

elsex=7;

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

*88、

以下程序的输出结果是:

main()

{inta=100,x=10,y=20,okl=5,ok2=0;

if(x

if(y!

=10)

if(!

okl)a=1;

else

if(ok2)a=10;

a=-1:

printf("%d\n",a)

}

A)1B)0C)-1D)值不确定

*89、

以下程序的输出结果是:

main()

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

if(x

if(y<0)z=0;

elsez+=1;

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

}

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

*90、

为了避免在嵌套的条件语句If-else中产生二义性,C语言规定else子句

总是与()配对。

A)缩排位置相同的ifB)其之前最近的if

C)之后最近的ifD)同-行上的if

*91、

以下不正确的语句为:

A)if(x>y);

B)if(x=y)&&(x!

=0)x+=y;

C)if(x!

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

D)if(x

*92、

请阅读以下程序:

#include

main()

{floata,b

scanf("%f",&a);

if(a<10.0)b=1.0/x;

elseif((a<0.5)&&(a!

=2.0))b=1.0/(a十2.0);

elseif(a<10.0)b=1.0/x;

elseb=10.0;

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

}

若运行时输入2.0(回车),则上面程序的输出结果是:

A)0.000000B)0.500000C)1.000000D)0.250000

*93、

若有条件表达式(exp)?

a++:

b--,则以下表达式中能完全等价于表

达式(exp)的是:

A)(exp==0)B)(exp!

=0)

C)(exp==1)D)(exp!

=1)

*94、

若运行时给变量x输入12,则以下程序的运行结果是:

main()

{intx,y;

scanf("%d",&x);

y=x>12?

x+10:

x-12;

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

}

A)0B)22C)120)10

*95、

以下程序的运行结果是:

main()'

{intk=4,a=3,b=2,c=1;

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

k:

c

c:

a);

}

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

*96、

执行以下程序段后、变量a,b,c的值分别是-。

intx=10,y=9;

inta,b,c;

a=(--x==y++)?

--x:

++y;

b=x++;

c=y;

A)a=9,b=9,c=9B)a=8,b=8,c=10

C)a=9,b=10,c=9D)a=1,b=11,c=10

*97、

若w,x,y,z,m均为int型变量,则执行下面语句后的m值是:

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

m=(w

w:

x;

m=(m

m:

y;

m=(m

m:

Z;

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

*98、

若w=1,X=2,y=3,z=4,则条件表达式w

w:

y

y:

z的值是:

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

*99、

执行以下程序段后的输出结果是

intw=3,z=7,x=10;

printf("%d\n",x>10?

x+100:

x-10);

printf("%d\n",w++||z++);

printf("%d\n",!

w>z);

printf("%d\n",w&&z);

A)0B)1C)0D)0

*100、

设有程序段

intk=10;

while(k=0)k=k—1;

则下面描述中正确的是

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

C)循环体语句-次也不执行D)循环体语句执行-次

*101、

有以下程序段

intx=0,s=0;

while(!

x!

=0)s+=++x;

printf("%d",s);

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

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

*102、

下面程序段的运行结果是:

x=y=0;

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

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

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

*103、

下面程序段的运行结果是

a=1;b=2;c=2;

while(a

printf("%d,%d,%d",a,6,c);

A)1,2,0B)2,1,0C)1,2,1D)2,1,1

*104、

下面选择中正确的赋值语句是(设chara[5],*p=a;)()。

(A)p="abcd";(B)a="abcd";

(C)*p="abcd";(D)*a="abcd";

*105、

下面程序的功能是将从键盘输入的-对数,由小到大排序输出。

当输入-对相等数时结束循环,请选择填空:

#indude

main()

{inta,b,t;

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

while(【1】)

{if(a>b)

{t=a;a=b;b=t;}

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

scahf("%d%d",&a,&b);人

}

【1】A}!

a=bB}a!

=bC}a==bD}a=b

*106、

下面程序的功能是从键盘输入的-组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空:

#indude"stdio.h"

main()

{intm=0,n=0;

charc;1

while((【1】)!

='\n')

{if(c>='A'&&C<='Z')m++;

if(c>='a'&&c<='z')n++;}

printf("%d\n",m

n:

m);}

1】A)c=getchar()B)getchar()C)c=getchar()D)scanf("%c",c)

*107、

下面程序的功能是将小写字母变成对应大写字母后的第二个字母。

其中y变成A,z变成B.请选择填空。

#include"stdio.H"

main()

{charc;

while((c=getchar())!

='\n')

{if(c>='a'&&c<='z')

c-=30;

if(c>'z'&&c<='z'+2)

【2】;}

printf("%c",c)

}

【2】A)c='B'B)c='A'C)c-=26D)c=c+26

*108、

下面程序的功能是在输入的-批正整数中求出最大者,输入0结束循环,请选择填空。

#include

main()

{inta,max=0;

scanf("%d",&a)

while(【1】)

{if(max

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

printf("%d",max);}

【1】A}a==oB}AC}!

A==1D}!

a

*109、

下面程序的运行结果是。

#include

main()

{intnum=0;

while(num<=2)

{num++

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

}

A)1B)1C)1D)1

222

33

4

*110、

以下程序段

x=-1;

do

{x=x*x;}

while(!

x);

A)是死循环B)循环执行二次

C)循环执行-次D)有语法错误

*111、

以下描述中正确的是:

A)由于do-while循环中循环体语句只能是-条可执行语句,所以循环体内不能使用复合语句

B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号

C)在do-while循环体中,-定要有能使while后表达式值变为零("假")的操作

D)do-while循环中,根据情况可以省略while

*112、

若有如下语句

intx=3;

do{printf("%d\n",x-=2);}while(!

(--x));

则上面程序段

A)输出的是1B)输出的是1和-2

C)输出的是3和0D)是死循环

*113、

下面程序的功能是计算正整数2345的各位数字平方和,请选择填空。

#include

main()

{intn,sum=0;

n=2345

do{sum=sum+(n%10)*(n%10)};

n=【2】;

}while(n);

printf("sum=%d",sum);}

【2】A)n/1000B)n/100C)n/10D)n%10

*114、

下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环。

请选择填空。

#include

main()

{1ongintnum;

scanf("%ld",&num);

do{if(【1】)printf("%ld",num);

scanf("%ld",&num);

}while(!

num==0);}

【1】A)numB)num>0==0C)!

num==0D)!

num!

=0

*115、

下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除。

请选择填空。

#include

main()

{inti=0,j,k;

do{i++;k=316-13*i;}

while(【1】);j=k/11;

printf("316=13*%d十11*%d",i,j);

}

【1】A)k/11B)k%11C)k/11==0D)k/11==0

*116、

下面程序的运行结果是:

#indude

main()

{inty=10;

do{y--;}

while(--y);

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

}

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

*117、

若运行以下程序时,从键盘输入ADescriptor(CR)表示回车),则下面程序的运行结果是:

#include

main()

{charc;

intv0=0.v1=0,v2=0;

do{

switch(c=getchar())

{case'a':

case'A':

case'e':

case'E':

case'i':

case'I':

case'o':

Case'O':

case'u':

case'U':

vl+=1;

default:

v0+=1;v2+=1;};

while(c!

='\n');

printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);

}

A}v0=7,v1=4,v2=7B)v0=8,v1=4,v2=8

C)v0=11,v1=4,v2=11D)v0=12,vl=4,v2=12

*118、

下面程序的运行结果是:

#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

*119、

下面有关for循环的正确描述是:

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

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

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

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

*120、

对for(表达式1;;表达式3)可理解为:

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

B)for(表达式1;1;表达式3)

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

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

*121、

若i为整型变量,则以下循环执行次数是:

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

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

*122、

以下for循环的执行次数是:

for(x=0,y-0;(y=123)&&(x<4);x++);

A)是无限循环B)循环次数不定C)执行4次D)执行3次

*123、

以下不是无限循环的语句为:

A)for(y=0,x=1;x>++y;x=i++)i=x;

B)for(;;x++=i);

C)while

(1){x++;}

D)for(i=10;;i--)sum+=i;

*124、

下面程序段的运行结果是:

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

*125、

下面程序段的运行结果是

for(x=3;x<6;x++)printf((x%2)?

("**%d"):

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

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

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

**5##5

*126、

下列程序段不是死循环的是

A)inti=100;C)intk=0;

whiLe

(1)do{++k;}while(k>=0);

{i=i%100+1;

if(i>100)break;D}ints=36;

}while(s);--s

B)for(;;);

*127、

执行语句for(i=1;i++<4;);后变量i的值是

A)3B)4C)5D)不定

*128、

下面程序的功能是计算:

至50中是7的倍数的数值之和,请选择填空。

#include

main()

{inti,sum=0;

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

if([1])sum+=i;

printf("%d",sum);

}

A)(int)(i/7)==i/7

B)(int)i/7==i/7

C)i%7=0

D)i%7==0

*129、

下面程序的功能是计算1至10之间的奇数之和及偶数之和。

请选择填空;

#include

main()

{inta,b,c,i;

a=c=0;

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

{a+=i;

[1];

c+=b;

}

printf("偶数之和=%d\n",a);

printf("奇数之和=%d\n",c-11),

}

[1]A)b=i--B)b=i+1C)b=i++D)b=i-1

*130、

下面程序的运行结果是:

#include

main()

{inti;

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

switch(i%5)

{case0:

printf("*");break;

case1:

printf("#");break;

default:

printf("\n");

case2:

printf("&");

}

A}#&&&*B}#&C}#D}#&

&&

&&

*

*131、

下面程序的运行结果是:

#include

main()

{intx,i;

for(j-1;i<=100;i++)

{x=i;

if(++x%2==0)

if(++x%3==0)

if(++x%7==0)

printf("%d",x);

}

}

A)3981B)4284C)2668D)2870

*132、

下面程序段的功能是计算1000!

的末尾含有多少个零。

请选择填空。

(提示:

只要算出1000!

中含有因数5的个数即可

for(k=0,i=5;i<=1000;i+=5)

while(【1】){k++;m=m/5;}

【1】A)m%5==0B)m=m%5==0C)m%5==0D)m%5!

=0

*133、

下面程序的运行结果是:

#include

main()

{inti,b,k=0;

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

{b=i%2;

while(b-->=0)k++;

}

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

}

A)3,-1B)8,-1C)3,0D)8,-2

*134、

以下正确的描述是。

A)continue语句的作用是结束整个循环的执行

B)只能在循环体内和switch语句体内使用break语句

C)在循环体内使用break语句或continue语句的作用相同

D)从多层循环嵌套中退出时,只能使用goto语句

*135、

下面程序段:

for(t=1;t<=100;t++)

{scanf("%d",&x);

if(x<0)continue;

printf("%3d",t);}

A)当x<0时整个循环结束

B)x>=0时什么也不输出

C)printf函数永远也不执行

D)最多允许输出100个非负整数

*136、

下面程序段:

x=3;

do

{y=x--;

if(!

y){printf("x");continue;}

printf("#");

}while(1<=x<=2);

A)将输出##B)将输出##*

C)是死循环D)含有不合法的控制表达式

*137、

以下描述正确的是

A)goto语句只能用于退出多层循环

B)switch语句中不能出现continue语句

C)只能用continue语句来终止本次循环

D)在循环中break语句不能独立出现

*138、

与下面程序段等价的是:

for(n=100;n<=200;n

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

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

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