CH04_程序流程结构
CH04_程序流程结构
程序流程结构
C/C++支持最基本的三种程序运行结构:
- 顺序结构:程序按顺序执行,不发生挑战
- 选择结构:依据条件是否满足,有选择的执行相应的功能
- 循环结构:依据条件是否满足,循环多次执行某段代码
选择结构
if语句
作用:执行满足条件的语句
单行格式if语句:if(条件){语句块}

示例:
#include <iostream>
using namespace std;
int main() {
int score = 72;
//判断条件是否满足
if (score >= 60) {
cout << "及格了" << endl;
}
system("pause");
return 0;
}
多行格式if语句:if(条件){语句块}else{语句块}

示例:
#include <iostream>
using namespace std;
int main() {
int score = 72;
//判断条件是否满足
if (score >= 60) {
cout << "及格了" << endl;
}
else {
cout << "继续努力" << endl;
}
system("pause");
return 0;
}
多条件的if语句:if(条件){语句块}else if(条件){语句块}...else{语句块}

示例:
#include <iostream>
using namespace std;
int main() {
int score = 0;
cout << "请输入你的考试成绩:" << endl;
cin >> score;
//判断条件
if (score >= 80) {
cout << "优秀" << endl;
}
else if (score >= 70) {
cout << "良好" << endl;
}
else if (score >= 60) {
cout << "及格" << endl;
}
else {
cout << "差" << endl;
}
system("pause");
return 0;
}
嵌套if语句:在if语句中,可以嵌套使用if语句,达到更精准的条件判断
示例:
#include <iostream>
using namespace std;
int main() {
//学校组建校篮球队,面向全校招募队员,要求身高不低于1.75米
char flag = 'n';
double height = 0;
cout << "你是本校学生吗?(y/n):" << endl;
cin >> flag;
cout << "你身高多少(cm):" << endl;
cin >> height;
if (flag == 'y') {
if (height >= 175) {
cout << "恭喜你,报名成功!" << endl;
}
else {
cout << "很遗憾,身高不满足要求!" << endl;
}
}
else {
cout << "非本校学生,禁止报名!" << endl;
}
system("pause");
return 0;
}
三目运算符
作用:通过三目运算符实现简单的判断
语法:表达式1?表达式2:表达式3;
描述:
如果表达式1为真,则执行表达式2,并返回表达式2的结果;
如果表达式1为假,则执行表达式3,并返回表达式3的结果.
示例:
#include <iostream>
using namespace std;
int main() {
int age = 0;
cout << "请输入你的年龄:"<<endl;
cin >> age;
cout << "你是:" << (age >= 18 ? "成年人" : "未成年人") << endl;
system("pause");
return 0;
}
switch语句
作用:执行等值多条件的分支语句
语法:
switch(表达式){
case 值1:
//语句块
break;
case 值2:
//语句块
break;
case 值3:
//语句块
break;
default:
//语句块
break;
}
示例:
#include <iostream>
using namespace std;
int main() {
int mingCi = 0;
cout << "请输入你的名次:" << endl;
cin >> mingCi;
switch (mingCi) {
case 1:
cout << "奖励一个女朋友" << endl;
break;
case 2:
cout << "奖励一个笔记本电脑" << endl;
break;
case 3:
cout << "奖励一个移动硬盘" << endl;
break;
default:
cout << "什么奖励都没有" << endl;
break;
}
system("pause");
return 0;
}
循环结构
while循环
作用:满足循环条件执行循环语句。
语法:while(循环条件){循环语句}
描述:只要循环条件的结果为真,就执行循环语句。

示例:
#include <iostream>
using namespace std;
int main() {
//产生的随机数范围为:1-100
//int num = rand() % 100 + 1;
int count = 0;
while (count < 10) {
cout << "好好学习,天天向上!" << endl;
count++;
}
system("pause");
return 0;
}
do-while循环
作用:满足循环条件,执行循环语句。
语法:do{循环语句}while(循环条件);
描述:与while的区别在于do..while会先执行一次循环语句,再判断循环条件。

示例:
#include <iostream>
using namespace std;
int main() {
int score = 0;
do {
cout << "参加了一次考试,请输入分数:" << endl;
cin >> score;
} while (score<60);
cout << "恭喜你,考试合格!" << endl;
system("pause");
return 0;
}
for循环
作用:满足循环条件,执行循环语句。
语法:for(初始部分;条件部分;迭代部分){循环语句}
示例:
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 10; i++) {
cout << "hello world" << endl;
}
system("pause");
return 0;
}
嵌套循环
作用:在循环体中再嵌套一层循环,解决一些实际问题
示例:
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <=9; i++) {
for (int j = 1; j <= i; j++) {
cout << j<<"*"<<i<<"="<<(j*i)<<"\t";
}
cout << endl;
}
system("pause");
return 0;
}
跳转语句
break语句
作用:用于跳出选择结构或循环结构。
描述:
1.出现在switch条件语句中,作用是终止case并跳出switch。
2.出现在循环语句中,作用是跳出当前的循环语句。
3.出现在嵌套循环中,跳出最近的内存循环结构。
示例:
#include <iostream>
using namespace std;
int main() {
int score = 0;
for (int i = 0; i <10; i++) {
cout << "请输入分数:" << endl;
cin >> score;
if (score < 0) {
cout << "分数输入错误,终止录入!" << endl;
break;
}
}
system("pause");
return 0;
}
continue语句
作用:在循环语句中,结束本次循环,继续下一次循环。
示例:
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0)continue;
cout << i << endl;
}
system("pause");
return 0;
}
goto语句
作用:可以无条件跳转语句。
语法:goto 标记
描述:如果标记的名称存在,则执行到goto语句时,会跳转到标及的位置。
示例:
#include <iostream>
using namespace std;
int main() {
cout << "1" << endl;
goto Flag;
cout << "2" << endl;
cout << "3" << endl;
cout << "4" << endl;
Flag:
cout << "5" << endl;
system("pause");
return 0;
}
CH04_程序流程结构的更多相关文章
- C语言基础知识-程序流程结构
C语言基础知识-程序流程结构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.概述 C语言支持最基本的三种程序运行结构:顺序结构,选择结构,循环结构. 顺序结构:程序按顺序执行, ...
- [C++基础入门] 4、 程序流程结构
文章目录 4 程序流程结构 4.1 选择结构 4.1.1 if语句 4.1.2 三目运算符 4.1.3 switch语句 4.2 循环结构 4.2.1 while循环语句 4.2.2 do...whi ...
- 程序流程结构——if语句
c语言支持最基本的三种运行结构: 顺序结构:程序按顺序执行,不发生跳转 选择结构:根据是否满足条件 ,有选择的执行相应功能 循环结构:依据条件是否满足,循环多次执行某段代码 #define _CRT_ ...
- Java基础-程序流程控制第二弹(循环结构)
Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...
- Java基础-程序流程控制第一弹(分支结构/选择结构)
Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...
- iOS/iPhone 程序文件目录结构以及启动流程
要想清晰的理解IOS应用程序的启动过程,毫无疑问需要深入了解一下ios应用程序的文件系统.一个ios应用程序都有一个属于自己沙盒(sandbox),应用沙盒就是文件系统目录,并且与文件系统的其他部分隔 ...
- C++之程序流程_选择结构
C/C++支持最基本的三种程序运行结构:==顺序结构.选择结构.循环结构== * 顺序结构:程序按顺序执行,不发生跳转* 选择结构:依据条件是否满足,有选择的执行相应功能* 循环结构:依据条件是否满足 ...
- [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套
一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...
- Java 基础 程序流程控制 (下)
Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...
- Java 基础 程序流程控制 (上)
Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...
随机推荐
- 数据标注工具 doccano
目录 安装 运行 doccano 使用 doccanno 上传数据 定义标签 添加成员 开始标注 导出数据 查看数据 统计 数据标注工具 Label-Studio 安装 打开命令行(cmd.termi ...
- Built-in COM has been disabled via a feature switch.
.net 6.0 开始默认关闭com组件 使用时会出现以下信息 Built-in COM has been disabled via a feature switch. See https://aka ...
- DPO: Direct Preference Optimization 直接偏好优化(学习笔记)
学习参考:链接1 一.为什么要提出DPO 在之前,我们已经了解到基于人类反馈的强化学习RLHF分为三个阶段:全监督微调(SFT).奖励模型(RM).强化学习(PPO).但是RLHF面临缺陷:RLH ...
- Web运作原理探析
Web运作原理探析 1.1 web的 概念 Web是一种分布式的应用架构,旨在共享分布在网络上的各个Web服务器中的所有互相链接的信息. 1.2 HTML是指超文本标记语言. 1.3 URL简介 UR ...
- ClickHouse介绍(一)初次使用
ClickHouse使用 ClickHouse是一个面向列存储的OLAP分析数据库,以其强大的分析速度而闻名.有关ClickHouse的介绍可以参考其官网说明[1].本文主要介绍它的基本使用. 1. ...
- Android 各层架构
Android应用框架层和硬件抽象层以及底层之间的关系 1. JNI技术: (1).JNI技术简单的说就是在本地Java语言声明本地方法和加载动态链接库(.so文件) (2).动态链接库(.so文件) ...
- LLM并行训练3-数据并行
前置知识 混合精度训练 在参数存储时采取fp32, 开始进行fp/bp时转成fp16运算, 拿到fp16梯度后再转回fp32更新参数. ZeRO对显存占用的估算: 模型状态: Weights(fp16 ...
- matlab常用语法简介
目录 一.输入函数 1.disp函数 二.合并字符串 1.strcat函数 (1)strcat函数可用于合并字符串,用法如图: 2.利用向量,用法如图: 3.利用"num2str" ...
- yb课堂之跨域配置 《二十三》
CorsInterceptor.java package net.ybclass.online_ybclass.interceptor; import org.springframework.http ...
- 聊天chat封装
说明:连接状态,客户端ID,在线状态,连接中,当前聊天会话ID,当前聊天对象ID,总未读数, 聊天功能实现首先要保证当前用户已经登录状态 监听登录时更新会话列表 监听退出时更新会话列表 发起聊天的时候 ...