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++学习第五天-程序流程结构(part 2) -> 正文阅读

[数据结构与算法]C++学习第五天-程序流程结构(part 2)

循环结构

while循环语句

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

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

解释:只要循环条件的结果为真,就执行循环语句

#include<iostream>

using namespace std;

int main8()
{
	//while循环
	//在屏幕中打印0~9这10个数字
	int num = 0;
	//注意事项:在写循环时一定要避免死循环的出现
	while (num <= 9)
	{
		cout << num << endl;
		num++;
	}

	system("pause");
	return 0;
}

案例分析

#include<iostream>

using namespace std;

#include<ctime>

int main9()
{
	//添加随机数种子,作用是利用当前系统时间生成随机数,防止每次生成的随机数都一样
	srand((unsigned int) time (NULL));

	//1.系统生成随机数
	int num = rand() % 100 + 1; //1~100
	//cout << num << endl;

	//2.玩家进行猜测
	int val = 0; //玩家输入的数据
	cout << "请输入您猜测的数据:" << endl;
	while (1)
	{
		cin >> val;

		//3.判断玩家的猜测
		if (val > num)
		{
			cout << "猜测过大" << endl;
		}
		else if (val < num)
		{
			cout << "猜测过小" << endl;
		}
		else
		{
			cout << "恭喜您猜对了" << endl;
			break; //利用break关键字退出当前循环
		}
	}

	//猜对 退出游戏
	//猜错 提示猜的结果 过大或者过小 重新返回第二步

	system("pause");
	return 0;
}

dowhile循环语句

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

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

注意:与while的区别在于do...while...会先执行一次循环语句,再判断循环条件

#include<iostream>

using namespace std;

int main10()
{
	//dowhile循环
	//在屏幕中打印0~9这10个数字
	int num = 0;
	do
	{
		cout << num << endl;
		num++;
	} while (num <= 9);

	//dowhile循环和while循环的区别在于dowhile会先执行一次循环语句

	system("pause");
	return 0;
}

dowhile水仙花数

#include<iostream>

using namespace std;

int main11()
{
	//水仙花数
	//水仙花数是指一个三位数,它的每个位上的数字的三次幂之和等于它本身
	//例如:1^3 + 5^3 + 3^3 = 153

	//1.将所有三位数进行输出(100~999)
	int num = 100;
	do
	{
		//2.在所有三位数中找到水仙花数
		//判断:个位^3 + 十位^3 + 百位^3 = 本身
		int a = 0;
		int b = 0;
		int c = 0;
		
		a = num % 10;
		b = num / 10 % 10;
		c = num / 100;

		if ((a*a*a + b*b*b + c*c*c) == num)
		{
			cout << num << endl;
		}

		num++;
	} while (num <= 999);

	system("pause");
	return 0;
}

for循环语句

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

语法:for (起始表达式;条件表达式;末尾循环体) {循环语句};

#include<iostream>

using namespace std;

int main12()
{
	//for循环
	//在屏幕中打印0~9这10个数字
	for (int i = 0; i <= 9; i++)
	{
		cout << i << endl;
	}

	system("pause");
	return 0;
}

敲桌子

#include<iostream>

using namespace std;

int main13()
{
	//敲桌子
	//从1开始数到数字100,如果数字个位含有7,或者数字十位含有7,或者该数是7的倍数,我们打印敲桌子,其余数字直接输出
	for (int i = 1; i <= 100; i++)
	{
		if (i % 7 == 0 || i / 10 == 7 || i % 10 == 7) //特殊数字
		{
			cout << "敲桌子" << endl;
		}
		else
		{
			cout << i << endl;
		}	
	}

	system("pause");
	return 0;
}

嵌套循环

作用:在循环中再嵌套一层循环,解决一些实际问题

#include<iostream>

using namespace std;

int main14()
{
	//打印一行星图

	//外层执行一次,内层执行一周
	//外层循环
	for (int i = 0; i <= 9; i++) {
		//内层循环
		for (int j = 0; j <= 9; j++)
		{
			cout << "* ";
		}
		cout << endl;
	}
	
	system("pause");
	return 0;
}

案例:乘法口诀表

#include<iostream>

using namespace std;

int main15()
{
	//乘法口诀表
	//外层循环
	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语句

作用:跳出选择结构或者循环结构

break使用时机:出现在switch语句中,作用是终止case并跳出switch

出现在循环语句中,作用是跳出当前的循环语句

出现在嵌套语句中,跳出最近的内存循环语句

#include<iostream>

using namespace std;

int main16()
{
	//跳转语句break
	//出现在switch语句中,作用是终止case并跳出switch
	cout << "请选择副本难度" << endl;
	cout << "1.普通" << endl;
	cout << "2.中等" << endl;
	cout << "3.困难" << endl;

	int select = 0;
	cin >> select;

	switch (select)
	{
	case 1:
		cout << "您选择的是普通难度" << endl;
		break;
	case 2:
		cout << "您选择的是中等难度" << endl;
		break;
	case 3:
		cout << "您选择的是困难难度" << endl;
		break;
	default:
		break;
	}

	//出现在循环语句中,作用是跳出当前的循环语句
	for (int i = 0; i <= 9; i++)
	{
		//如果i等于5,退出循环,不再打印
		if (i == 5)
		{
			break; //退出循环
		}
		cout << i << endl;
	}

	//出现在嵌套语句中,跳出最近的内存循环语句
	for (int i = 0; i <= 9; i++)
	{
		for (int j = 0; j <= 9; j++)
		{
			//如果j等于5,退出循环,不再打印
			if (j == 5)
			{
				break;
			}
			cout << "* ";
		}
		cout << endl;
	}


	system("pause");
	return 0;
}

continue语句

作用:在循环语句中,跳过本次循环中余下尚未执行的语句,继续下一次循环

#include<iostream>

using namespace std;

int main17()
{
	//跳转语句continue
	for (int i = 0; i < 100; i++)
	{
		//如果是奇数就输出,偶数不输出
		if (i % 2 == 0)
		{
			continue; //可以筛选条件,执行到此就不再向下执行,执行下一次循环
			//break; 直接跳出循环
		}
		cout << i << endl;
	}

	system("pause");
	return 0;
}

goto语句

作用:可以无条件跳转语句

语法:goto标记

解释:如果标记的名称存在,执行到goto语句时,会跳转到标记的位置

#include<iostream>

using namespace std;

int main18()
{
	//跳转语句goto
	cout << "1.xxxxx" << endl;

	cout << "2.xxxxx" << endl;

	goto FLAG;

	cout << "3.xxxxx" << endl;

	cout << "4.xxxxx" << endl;

	FLAG:
	cout << "5.xxxxx" << endl;


	system("pause");
	return 0;
}

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-11-25 08:22:35  更:2021-11-25 08:25:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年2日历 -2025/2/23 1:24:12-

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