第5 章 选择结构程序设计 5-1 比较单分支、双分支、多分支if 语句
答:(1)多分支if 语句可用多条单分支、双分支if 语句等价实现
(2)双分支if 语句形式上相当于单分支if 语句扩展 else 分支而来
(3)单分支if 语句可以认为是双分支if 语句缺省 else 子句的特殊情况,一条双分支语句可用两条单分支语句实现
思考:分支结构主要用在哪些情况下
它有哪几种形式
5-2 , 下列描述哪些是正确的
(1) if (x=0) if(x>0) y = 1 ; else y = 0 ; else y = -1 ; (3) y = -1 ; if(x
=0) if(x>0) y = 1 ; else y = 0 ; (4)y = 0 ; if (x>=0) if(x>0) y = 1 ; 答:(1) 正确 ; (2) 正确 ;(3) 不正确 ;(4) 不正确 ; 思考 : 若将(3)改为: y = -1 ; (4) 改为:y = 0 ; if(x>=0) /*删除原 if(x>=0)*/ if(x>0) y =1 ; if(x>0) y = 1 ; else y = 0 ; else y = -1 ; 后是否正确
5-3 仔细阅读以下程序 , 指出程序的运行结果
010001xxxy #include main() { int a , b ; a = b = 5 ; if(a==1) if(b==5) {a+=b ; printf("a=%d\n ",a) ; } else {a-=b ; printf("a=%d\n",a) ; } printf("a+b=%d",a+b) ; } 解 : 结果为 : a + b = 10 思考: 为何有三个printf 语句 ,却只有一行输出
如果将第5 行去掉或改为if(a==