C语言 - 顺序分支结构 - 选择题(新)

更新时间:2024-04-11 09:04:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

错误!未指定书签。

1. 设ch是char型变量,其值为A,且有下面的表达式: C 10. 执行下面程序的输出结果是( )。 ch=(ch>='A'&&ch<='Z')?(ch+32):ch 上面表达式的值是

A) A B) a C) Z D) z B

2. 设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,

值为0的表达式是

A) 'a'&&'b' B) a<=b

C) a||b+c&&b-c D) !((a

3.能正确表示a≥10或a≤0的关系表达式是 A) a>=10 or a<=0 B) a>=10 | a<=0 C) a> =10 || a< =0 D) a>=10 || a<=0 D

4. 设a为整型变量,不能正确表达数学关系:10

A) 1010 && a<15 D) !(a<=10) && !(a>=15) A

5. 设x 、y 、z 、t均为int型变量,则执行以下语句后,t的值为 x=y=z=1;

t=++x || ++y && ++z;

A) 不定值 B) 4 C) 1 D) 0

6. 语句:printf(\&& (b= -2));的输出结果是

A)无输出 B)结果不确定 C)-1 D)1 D

7. 能正确表示a和b同时为正或同时为负的逻辑表达式是

A) (a>=0 || b>=0) && (a<0 || b<0)

B) (a>=0 && b>=0) && (a<0 && b<0) C) (a+b>0 && a+b<=0) D) a*b>0 D

8. 为了避免嵌套的if-else语句的二义性,C语言规定else总是

与( )组成配对关系。

A) 缩排位置相同的if B) 在其之前未配对的if C) 在其之前未配对的最近的if D) 同一行上的if C

9. 已知 int x=10,y=20,z=30,则执行 if (x>y)

z=x;x=y;y=z;

语句后,x、y、z 的值是( )。

A) x=10,y=20,z=30 B) x=20,y=30,z=30 C) x=20,y=30,z=10 D) x=20,y=30,z=20 B

- 1 -

main( )

{ int a=5,b=0,c=0;

if (a=a+b) printf(\

else printf(\}

A) 有语法错误不能编译 B) 能通过编译,但不能通过连接

C) 输出 **** D) 输出 #### C

11. 运行下面程序后,输出是( )。 main( ) { int k=-3;

if (k<=0) printf(\ else printf(\A) #### B) ****

C) ####**** D) 有语法错误不能通过编译 D

12. 若运行下面程序时,给变量a输入15,则输出结果是( )。 main( ) { int a,b;

scanf(\ b=a>15?a+10:a-10;

printf(\}

A) 5 B) 25 C) 15 D) 10 A

13. 以下选项中,两个条件语句语义等价的是( )。

A)if(a=2)printf(\ if(a==2)printf(\ if(a!=2)printf(\C)if(a)printf(\ D) if(a-2)printf(\ if(a==0)printf(\ if(a==2)printf(\B

14. 在执行以下程序时,为了使输出结果为:t=4 则给a和b

输入的值应满足的条件是 main( ) { int s,t,a,b;

scanf(\ s=1; t=1;

if (a<0) s=s+1; if (a>b) t=s+t; else if (a==b) t=5; else t=2*s; printf(\ }

A) a>b B) aa>b D) 0

15. 下面程序的输出结果是 main( )

{int x=100,a=10,b=20,ok1=5,ok2=0; if (a

if (ok2) x=10; x=-1;

printf(\ }

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

16. 下面程序的输出结果是 #include main( )

{ int a=2,b=7,c=5; switch(a>0)

{ case 1:switch(b<0)

{ case 1: printf(\ case 0: printf(\ }

case 0:switch(c==5)

{ case 0: printf(\ case 1: printf(\ default: printf(\ }

default: printf(\ } printf(\ }

A) & B) !#& C) %% D) @*& B

17. 运行下面程序时,若从键盘输入数据为\,- 2 -

错误!未指定书签。

则输出结果是( )。 main( )

{ int num,i,j,k,place; scanf(\ if (num>99) place=3; else if(num>9) place=2; else

place=1; i=num/100;

j=(num-i*100)/10; k=(num-i*100-j*10); switch (place)

{ case 3: printf(\ break;

case 2: printf(\ break;

case 1: printf(\ } }

A) 123 B) 1,2,3 C) 321 D) 3,2,1 C

18. 运行下面程序时,若从键盘输入数据为\, 则输出结果是( )。 main( ) { int t;

scanf(\

if (t>=90) printf(\

else if (t>=80) printf(\ else if (t>=70) printf(\ else if (t>=60) printf(\ else printf(\ printf(\A) B B) B OK C) B D) B OK C D E OK C

19. 以下程序的运行结果是( )。 main( )

{ int a=0,b=1,c=0,d=20,x; if (a) d=d-10; else if (!b)

if (!c) x=15; else x=25; printf(\

A) 15 B) 25 C) 20 D) 10 C

20. 运行下面程序时,从键盘输入\,则输出结果是( )。 main( ) { int t,h,m;

scanf(\ h=(t/100); if (h==0) h=12; printf(\ m=t0;

if (m<10) printf(\ printf(\ if (t<1200||t==2400) printf(\

else printf(\

A)6:05PM B)4:05PM C)16:05AM D)12:05AM B

21、运行下面程序时,从键盘输入数据为\,

则输出结果是( )。 #include main( ) { int a,b,c;

scanf(\ switch(a)

{ case 1: printf(\ case 2: printf(\ case 3: printf(\

case 4: { if(c!=0) {printf(\ else {printf(\ } defualt: break; } }

A) 10 B) 8 C) 65 D) error B

- 3 -

错误!未指定书签。

22、若k是int型变量,且有下面的程序片段: k=8; if (k<=0)

if (k==0) printf(\ else printf(\ else printf(\

上面程序片段的输出结果是 A) #### B) &&&&

C) **** D) 有语法错误,无输出结果 D

23、若执行下面的程序从键盘上输入5,则输出结果是

main( ) {int x;

scanf(\

if (x++>5) printf(\ else printf(\

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

24、当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为 if (a

if (c

if (a

if (b

错误!未指定书签。

else x=7;

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

27、与 y=(x>0?1:x<0?-1:0); 的功能相同的if语句是 A) if (x>0) y=1; B) if(x)

else if (x<0) y=-1; if (x>0) y=1;

else y=0; else if (x<0) y=-1; D

29.执行下面程序时,若从键盘输入\,则程序的

25、下面的程序片段所表示的数学函数关系是 ┌ -1(x<0) ┌ 1 (x<0) │ │

A) y=┤ 0 (x=0) B) y=┤-1 (x=0) │ │

└ 1 (x>0) └ 0 (x>0) ┌ 0 (x<0) ┌ -1(x<0) │ │

C) y=┤-1 (x=0) D) y=┤ 1 (x=0) │ │

└ 1 (x>0) └ 0 (x>0) y=-1; if (x!=0)

if (x>0) y=1; else y=0; C

26、假定所有变量均已正确说明,下列程序段运行后x的值是

a=b=c=0;x=35; if (!a) x--; else if (b); if (c) x=3; else x=4;

A) 34 B) 4 C) 35 D) 3 B else y=0; C) y=-1; D) y=0; if(x) if (x>=0)

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

28、执行下列程序,输入为1的输出结果是( #include main( ) { int k;

scanf(\; switch (k)

{case 1: printf(\ case 2: printf(\ case 3: printf(\

case 4: printf(\

default: printf(\} }

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

- 4 -

运行结果是( )。 #include main( )

{ int j,k; char cp; cp=getchar( );

if (cp>='0' && cp<='9') k=cp-'0';

else if (cp>='a' && cp<='f') )。 k=cp-'a'+10;

else k=cp-'A'+10; printf(\}

A) 2 B) 4 C) 1 A

D) 10

本文来源:https://www.bwwdw.com/article/pryp.html

Top