本课程将帮助您掌握C语言中的条件语句,包括:
21年 15分
22年 35分
23年 20分
24年 30分
执行过程:先对"表达式"进行求值,如果计算结果为非0(为真),则执行其后的"语句",否则跳过其后的"语句"。
"表达式"可以为任何类型的表达式:
"语句"可以是一条简单语句,也可以是用花括号将几条语句括起来的一个复合语句。
运行时,若输入65,则输出"通过!";若输入56,则无输出。
1. 以下关于if语句的描述中,正确的是()
A. if语句的条件表达式不能用括号括起来
B. if语句的条件表达式只能使用关系表达式
C. if语句的条件表达式值为0时执行其后语句
D. if语句的条件表达式值为非0时执行其后语句
答案:D
解析:if语句的条件表达式可以是任意表达式,当表达式值为非0(真)时执行其后语句,为0(假)时不执行。条件表达式必须用括号括起来,但这不是if语句特有的要求。
2. 下列代码段执行后,变量x的值是()
A. 5
B. 0
C. 10
D. 20
答案:D
解析:注意条件表达式是"x = 0",这是一个赋值表达式,将0赋值给x,然后表达式的值为0(假),所以执行else分支,x被赋值为20。
3. 以下代码的输出结果是()
A. A
B. B
C. AB
D. 无输出
答案:B
解析:因为a=10,b=20,条件a>b不成立,所以不执行printf("A"),但会继续执行后面的printf("B")。
执行过程:如果"表达式"计算结果值为真,则执行语句1;否则执行语句2。
在if后面的"语句1"部分和else后面的"语句2"部分如果有几条语句,则应该用花括号"{}"将这几条语句括起来,成为一条复合语句。
错误示例:
正确写法:
运行时,若输入92,则输出"通过!";若输入57,则输出"未通过,继续努力!"。
1. 下列关于if...else语句的描述中,错误的是()
A. else总是与它上面最近的if配对
B. if和else后面的语句可以是复合语句
C. if和else后面的语句必须用花括号括起来
D. 如果if和else后面有多条语句,必须用花括号括起来
答案:C
解析:if和else后面如果只有一条语句,可以不用花括号括起来;但如果有多条语句,必须用花括号括起来形成复合语句。
2. 以下代码段执行后,变量a的值是()
A. 编译错误
B. 1
C. 2
D. 3
答案:A
解析:这段代码有语法错误。if后面有两条语句(a=b;和b=c;),但没有用花括号括起来,导致else找不到匹配的if。
3. 下列代码的输出结果是()
A. A
B. B
C. C
D. 无输出
答案:B
解析:x=10,第一个条件x>10不成立,检查第二个条件x>5成立,因此输出"B"。
1. 编写程序,输入一个整数,判断它是奇数还是偶数。
参考代码:
2. 编写程序,输入三个整数,找出其中的最大值。
参考代码:
3. 编写程序,输入一个成绩,根据以下规则输出等级:
90分以上:优秀
80-89分:良好
70-79分:中等
60-69分:及格
60分以下:不及格
参考代码: