#循环结构
##while循环
实现打印0~9这10个数字:
#include<iostream>
using namespace std;
int main()
{
//while循环
//在屏幕中打印0~9这10个数字
int num = 0;
//cout << num << endl;
//while()中填入循环条件
while (num < 10)
{
cout << num << endl;
num++;
}
system("pause");
return 0;
}
##do-while循环
实现打印0~9这10个数字:
#include<iostream>
using namespace std;
int main()
{
//do...while语句
//在屏幕中输出0到9这10个数字
int num = 0;
do
{
cout << num << endl;
num++;
} while (num < 10);
//do...while和while循环的区别在于do...while会先执行一次循环语句
/*while (num < 10)
{
cout << num << endl;
num++;
}*/
system("pause");
return 0;
}
##for循环
实现打印0~9这10个数字:
#include<iostream>
using namespace std;
int main()
{
//for循环
//从数字0 打印到 数字9
for (int i = 0; i < 10; i++)
{
cout << i << endl;
}
/*将上述循环具体化
int i = 0;
for (; ; )
{
if (i >= 10)
{
break;
}
cout << i << endl;
i++;
}*/
system("pause");
return 0;
}
##嵌套循环
实现星图的打印:
#include<iostream>
using namespace std;
int main()
{
//利用嵌套循环实现星图
//打印一行星图
// 外层执行一次,内层执行一圈
//外层循环
for (int i = 0; i < 10; i++)
{
//内层循环
for (int j = 0; j < 10; j++)
{
cout << "* ";
}
cout << endl;
}
system("pause");
return 0;
}
##循环结构相关的编程实例
1、利用while循环实现猜数字游戏。
#include<iostream>
using namespace std;
//time系统时间头文件包含
#include<ctime>
int main()
{
//添加随机数种子,作用是利用当前系统时间生成随机数,防止每次随机数都一样
srand((unsigned int)time(NULL));
//1、系统生产随机数
int num = rand() % 100 + 1; //rand()%100+1生成0+1~99+1的随机数
cout << num << endl;
//2、玩家进行猜测
int val = 0;
//3、判断玩家的猜测
while (1)
{
cin >> val;
//猜错 提示猜的结果 过大或者过小 重新返回第2步
if (val > num)
{
cout << "猜测过大" << endl;
}
else if (val < num)
{
cout << "猜测过小" << endl;
}
else
{
cout << "猜对了" << endl;
//猜对 退出游戏
break; //break跳出循环
}
}
system("pause");
return 0;
}
2、利用do-while循环实现从三位数字中找到水仙花数。
#include<iostream>
using namespace std;
int main()
{
//1、先打印所有的三位数字
int num = 100;
do {
//2、从所有三位数字中找到水仙花数
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 < 1000);
system("pause");
return 0;
}
3、 利用for循环实现敲桌子问题。
#include<iostream>
using namespace std;
int main()
{
//敲桌子案例
//1、先输出1~100数字
for (int i = 1; i <= 100; i++)
{
//2、从100个数字中找到特殊数字,打印“敲桌子”
//如果是7的倍数、各位有7,或者十位有7,打印敲桌子
if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7)//如果是特殊字符,打印敲桌子
{
cout << "敲桌子" << endl;
}
else //如果不是特殊字符,才打印数字
{
cout << i << endl;
}
}
system("pause");
return 0;
}
4、 利用循环嵌套实现打印输出乘法口诀表。
#include<iostream>
using namespace std;
int main()
{
//乘法口诀表
for (int i = 1; i < 10; i++)
{
for (int j = 1; j <=i; j++)
{
cout << i << " * " << j << " = "<<i * j << " ";
}
cout << endl;
}
system("pause");
return 0;
}