IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ 基础篇 4 之程序流程结构 -> 正文阅读

[C++知识库]C++ 基础篇 4 之程序流程结构

程序流程控制

C/C++ 支持最基本的三种程序运行结构:顺序结构、选择结构和循环结构

顺序结构

程序按顺序执行,不发生跳转

选择结构

依据条件是否满足,有选择的执行相应功能

循环结构

依据条件是否满足,循环多次执行某段代码

选择结构

if 语句

作用:执行满足条件的语句

三种形式:单行格式的 if 语句、多行格式的 if 语句和多条件的 if 语句


单行格式的 if 语句

语法:if(条件){条件满足执行的语句}

注意:在 if 判断语句后面不要加上分号

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 分数高于 520 可以上一本 
	// 1. 提示用户输入自己的分数
	int score = 0;
	cout << "请输入自己的考试分数:";
	cin >> score;

	// 2. 判断用户输入的分数是否大于 520
	if (score > 520)
	{
		cout << "你可以上一本" << endl;
	}

	system("pause");
	return 0;
}

多行格式的 if 语句

语法:if(){条件满足执行的语句}else{条件不满足执行的语句}

注意:else 后面不需要再写条件

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 分数高于 520 可以上一本 否则只能上二本或职校
	// 1. 提示用户输入自己的分数
	int score = 0;
	cout << "请输入自己的考试分数:";
	cin >> score;

	// 2. 判断用户输入的分数是否大于 520
	if (score > 520)
	{
		cout << "你可以上一本" << endl;
	}
	else
	{
		cout << "你只能上二本或者是职校" << endl;
	}

	system("pause");
	return 0;
}

多条件的 if 语句

语法:if(条件1){条件1满足执行的语句}else if(条件2){条件2满足执行的语句}…else{条件都不满足执行的语句}

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 分数高于 520 可以上一本 分数高于 400 可以上二本 否则只能上职校
	// 1. 提示用户输入自己的分数
	int score = 0;
	cout << "请输入自己的考试分数:";
	cin >> score;

	// 2. 判断用户输入的分数是否大于 520
	if (score > 520)
	{
		cout << "你可以上一本" << endl;
	}
	else if (score > 400)
	{
		cout << "你可以上二本" << endl;
	}
	else
	{
		cout << "你可以上职校" << endl;
	}

	system("pause");
	return 0;
}

嵌套 if 语句

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 分数高于 520 可以上一本 分数高于 400 可以上二本 否则只能上职校
	// 一本中:分数高于 600 可以上武汉大学 分数高于 700 可以上清华大学 否则可以考上华中农业大学
	// 1. 提示用户输入自己的分数
	int score = 0;
	cout << "请输入自己的考试分数:";
	cin >> score;

	// 2. 判断用户输入的分数是否大于 520
	if (score > 520)
	{
		cout << "你可以上一本";
		
		if (score > 700)
		{
			cout << ",而且是清华大学" << endl;
		}
		else if(score > 600)
		{
			cout << ",而且是武汉大学" << endl;
		}
		else
		{
			cout << ",而且是华中农业大学" << endl;
		}
	}
	else if(score > 400)
	{
		cout << "你可以上二本";
	}
	else
	{
		cout << "你可以上职校" << endl;
	}

	system("pause");
	return 0;
}

案例:三只小猪称体重

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 输入三只小猪的体重 并找出体重最重的小猪
	// 1. 让用户输入三只小猪的体重
	int num1 = 0;
	int num2 = 0;
	int num3 = 0;
	cout << "请输入小猪A的体重:";
	cin >> num1;
	cout << "请输入小猪B的体重:";
	cin >> num2;
	cout << "请输入小猪C的体重:";
	cin >> num3;

	// 2. 判断哪只小猪最重
	if (num1 > num2) // A 比 B 重
	{
		if (num1 > num3) // A 比 C 重
		{
			cout << "最重的小猪是A" << endl;
		}
		else // C 比 A 重
		{
			cout << "最重的小猪是C" << endl;
		}
	}
	else // B 比 A 重
	{
		if (num2 > num3) // B 比 C 重
		{
			cout << "最重的小猪是B" << endl;
		}
		else // C 比 B 重
		{
			cout << "最重的小猪是C" << endl;
		}
	}

	system("pause");
	return 0;
}

三目运算符

作用:通过三目运算符实现简单的判断

语法:表达式 1 ? 表达式 2 : 表达式 3

对如上语法的解释:表达式 1 的值为真,执行表达式 2,并返回表达式 2 的结果;表达式 1 的值为假,执行表达式 3,并返回表达式 3 的结果;

案例:比较三个小猪的体重

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 输入三只小猪的体重 并找出体重最重的小猪
	// 1. 让用户输入三只小猪的体重
	int num1 = 0;
	int num2 = 0;
	int num3 = 0;
	cout << "请输入小猪A的体重:";
	cin >> num1;
	cout << "请输入小猪B的体重:";
	cin >> num2;
	cout << "请输入小猪C的体重:";
	cin >> num3;

	// 2. 判断哪只小猪最重
	cout << "最大的体重是:" << ((num1 > num2) ? (num1 > num3 ? num1 : num3) : (num2 > num3 ? num2 : num3)) << endl;

	system("pause");
	return 0;
}

switch 语句

作用:执行多条件分支的语句

语法

switch(表达式)
{
case 结果1:
	执行语句1;
case 结果2:
	执行语句2;
...
default:
	break;
}

案例:根据分数来给音乐作出对应的评价

注意:switch 语句中表达式的类型只能是整型或者字符型;case 里如果没有 break,那么程序会一直向下执行;与 if 语句相比,对于多条件判断时,优点:switch 的结构清晰,缺点:switch 不能判断区间

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 给你所听的音乐打分 范围为 1 ~ 10 
	int score = 0;
	cout << "请给你所听的音乐打分(范围为 1 ~ 10):";
	cin >> score;

	switch (score)
	{
	case 10:
	case 9:
	case 8:
		cout << "超好听!" << endl;
		break;
	case 7:
	case 6:
	case 5:
		cout << "还不错!" << endl;
		break;
	case 4:
	case 3:
		cout << "待提高!" << endl;
		break;
	case 2:
	case 1:
		cout << "不好听!" << endl;
		break;
	}

	system("pause");
	return 0;
}

循环结构

作用:满足循环条件,执行循环语句

语法:while(循环条件){循环语句}

注意:循环条件一直为 true 将造成死循环

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 输出 0 ~ +无穷大 之间的整数
	int num1 = 0;
	while (true)
	{
		cout << num1;
		num1++;
	}

	system("pause");
	return 0;
}

案例:输出 0 ~ 100 之间的整数

#include <iostream>
using namespace std;

int main() 
{
	// 自定义场景 输出 0 ~ 100 之间的整数
	int num1 = 1;
	while (num1 < 100)
	{
		cout << num1 << endl;
		num1++;
	}

	system("pause");
	return 0;
}

案例:猜数字

#include <iostream>
using namespace std;
// time系统时间头文件
#include <ctime>

int main() 
{
	// 自定义场景 猜数字
	// 添加随机数种子 利用当前系统时间生成随机数 防止每次随机数一样
	srand((unsigned int)time(NULL));

	// 1. 系统生成随机数
	int num = rand() % 100 + 1; // 生成 0 + 1 ~ 99 + 1 的随机数
	
	// 2. 猜数字
	int num1 = 0;
	while (num1 != num)
	{
		cout << "你猜的数字为:";
		cin >> num1;
		if (num1 > num)
		{
			cout << "你猜的数字偏大!" << endl;
		}
		else if (num1 < num)
		{
			cout << "你猜的数字偏小!" << endl;
		}
		else
		{
			cout << "猜对了!" << endl;
		}
	}

	system("pause");
	return 0;
}
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-31 15:16:03  更:2021-08-31 15:18:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 17:21:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码