C语言中的条件控制语句选择结构
在C语言中,一共有三种程序结构:顺序结构、选择结构(分支结构)和循环结构。顺序结构,从头到尾一句接着一句的执行下来,直到执行完最后一句;选择结构,到某个节点后,会根据一次判断的结果来决定之后哦向哪一个分支结构执行;循环结构,是指在程序中需要反复执行某个功能而设置的一种程序结构。
本片文章主要讲述选择结构,选择结构又叫分支结构或条件控制语句选择结构。
条件控制语句选择结构分为if-else结构与switch-case结构。
一、if-else结构
1.if-else结构语法结构
//基本形式
if(表达式)语句;//或者是
if(表达式)语句1;
else语句2;//多分支形式
if(表达式1)语句1;
else if(表达式2)语句2;
else if(表达式3)语句3;......
else if(表达式n)语句n;
else语句n+1;
2.if-else结构举例
#include <stdio.h>
int main()
{int a=2;int b=3;if(a==b){printf ("keke\n");}else if(a>b){printf("haha\n");}else{printf("hehe\n");}
return 0;
}
3.if-else结构运行结果
4.if-else结构执行过程
(1)计算if后括号里面表达式1的值,当表达式的结果为真(非0)时,执行语句1,执行完后跳到下一条语句;如果表达式的结果为假(0)时,直接判断表达式2的值;
(2) 一次对后面的语句进行判断和执行,直到所有语句执行完。
二、switch-case结构
1.swith-cas结构语法结构
switch(表达式)
{case 常量表达式1:语句1;break;case 常量表达式2:语句2;break;...case 常量表达式n:语句n;break;default;语句n+1;break;
}
2.switch-case结构举例
#include <stdio.h>
int main()
{int day=0;printf("请输入day=\n");scanf("%d", &day);switch(day){case 1:printf("星期一\n");break;case 2:printf("星期二\n");break;case 3:printf("星期三\n");break;case 4:printf("星期四\n");break;case 5:printf("星期五\n");break;case 6:printf("星期六\n");break;case 7:printf("星期天\n");break;default:printf("输入错误!\n");break;}return 0;
}
3.switch-case结构运行结果
4.switch-case结构执行过程
(1)首先计算表达式的值;
(2)将这个计算出来的值依次和case后面的值进行比较,一旦有匹配的,就执行对应的语句,遇到break就结束;
(3)如果所有case都不匹配,就执行语句体n+1。