一个分支结构的程序关键在于条件的描述和实现分支结构的语句。
1.if 语句
C语言的if语句有三种形式,分别适应不同的分支结构。
1.1简单的 if 语句
一般形式:if(表达式){语句}
执行流程:计算表达式的值,若值为0(即“真”),则执行指定语句,否则直接执行if语句的下一条语句(在C语言中,“0”为假,“非0”为真)。
在简单的if语句中,当if子句在语法上是一个语句时,两边的花括号“{}”可以不写,但如果包含多个语句,必须要用花括号“{}”括起来组成复合语句。
如: if(a>0) {b++ ;} 也可以写成:if(a>0) b++ ;
例1:输入整数x,根据下面的分段函数计算y的值。
y=
编程思路:x为任意整数,有3种取值的可能,只有通过判断才能确定具体的取值情况,以便给y赋值。本次解答只采用3个简单的if语句来完成的取值判断。
#include<stdio.h>
int main()
{
int x,y;
printf("输入整数x:");
scanf("%d",&X);
if(x>0)
y=x+1;
if(x==0)
y=x;
if(x<0)
y+x-1;
printf("%d=y",y);
return o;
}
输入 60 ,得到的结果为:
1.2 双分支 if 语句(if-else 形式)
简单的if语句只在条件为“真”时执行指定操作。而双分支if语句,在条件为“真”或为“假”时都有要执行的操作。
1)一般形式
if(表达式)
{ 语句 1}
else
{ 语句 2}
2)执行流程
计算表达式的值,若表达式的值为非0(即“真”),则选择执行语句1,否则执行语句2。
举一个例子:判断整数i的奇偶性: