C语言中,提供了if语句和switch语句来实现选择结构,if语句用于两者选一的情况,而switch语句用于多分支选一的情形。
if语句
其语句形式为:
if (表达式)
语句;
C 语言把任何非零和非空的值假定为真(true),把零或 null 假定为假(false)。如果表达式的值为真,则执行其后的语句,否则不执行该语句,而执行if语句后面的语句。其对应的流程图见下图所示。
实例
输入两个整数,输出其中的大数
int a, b, max;
printf("input two numbers: ");
scanf_s("%d%d", &a, &b);
max = a;
if (max < b)
max = b;
printf("max=%d", max);
本例程序中,输入两个数a,b。把a先赋给变量max,再用if语句判别max和b的大小,如果max小于b,则把b赋值给max。因此max中总是大数,最后输出max值。
if-else语句
其语法形式为:
if (表达式)
语句1;
else
语句2;
其中else部分是可选的。该语句执行时,先计算表达式的值,如果其值为真(即表达式的值为非0),则执行语句1;如果其值为假(即表达式的值为0),并且该语句包含else部分,则执行语句2。