(七十二)while循环

while循环是没有初始化和循环更新的for循环。就类似

for(没有第一部分; 判断语句; 没有循环更新){执行语句};

因此,while只能进行判断,符合判断,则执行循环,不符合,则结束循环。

 

代码:

//输出遇到空字符为止
#include<iostream>

int main()
{
	using namespace std;
	string a;
	a[0]= char('z');	//初始a[0]为小写的字母z
	while (a[0] != '\0')	//遇见空字符为止,注意,空字符ASCII编码为0
	{
		cout << a[0];	//输出a[0],不换行
		a[0] = a[0] - 1;	//a[0]每次都比之前在ASCII编码少1、这行实际上就相当于循环更新
	}
	system("Pause");
	return 0;
}

输出:

 

 

(以上是图片,如果看不到,说明不支持显示图片)

 

大概情况就是从zyx这样一直往下输出,输出各种字符。之所以发图片,是因为赋值到word里面出现换页了(可能有换行符还有其他的吧)

 

结论:

①while的用法和for很相近,判断语句同样是判断表达式的值是flase还是true,只不过可以认为,是将循环更新放到循环体之中了。

 

for、while和分号:

在for和while的循环语句中,格式是这样的:

for/while   (判断语句,for还带初始化和循环更新语句) ① {循环体} ②

 

需要注意的是:

在①的位置,不能加入分号,如果加入,循环会这样认为,例如:

for(判断)  空语句  ;{循环体}

他会认为,判断成立,于是执行空语句,又因为空语句不可能更新循环,因此,会无限执行判断语句,进入一个死循环。

如果判断不成立,那么不执行空语句,执行一次循环体,然后执行循环体后面的语句。

 

这样的话,就起不到循环作用了。

 

在②的位置,可以加入分号,但也可以不加入。因为在大括号里面,最后一行语句应该加入分号,这样的话,假如执行完循环,多一个分号,相当于多一个空语句,并没有什么影响。

 

结论:

小括号() 和 大括号{}之间,一般情况下,禁止加入分号。

注:(七十三)中有利用空语句进行循环的一种巧妙办法

 

 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值