- 选择结构
- 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件
为假时要执行的语句(可选的)。
C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false
if判断结构的一般形式例: 输入两个实数,按代数值由小到大的顺序输出这两个数。
Ø例:输入一个数,小于60输出不及格,否则及格。
Ø解题思路:
- 用scanf函数接收鍵盘输入的数
- 用if else语句实现条件判断,分别输出不及格和及格两种情况。
#include //包含标准输入输出头文件
int main() //主函数main,程序的入口函数
{
int score; //定义一个整型变量score
scanf(“%d”,&score); //从键盘输入1个值
if(score < 60) // 条件判断
printf(“不及格\n”); // 语句1
else
printf(“及格\n”); // 语句2
return 0; //函数返回值为0
}
if.. else if ..else..语句
Ø例:按照考试成绩等级输出百分制,A等为85分以上,B等为70~84分,C等为60~69分,
D等为60分以下,成绩等级由键盘输入。
Ø解题思路:
- 用scanf函数接收鍵盘输入等级。
- 用if.. else if..else 语句实现条件判断, 输出等级对应的分数。
#include
int main()
{
char grade;
scanf("%c",&grade);
if(grade == ‘A’) // 条件判断
printf(“85~100分\n”); // 语句1
else if(grade == ‘B’)
printf(“70~84分\n”); // 语句2
else if(grade == ‘C’)
printf(“60~69分\n”); // 语句3
else if(grade == ‘D’)
printf(“60分以下\n”); // 语句n
else
printf(“输入的等级错误\n”); //语句n+1
return 0;
}
最常用的3种if语句形式:
1. if (表达式) 语句1 (没有else子句)
2. if (表达式) 语句1
else 语句2 (有else子句)
3. if(表达式1) 语句1
else if(表达式2) 语句2
else if(表达式3) 语句3
┆
else if(表达式m) 语句n
else 语句n+1
switch语句例: 要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为70~84分,C等为
60~69分, D等为 60分以下 。成绩的等级由键盘输入。
Ø解题思路:
- 判断出这是一个多分支选择问题
- 根据百分制分数将学生成绩分为4个等级
- 如果用if语句,至少要用3层嵌套的if,进行3次检查判断
- 用switch语句进行一次检查即可得到结果
例:输入两个数,输中两个数中最大的数
Ø解题思路:
- 用scanf函数接收鍵盘输入2个数
- 用if else语句判断最大最小值,这里用三元运算符取代if else
- 将得到最大值输出到屏幕
#include
int main()
{
int a,b,max; //定义3个整型变量
scanf("%d %d",&a,&b);
max = a > b ? a :b; // 三元运算符取代if else语句
printf(“a,b中最大的数是%d\n”,max);
return 0;
}
- 选择结构的嵌套
Ø解题思路:
- 用if语句检查x的值,根据x的值决定赋予y的值
- 由于y的可能值不是两个而是三个,因此不可能只用一个简单的(无内嵌if)的if语句来实现
#include
int main()
{
int x,y; //定义2个整型变量
scanf("%d",&x);
if(x < 0)
y = -1;
else
if(x == 0)
y = 0;
else
y = 1;
printf(“a,b中最大的数是%d\n”,max);
return 0;
}
- 循环结构程序设计
#include
int main()
{
int i=1,sum=0; //赋初值
do
{
sum=sum+i;
i++; // 条件值自增1
}while(i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?