admin管理员组

文章数量:1794759

C语言条件判断语句

C语言条件判断语句

1.分支语句

解释:条件判断语句也被称为分支语句,就是满足一定的条件才执行的语句只要有if else语句 switch语句

1.1if else 语句

就是满足一定的条件才实行的语句 结构体就是 if(条件判断)+执行的语句,如果条件为真就执行语句

在这给大家举个简单的例子:就在昨天发生在我身上的一件事情

事情是这样的:昨天我和我准女朋友去玩,我俩就开玩笑说如果去抓娃娃,抓到了就在一起,就用抓到的这个娃娃记录我们的开始,结果在我们没啥希望的时候那个娃娃就突然被抓到了,所以我们就在一起了

那我们用一个简单的if语句来写出来我的这个事情哈

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() { int flag ; scanf("%d", &flag);//抓到娃娃了就输入1,没有抓到就输入0 if (flag == 1) { printf("我和我女朋友抓到娃娃了,所以我们在一起了"); } else { printf("我们没有抓到娃娃,所以我们的开始不能用这个娃娃记录了"); } return 0; }

显然我昨天出去是抓到娃娃了,所以我输入1 ,大家看返回值

再举个例子说明一下这个语句:比如说我们现在都是在学习呢,如果说你好好学习,那你将来可以拿到一个好的offer,如果说你直接摆烂,那么你就要去卖烤红薯养活自己(只是一个简单的例子,给自己的代码生活添点乐趣)那我们下面展示代码

int main() { int flag;//此时我们只是定义一个int型变量的flag并没有给它初始值 scanf("%d", &flag); if (flag == 1) { printf("你好好学习了,你可以拿到一个好的offer"); } else { printf("你没有好好学习,所以你只能卖烤红薯去养活自己"); } return 0; }

如果你今天看了我的博客,并且你自己也上手敲了代码,那就说明你今天学习了,你可以拿到一个好的offer,那就输入1

如果说你今天啥也没有干,睡了一天,那就输入0;

  

if else语句的多分支语句,上面只是讲解了两种情况那么三种或者三种以上呢:那我们就要用到

if (条件语句1) { 执行的语句exp1 } else if (条件语句2) { 执行语句exp2 } else if (条件语句3) { 执行语句exp3 } else { 如果以上的条件语句都没有满足,就执行此语句 }

 那我们下面举个例子:

int main() { int age; scanf("%d", &age); if (age < 18) { printf("你还是一个未成年人"); } else if (age == 18) { printf("你今年刚刚成年"); }else if (age > 18 && age < 40) { printf("你已经中年了"); } else if (age >= 40 && age < 70) { printf("你已经壮年了"); } else { printf("你已经是老寿星了"); } return 0; }

当我们输入45时:

 在这还有一个要讲的如果说遇到下面的一种情况,拿应该会怎么输出呢:

int main() { int a = 1; int b = 2; if (a == 0) if (b == 2) printf("hh\\n"); else printf("hahah\\n"); return 0; }

那么这个是怎么输出的,发现啥都没有打印出来.

 在这我们要强调一下:else和它最近的语句对齐,和它最近的if匹配;

上面代码加上括号就可以很清楚的看出来.

int main() { int a = 1; int b = 2; if (a == 0) { if (b == 2) { printf("hh\\n"); } else { printf("hahah\\n"); } } return 0; } 1.2switch语句

switch语句:格式

int main() { int a = 1; switch (a) { case 1: 语句1; break; case 2: 语句2; break; case 3: 语句三; break; default://上面情况都不满足的情况 语句五; break; } return 0; }

下面举个例子:

int main() { int a = 0; scanf("%d", &a); switch(a){ case 1: printf("星期一"); break; case 2: printf("星期二"); break; case 3: printf("星期三"); break; case 4: printf("星期四"); break; case 5: printf("星期五"); break; case 6: printf("星期六"); break; case 7: printf("星期天"); break; default: printf("啥也不是"); break; } return 0; }

此时我们输入3来看看效果:

那么为什么要switch语句:我们把上面的代码用if语句写一下,大家一看便知为什么有switch语句

int main() { int a = 0; scanf("%d", &a); if (a == 1) { printf("星期一"); } else if (a == 2) { printf("星期二"); } else if (a == 3) { printf("星期三"); } else if (a == 4) { printf("星期四"); } else if (a == 5) { printf("星期五"); } else if (a == 6) { printf("星期六"); } else if (a == 7) { printf("星期天"); } else { printf("啥也不是"); } return 0; }

 此时我们很清楚的看到,当我们要输出这样的形势的时候,用if条件语句的时候,很明显的发现语句很乱,给我们的美观度太差了,而当我们使用switch语句的时候,明显很清晰;

在这switch语句还有这样的一个用法:当我们输入1,2,3,4,5,让打印"要上班,累",输入6,7的时候打印"放假了,开心"

int main() { int a = 0; scanf("%d", &a); switch (a) { case 1: case 2: case 3: case 4: case 5: printf("要上班,累"); break; case 6: case 7: printf("放假了,开心"); break; } return 0; }

本文标签: 语句条件语言