《C语言第4章选择结构.docx》由会员分享,可在线阅读,更多相关《C语言第4章选择结构.docx(8页珍藏版)》请在三一办公上搜索。
1、C语言第4章选择结构第四章选择结构 选择: 1以下关于运算符优先级的描述中,正确的是。 A)!算术运算关系运算&|赋值运算 B)&算术运算关系运算赋值运算 C)关系运算算术运算&|赋值运算 D)赋值运算算术运算关系运算&| 2逻辑运算符的运算对象的数据类型。 A)只能是0或1 B)只能是.T.或.F. C)只能是整型或字符型 D)任何类型的数据 3能正确表示x的取值范围在0,100和-10,-5内的表达式是。 A)|&| B)&|& C)& D)|&| 4判断字符型变量ch为数字的表达式是( ) 。 A) 0=ch=9 B)& C)0=ch=9 D)& 5若有以下函数关系 x0 y=x x=0
2、 y=x+1 下面程序段能正确表示以上关系的是。 A) y=2x; B) y=2x; if(x!=0) if(x0)y=x; if(x=0)y=x+1; else y=x+1; else y=x; C) if(x=0) D)y=x+1; if(x0)y=x; if(x=0) elsey=x+1; 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+; 7.设有如下定义:char ch=z,则执行下面语句
3、后变量ch是值为:。 ch=(A=ch&chy|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 9. C语言中,要求运算对象必须是整型的运算符是:。 A) B)+ C)% D)!= 10.在C语言中,多分支选择结构语句为:。 switch case 常量表达式1:语句1; case 常量表达式n-1:语句n-1; default 语句n; 其中括号内表达式c的类型:。 A)可以是任意类型 B)只能为整型 C)可以是整型或字符型 D)可以为整型或实型 11.
4、下面的程序片段所表示的数学函数关系是。 y= -1; ifif(x0) y=1; else y=0; (x0)-1 (x0)1 0 (x0)-1 (x0) B.0 (x0) C.1 (x0) D.0 (x0) A. 12. 下列各语句序列中,能够将变量u、s中最大值赋值到变量t中的是。 A、if(us)t=u; t=s; B、t=s; if(us)t=u; C、if(us)t=s; else t=u; D、t=u; if(us)t=s; 13. 能正确表示“当x的取值在1,10和200,210范围内为真,否则为假的表达式是( ) A.(x=1)&(x=200)&(x=1)|(x=200)|(x
5、=1)&(x=200)&(x=1)|(x=200)|(xy&x!=y); B.if(x=y)x+=y; C.if(x!=y)scanf(“%d“,&x) else scanf(“%d”,&y); D.if(xy)x+;y+; 15.请阅读以下程序,该程序( ) main int a=5,b=0,c=0; if(a+b+c) printf(“*n”); else printf(“$n”); A.有语法错误不能通过编译 B.可以通过编译但不能通过连接 C.输出* D.输出$ 16.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与( )配对。 A.缩进排位置相同的i
6、f B.其之前最近的if C.其之后最近的if D. 以上说法都不准确 17判断字符型变量ch为大写字母的表达式是 A)A=ch=Z B)& C)& D)AND 18若有以下变量定义: float x; int a,b; 则正确的switch语句是。(1级) A)switch(x) case 1.0:printf(*n); case 2.0:printf(* *n); B)switch(x) case 1,2:printf(*n); case 3:printf(* *n); C)switch(a+b) case1:printf(*n); case 2*a:printf(* *n); D)swi
7、tch(a+b) case1:printf(*n); case1+2:printf(* *n); 19.设有如下定义:char ch=z,则执行下面语句 后变量ch是值为:。 ch=(A=ch&ch 0 ) 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
8、; printf (“%f ”, x ) else printf ( “%f ”, - x ) ; 填空: 1. 设y为int型变量,请写出描述“y是奇数”的表达式:_。 2. 在C语言中提供的条件运算符?:的功能是_ 。 3. 4. 5. 6. 用C语言描述“abbc的值是_ 。 当a=5,b=4,c=2时,表达式ab!=c的值是_。 C语言提供的三种逻辑运算符是_。 7. 设x,y,z均为int型变量写出“x或y中有一个小于z”的表达式_。 8. 输入一个字符,如果是大写字母,则把其变成小写字母;如果是小写字母,则变成大写字母;其它字符不变。请在空格内填入缺省的内容。 if (_) ch=
9、ch+32; else if(ch=a&chb)=c 的值为真 4. 在执行switch语句时,default和各个case的出现次序不影响执行结果 5. 在C语言中,else子句总是与和它最近的if子句配对。 6. switch后面括号里的表达式,可以是整型、字符型或者浮点型表达式。 7. 表示 多分支选择结构只能使用if-else-if-else语句和if语句的嵌套。 8. int x=2,y=-1,z=2; if(xy) if(y0) z=0; else z+=1; printf(%dn,z); 以上程序的输出结果为0 9. 在c程序中,else子句可以单独使用。 10. 在c程序中el
10、se的个数不能多于if的个数。 编程: 1. 编写一个程序,要求从键盘输入三个数,程序判断这三个数能否构成一个三角形。如果能,判断该三角形是否直角三角形。 2. 输入圆的的半径r和一个整型数k,当k=1时,计算圆的面积;当k=2时,计算圆的周长,当k=3时,既要求求圆的周长也要求出圆的面积。用if-else语句实现以上功能。 3. 有一函数,其函数关系如下,试编程求对应于每一自变量的函数值。 x0时,y= x*2 0=x=10,y= -0.5x+10 x10,y= x- 1 4. 编写一个程序,输入a、b、c三个数,按从大到小的顺序将它们输出。 5. 编写一个程序,用户输入运算数1、四则运算符
11、和运算数2,输出计算结果。如,输入“4+3”,输出7。 6. 编一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为A; 7. 输入一个整数,判断是奇数还是偶数,输出判断结果。 8. 输入圆的的半径r和一个整型数k,当k=1时,计算圆的面积;但k=2时,计算圆的周长,当k=3时,既要求求圆的周长也要求出圆的面积。用switch语句实现以上功能。 9. 输入一个字符,判断它是字母,还是数字,还是其他符号。并输出判断的结果。 10. 输入一个字母,如果它是大写的,就输出对应的小写形式;如果它是小写的,就输出对应的大写形式。 答案: ADBDCCDABCCCBCCCBDCD 填空: y%2!=0根据条件表达式的值决定执行哪一个表达式ab&bc01 !,&,|xz|y=A&ch=Z遇到break或者switch语句的“”2 3* 判断: 正确错误正确正确错误错误错误错误错误正确