C语言-->(七)while循环
知识点
• while循环
• do..while循环语句
• while循环和字符处理
• 循环使用需要注意的问题
=============================================
听着名字就知道,while和for循环有着类似的功能
1.思考:为什么有了for循环还需要while循环
2.while循环应用的场合
3.while循环结构
4.while循环运行逻辑
5.示例:
1)如何通过while循环输出10个*
while(条件表达式)
{
}
2) 练习:
输出[1-20]
3) 练习:
计算1-10的和
计算1-10乘积
6.while循环和for循环比较
while:不确定循环次数
for:确定循环次数
for(表达式1;表达式2;表达式3)
{
循环语句;
}
表达式1;
while(表达式2)
{
循环语句;
表达式3;
}
=============================================
do..while循环语句
do
{
循环语句;
}while(循环条件);
1.思考: 为什么还需要这种循环
解决:上车买票的问题,先上车后检票和先检票后上车
2.do..while循环结构
保证循环至少会被执行一次
3.循环运行逻辑
4.示例:
572
570 573
输出1-1000
练习:
猜数字游戏
1.出一个数字
2.用户输入一个数字
3.判断用户输入的数字和num是否一致
4.结束
5.如果错误,重复2和3的步骤
============================================
循环使用需要注意的问题
1.循环变量定义位置
for (int i = 0; i < 10; ++i)
//
int i ;
for (i = 0; i < 10; ++i)
2.各种死循环
for(i = 0;i < 10; i--)
for(i = 0; ;i++)
for(i = 0;i < 10;i++)
{
printf(“*“);
}
for(;;)
{
}
while(1)
{
}
3.循环结束时,循环变量的值
4.for循环后加;号
=============================================
while循环和字符处理
需求:如何不停的接收用户输入直到输入q
scanf("%c", &ch);
1.什么时候结束循环
当用户输入q
2.如何循环接收用户的输入
3.练习:
统计用户输入的数字字符的个数
4.问题:
输入n个字符,计算输入字符的个数
5.示例
统计大写字母的个数
练习:
统计用户输入中的大小写,数字的个数
=============================================
循环常见编程
1.计算n的m次方
2.计算n个数的阶乘
3.计算任意数的位数 9999 < < 65535
循环开始: num
循环结束: num == 0
循环增量: num /= 10
1 / 10 == 0 — 1
12 / 10 == 1 — 2
123 / 10 == 12 — 3
1234 / 10 == 123 — 4
练习:产生一个随机数,取出每个位上的数据并获取位数信息
============================================
三种结构的区别与联系:
1、联系:
for(循环初始条件表达式; 循环条件表达式; 循环增量表达式)
{
循环语句;
}
可以改写相同功能的while循环结构
循环初始条件表达式;
while(循环条件表达式)
{
循环语句;
循环增量表达式;
}
2、区别:
for 循环次数确定
while 循环次数不确定
do…while 循环次数不确定,保证循环最少执行一次