C语言程序设计之多分支选择控制与开关语句
需积分: 0 67 浏览量
更新于2024-08-05
收藏 2.67MB PDF 举报
第4章 分支控制-3开关语句1
本节讨论的主要问题是C语言中如何实现多分支控制,以及break和default在switch语句中的作用。多分支选择控制结构是指根据不同的条件选择不同的执行路径,C语言提供了多种方式来实现多分支选择控制,包括if语句、if-else语句、else-if语句、级联形式、双分支选择控制结构和多分支选择控制结构等。
在C语言中,if语句是最基本的选择控制结构,它可以根据条件的真假来选择不同的执行路径。if语句的基本形式为:
```c
if (条件) {
语句;
}
```
如果条件为真,则执行语句。如果条件为假,则跳过语句。
if-else语句是if语句的扩展形式,它可以根据条件的真假来选择不同的执行路径。如果条件为真,则执行if语句中的语句;如果条件为假,则执行else语句中的语句。if-else语句的基本形式为:
```c
if (条件) {
语句1;
} else {
语句2;
}
```
else-if语句是if语句的另一种扩展形式,它可以根据多个条件来选择不同的执行路径。else-if语句的基本形式为:
```c
if (条件1) {
语句1;
} else if (条件2) {
语句2;
} else {
语句3;
}
```
级联形式是if语句的另一种扩展形式,它可以根据多个条件来选择不同的执行路径。级联形式的基本形式为:
```c
if (条件1) {
语句1;
} else if (条件2) {
语句2;
} else if (条件3) {
语句3;
} ...
```
双分支选择控制结构是指根据一个条件来选择两个不同的执行路径。双分支选择控制结构的基本形式为:
```c
if (条件) {
语句1;
} else {
语句2;
}
```
多分支选择控制结构是指根据多个条件来选择多个不同的执行路径。多分支选择控制结构的基本形式为:
```c
if (条件1) {
语句1;
} else if (条件2) {
语句2;
} else if (条件3) {
语句3;
} ...
```
switch语句是C语言中的一种多分支选择控制结构,它可以根据一个表达式的值来选择不同的执行路径。switch语句的基本形式为:
```c
switch (表达式) {
case 值1:
语句1;
break;
case 值2:
语句2;
break;
...
default:
语句n;
break;
}
```
break语句是switch语句中的一个关键词,它可以使程序跳出switch语句的执行。default语句是switch语句中的一个关键词,它可以指定switch语句中的默认执行路径。
在本节的实例中,我们使用if语句来实现百分制成绩转换为五分制成绩的功能。我们首先输入score,然后根据score的值来选择不同的grade。例如,如果score在90-100之间,我们将grade设置为'A',如果score在80-89之间,我们将grade设置为'B',以此类推。如果score小于0或大于100,我们将输出"Input error!"。
在C语言程序设计中,我们可以使用if语句来实现多分支选择控制结构。例如:
```c
int main() {
int score;
char grade;
printf("Please input score:");
scanf("%d", &score);
if (score >= 90 && score <= 100) grade = 'A';
if (score >= 80 && score < 90) grade = 'B';
if (score >= 70 && score < 80) grade = 'C';
if (score >= 60 && score < 70) grade = 'D';
if (score >= 0 && score < 60) grade = 'E';
if (score < 0 || score > 100) printf("Input error!\n");
else printf("grade: %c\n", grade);
return 0;
}
```
这个程序首先输入score,然后根据score的值来选择不同的grade。最后,我们输出grade的值。如果score小于0或大于100,我们将输出"Input error!"。
点击了解资源详情
133 浏览量
125 浏览量
151 浏览量
2021-09-23 上传
2021-10-07 上传
558 浏览量
2021-01-28 上传
2022-12-02 上传

独角兽邹教授
- 粉丝: 38
最新资源
- C#实现自定义尺寸条形码和二维码生成工具
- Bootthink多系统引导程序成功安装经验分享
- 朗读女中文朗读器,智能语音朗读体验
- Jupyter Notebook项目培训教程
- JDK8无限强度权限策略文件8下载指南
- Navicat for MySQL工具压缩包介绍
- Spring和Quartz集成教程:定时任务解决方案
- 2013百度百科史记全屏效果的fullPage实现
- MATLAB开发电磁转矩电机瞬态响应研究
- 安卓系统短信问题解决方案:使用BlurEmailEngine修复
- 不同版本Android系统的Xposed框架安装指南
- JavaScript项目实验:模拟骰子与颜色转换器
- 封装高效滑动Tab动画技术解析
- 粒子群优化算法在Matlab中的开发与应用
- 网页图书翻页效果实现与turnjs4插件应用
- JSW: 一种新型的JavaScript语法,支持Coffeescript风格