提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在日常生活中我们无时无刻不在做着选择-----我们会根据水果店今天苹果的售价,决定我们是否购买水果,或者买多还是买少。假如苹果的价格低且质量较好,我们便会选择多买一些,价格高或者质量下乘,我们就会选择少买甚至不买苹果·。
那么如何在程序中实现选择这一功能呢?诸君请看下文。
提示:以下是本篇文章正文内容,下面案例可供参考
一、条件(选择)结构是什么
如果苹果质量好,我们便购买,否则不好便不买,这便是选择结构的基本思想。
即在特定的条件下,是否符合这个条件,从而决定是否执行下一步操作。比如买水果,小蕊去买水果,小蕊只有五块钱,苹果的价格是十元一斤,梨子的价格是四元一斤,小蕊非常痴迷于整数,一定要买整数斤的水果,5 <10---->小蕊买不到苹果;5 > 4---->小蕊可以买梨子。小蕊的零花钱作为基数,梨子和苹果的价格作为小蕊是否可以购买他们的条件,这便是选择。
二、条件结构的使用步骤
1.if语句的使用
1. 1 单个if的使用
/*if语句的使用*/
#include <stdio.h>
int main(void)
{
int n = 0;
scanf("%d", &n);
if (n >= 5)
printf("n >= 5");
return 0;
}
如图,当用户输入的n大于等于5时(即满足这个条件时),编译器才会在屏幕上打印“n >= 5”这句话,n不满足时,则没有任何输出。
那么问题来了,倘若n不满足“n >= 5”这个条件时,即n < 5时,我们也要编译器做出相应的输出,那该怎么办呢?——借助if else语句
1.2 if - else的使用
/*if-else语句的使用*/
#include <stdio.h>
int main(void)
{
int n = 0;
scanf("%d", &n);
if (n >= 5)
printf("n >= 5");
else
printf("n < 5");
return 0;
}
如图,使用else语句后,当输入的n小于五时,便会在屏幕上打印出这样一句话“n < 5”。
else就像if的反面,如果n不满足if中的条件A,那么就是非A,便会进入else。
1.3 else - if的级联形式使用
倘若不止A与非A这两种情况呢?那就要用到else-if语句了
/*else - if语句的使用*/
#include <stdio.h>
int main(void)
{
int n = 0;
scanf("%d", &n);
if (n >= 5)
printf("n >= 5");
else//n < 5
{
if (n > 0)
printf("0 < n < 5");
else
printf("n < 0");
}
return 0;
}
当在五与非五之间插入了一个分隔点零之后,分隔条件又多了一层。当n小于五时,进入else,else里又嵌套了一层选择,把大于零小于五的数和小于零(自然小于五)的数分隔开来。
实际上这种语句可以简化为
/*else - if语句的使用*/
#include <stdio.h>
int main(void)
{
int n = 0;
scanf("%d", &n);
if (n >= 5)
printf("n >= 5");
else if(n > 0)
printf("0 < n < 5");
else
printf("n < 0");
return 0;
}
即把一层花括号去掉,写成else-if
2.开关语句----switch语句的使用
当要处理的问题分类很多时,可用Switch语句替换if-else解决问题。因为就像一个个对应开关一样,因此Switch也被称为开关语句。
#include <stdio.h>
int main(void)
{
int n = 0;
printf("请输入电梯层数 :\n");
scanf("%d", &n);
switch (n)
{
case 1:
printf("一层开");
break;
case 2:
printf("二层开");
break;
case 3:
printf("三层开");
break;
default:
printf("楼层输入错误,请重新输入!");
}
return 0;
}
Switch语句的执行步骤为:1.先计算Switch括号中的值。2.拿着Switch括号中的数,把它当做一把钥匙,从上往下去寻找与他对应的钥匙孔——case后面括号里的数据。3.一旦钥匙与钥匙孔里的数据匹配上了的话,便从匹配上了的那个钥匙孔进入——从对应的case进入,并自上而下执行程序,直到遇到break语句。4.倘若Switch括号中的值并未与case中的值匹配(钥匙没有寻找到对应的钥匙孔),直接进入default语句,执行default语句里的内容。
值得注意的是,1. case语句并没有固定的顺序,一般是按照阿拉伯数字的顺序排放case,但如果某个case语句执行次数很多,把这个语句排在第一位也是可以的。2. default语句如果处在Switch语句的结尾,无需加break。就好比公交车到了终点站,车上的乘客不得不下车了一样,若default语句放置在Switch语句的末尾,则Switch已经要结束了,此时添加break已经没有必要了。
总结
今天介绍了分支语句——if与Switch。作为三大结构的一种,选择结构的重要性不言而喻,Switch与if语句既有相似之处,又有不同之处,在不同的领域各司其职,发挥着不同的作用。
这算是我的第一篇正经介绍的博客,既是一次分享,也是对于自己所学到的知识的反思与复盘,再输出的一个过程。
希望自己可以一直保持写博客的习惯,常复盘反思,带着乐观的心态生活。
我是小桃子,我热爱这个世界。