C语言第四章复习

  • 格式:doc
  • 大小:66.00 KB
  • 文档页数:11

第四章 选择结构程序设计

一、选择题

18. 以下关于运算符优先顺序的描述正确的是 。(02~03第一学期试题)

A)关系运算符

B)逻辑运算符

C)赋值运算符

D)算术运算符

19. 能正确表示a>=10或a<=0的关系表达式是 。(02~03第一学期试题)

A)a>=10 or a<=0 B)a>=10 | a<=0

C)a>=10 && a<=0 D)a>=10 | | a<=0

20. 以下不正确的if 语句形式是 。(02~03第一学期试题)

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

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

C)if ( x != y ) scanf ( “%d”, &x) else scanf ( “%d”,

&y);

D)if ( x < y ) { x++; y++;}

21. 当 a = 1, b = 3 , c = 5, d = 4 时, 执行完下面程序段后 x 的值为 。(02~03第一学期试题)

if ( a < b ) if ( c < d ) x = 1 ;

else

if ( a < c )

if ( b < d ) x =2 ;

else x = 3 ;

else x = 6 ;

else x = 7 ;

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

22. 以下if语句中语法错误的是 。(01~02第二学期试题)

A)if (a>b)printf(“%f”,a); B)if(a>b)printf(“%f”,a);

else

printf(“%f”,b);

C)if(a>b)printf(“%f”,a) D)if(a>b)printf(“%f”,b);

else printf(“%f”,b); else

printf(“%f”,a);

23. 能表示整数x符合下面两个条件的语句是 。(01~02第二学期试题)

(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.

A)(x%4==0&&x%100!=0)||x%400==0 B)(x%4==0||x%100!=0)&&x%400==0

C)(x%4==0&&x%400!=0)||x%100==0

D)(x%100==0||x%4!=0)&&x%400==0

24. 设有如下定义:char ch=’z’,则执行下面语句

后变量ch是值为: 。(03试题)

ch=(‘A’<=ch&&ch<=‘Z’)?(ch+32):ch

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

25. 若I为整型变量,则下列程序段的运行结果为 。(03试题)

I=322;

if(I%2==0) printf(“#####”)

else printf(“*****”);

A)##### B)#####*****

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

26. 已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为: 。(03试题)

if (x>y||xz)

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

A)x=50, y=80, z=80 B)x=50, y=30, z=30

C)x=30, y=50, z=80 D)x=80, y=30, z=50

27. C语言中,要求运算对象必须是整型的运算符是: 。(往届试题)

A)> B)++ C)% D)!=

28. 已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为: 。(往届试题)

if (x>y||xz)

{ z=x; x=y; y=z; }

A)x=50, y=80, z=80 B)x=50, y=30, z=30

C)x=30, y=50, z=80 D)x=80, y=30, z=50

29. 以下程序的输出结果是 。(04~05第二学期试题)

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

if (x

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

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

30. 设a、b和c是int型变量,且a=2,b=4,c=6,则下面表达式中值为0的是: 。(往届试题)

A)‘a’+ ‘b’ B)a<=b

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

31. 在C的if语句中,可用作判断的表达式是: 。(往届试题)

A)关系表达式 B)逻辑表达式

C)算术表达式 D)任意表达式

32. 下面能正确表示变量a在区间[0,5]或(6,10)内的表达式为: 。(往届试题)

A)0<=a || a<=5 ||6

B)0<=a&&a<=5 || 6

C)(0<=a||a<=5)&&(6

D)0<=a&&a<=5&&6

33.在C语言中,多分支选择结构语句为:

switch(c)

{ case 常量表达式1:语句1;

„„

case 常量表达式n-1:语句n-1;

default 语句n;}

其中括号内表达式c的类型: 。(往届试题)

A)可以是任意类型 B)只能为整型

C)可以是整型或字符型 D)可以为整型或实型

34. 以下if 语句语法正确的是: 。(往届试题)

A)if ( x > 0 )

printf(“ %f ”, x )

else printf(“%f”, - x );

B)if ( x > 0 )

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

else printf ( “%f ”, - x ) ; C)if ( x > 0 )

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

else printf ( “%f ”, - x ) ;

D)if ( x > 0 )

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

else printf ( “%f ”, - x ) ;

二、填空题

8. 输入3个实数 a, b, c要求按从大到小的顺序输出三数。(01~02第二学期试题)

main( )

{ float a,b,c,t;

scanf(“%f,%f,%f”,&a,&b,&c);

if (a

{t=a; __(1)__ b=t;}

if(__(2)__)

{t=a; a=c; c=t;}

if(b

{__(3)__ b=c; c=t;}

printf(“%f,%f,%f”,a,b,c);

} 9. 输入一个字符,如果是大写字母,则把其变成小写字母;如果是小写字母,则变成大写字母;其它字符不变。请在()内填入缺省的内容。(03试题)

main( )

{ char ch;

scanf(“%c”,&ch);

if (___(1)____) ch=ch+32;

else if(ch>=’a’&&ch<=‘z’) (__(2)___);

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

10. 以下程序的运行结果是:_________。(03试题)

main( )

{ int a = 2, b = 3, c ;

c = a ;

if ( a>b ) c = 1 ;

else if ( a == b ) c = 0 ;

else c = -1 ;

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

}

11. 以下程序的运行结果是:_________。(04~05第二学期试题)

main( )

{ int x;

x=5; if (++x>5) printf(“x=%d”,x);

else printf(“x=%d”,x--); }

三、编程题

4. 有一函数,其函数关系如下,试编程求对应于每一自变量的函数值。(03试题)

x2 (x<0)

y = -0.5x+10 (0x<10)

x-x (x10)

5. 编一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为‘A’;80~89分为 ‘B’;70~79分为‘C’;60~69分为‘D’;60分以下为 ‘E’。(往届试题)

6. 试编程完成如下功能:

输入一个不多于4位的整数,求出它是几位数,并逆序输出各位数字。(往届试题) 第四章 答案

一、 选择题

18-20 C D C 21~25 B C A D A

26~30 A C C B B 31~35 D B C B

二、填空题

8.a=b a

9.ch>=’A’&& c<=’Z’ ch=ch-32

10.-1

11.x=6

三、编程题

4.#include

main()

{float x,y;

scanf(“%f”,&x);

if(x<0) y=x*x;

else if(x>=0&&x<10) y=-0.5*x+10;

else y=x-sqrt(x);

printf(“y=%f”,y);

}

5.main()

{float score;