5.C语言之分支结构(1)
大家好!今天我们来学习C语言的分支结构。
在学习之前我们要知道,顺序结构的程序只能按照程序语句先后顺序的方式来执行处理数据,但是现实问题往往不会那么简单,有时候需要根据不同的情况执行不同的操作,这时我们就要求计算机能够对问题进行判断,根据判断的结果不同,选择处理的方式也就不同,这就要用到今天讲的分支结构了。
能够实现分支结构的有两种,一种是if结构另外一种就是switch结构。今天我们先来学习if结构。
if语句有很多种,最简单的是单分支结构,再其次就是二叉结构,还有就是嵌套结构。
我们首先来学习if语句的单分支结构,其形式一般是:
if(表达式)
<语句A>;
其中表达式一般为条件表达式或者是逻辑表达式,if结构的功能是:先判断表达式的逻辑值,若该逻辑值为真,则执行语句A否则什么也不执行。
if语句中的语句A一般都是以复合语句的形式出现,即用一对花括号{}括起来。如果if语句中的语句只有一条,则可以不需要花括号。
我们来看一个例子:(此例是在visual stdio 2019编译器下运行)
比较两个数的大小,并且按从小到大输出。
#include<stdio.h>
int main()
{
int a, b, c;
printf("请输入要比较的两个数:\n");
scanf_s("%d%d", &a, &b);
if (a > b)
{
c = a;
a = b;
b = c;
}
printf("两数从小到大依次为:%d,%d", a, b);
return 0;
}
下面我们在来学习if-else语句,if-else语句是一种二叉结构,其形式为:
if(表达式)
<语句A>
else
<语句B>
其中表达式一般为条件表达式或者是逻辑表达式。
if-else语句的功能是:先判断表达式的值,若值为真,则执行语句A,若值为假,则执行语句B。
我们来看一个例子:
输入a和b,如果a比b大则计算两数之差,如果a比b小则计算两数之和。(此例是在visual stdio 2019中编译运行)
代码如下:
#include<stdio.h>
int main()
{
int a, b,c;
printf("请输入a和b的值:\n");
scanf_s("%d%d", &a, &b);
if (a > b)
{
c = a - b;
printf("两数之差:%d", c);
}
else
{
c = a + b;
printf("两数之和:%d", c);
}
return 0;
}
好了,今天我们讲完了,如果有疑问,请私聊我。
本文原创未经允许不得转载。