C语言 习题
选择结构作业解答(3)
一、选择题:
1. 判断char型变量ch是否为数字的表达式的是:
a) 0 < = ch <= 9 b) (ch > 0 )&&( ch < 9 ) c) (ch >= 0 )&&( ch <= 9 ) d) (ch >= 0 )||( ch <= 9 ) 答案:c)
2. 能正确表示a和b不同时为0的逻辑表达式的是:
a) a*b==0 b) (a==0)||( b==0) c) (a==0&&b!=0)&&( b==0&&a!=0) d)(a! = 0)||( b != 0)
答案:d)
3. 能表示a不能被2整除且a、b不相等,但a、b的和等于0的C语言逻辑表达式是:
a) a==-b && a%2==0 b) a!=b && a+b==0 && a%2 c) !(a%2)&&a==-b d) a%2==0 a+b==0 答案:b) 4. 有以下程序:
#include
void main { int x=2,y=3,z;
char ch=‘a’; z=(x||!y)&&(ch> A ); }
程序运行后z的值是 a)true b)false c)0 d)1
答案:d)
说明:C语言的逻辑运算的结果是0或1;
5. 关于if后面一对圆括号中的表达式,叙述正确的是
a) 只能用关系表达式 b) 只能用逻辑表达式
c) 只能用关系表达式或逻辑表达式 d) 可以使用任意合法的表达式
答案:d) 说明:if后面一对圆括号中的表达式用来决定执行哪个分支。判断的根据是该表达式的值是否为非0。所以任意合法的表达式都可以。
6. 对switch后面一对圆括号中的表达式,叙述正确的是
a) 只能用数字 b) 可以是浮点数 c) 只能用整型数据或字符型数据 d)以上叙述都不对
答案:c)
说明:C语言中规定,switch后面一对圆括号中的表达式的值必须是确定的值,具体执行switch中的哪个分支,由该值决定。只有整型、字符型表达式或关系,逻辑表达式才能得到确定的值。 7. 以下不正确的if语句是
a) if (a
c) if (a=b) printf(“equal”); c)if (a>b)&&(b>c) printf(“max=%d”, a); 答案:c)
说明:C语言中规定,if语句的格式应为:if( 表达式) 语句; else 语句2 8. 有以下程序:
#include