c++while循环
1.while循环格式:while(循环条件){循环体;}循环中,我们通过控制变量来控制循环次数。循环3要素:循环变量的初值循环变量的判断循环变量的更新eg1:#include <iostream>using namespace std;int main(){int i = 1;while(i <= 10){cout <<"小人本住在苏州的城边..\t第"<&l
·
1.while循环
- 格式:
while(循环条件){
循环体;
}
- 循环中,我们通过控制变量来控制循环次数。
循环3要素:
循环变量的初值
循环变量的判断
循环变量的更新
eg1:
#include <iostream>
using namespace std;
int main()
{
int i = 1;
while(i <= 10)
{
cout <<"小人本住在苏州的城边..\t第"<<i<<"遍\n";
i++;
}
return 0;
}
输出:
小人本住在苏州的城边.. 第1遍
小人本住在苏州的城边.. 第2遍
小人本住在苏州的城边.. 第3遍
小人本住在苏州的城边.. 第4遍
小人本住在苏州的城边.. 第5遍
小人本住在苏州的城边.. 第6遍
小人本住在苏州的城边.. 第7遍
小人本住在苏州的城边.. 第8遍
小人本住在苏州的城边.. 第9遍
小人本住在苏州的城边.. 第10遍
eg2:
#include <iostream>
using namespace std;
int main()
{
//目的:使用循环计算1-100的和
int num=1;//循环变量的初值
int sum=0;
while(num<=100) //循环变量的判断
{
sum+=num;
num++;//循环变量的更新
}
cout<<sum<<endl;
return 0;
}
eg3
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
//目的:输入密码,3次都输入错误退出登录
int i=1;
string password;
while(i<=3)
{
cout<<"请输入密码:"<<endl;
cin>>password;
if(password!="123456"&&i==3)
{
cout<<"3次密码输入错误,系统强制退出"<<endl;
exit(0);//0是错误码
}
else if(password=="123456")
{
break;
}
i++;
}
cout<<"登陆成功!"<<endl;
return 0;
}
习题:
1.
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int k=2;
int i=0;
while(k=1)
{
k=k-1;
cout<<"第"<<++i<<"次循环"<<endl;
}
return 0;
}
这是个死循环,因为 k=1
是赋值运算,返回值是1,就会执行 while(1),是个死循环。
2.判断一下语句输出是:
int n=0;
while(n++<=2);
cout<<n;
答案是4.
分析:n++<=2,所以n最后一次进入的时候n=2,之后再执行n++,即n=3;
别忘了最后跳出循环的时候还要进行一次判断,再执行一次n++<=2语句,此时n=3,不满足条件,但是还是要执行++语句,即n=n+1=4。
例子:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
//使用循环模拟拳皇对战
int hp1=100;
int hp2=100;
int attack1=0;
int attack2=0;
int randNum;
srand(time(NULL));//更新随机种子
while(hp1>=0&&hp2>=0)
{
//玩家出招,可以采用随机数是奇数还是偶数决定谁先攻击
randNum=rand();
if(randNum % 2==1)
{
//随机产生5到15的随机数
attack1=(int)(5 + 10 *rand()/(RAND_MAX+1));
attack2=(int)(5 + 10 *rand()/(RAND_MAX+1));
hp2-=attack1;
hp1-=attack2;
}
else
{
attack2=(int)(5 + 10 *rand()/(RAND_MAX+1));
attack1=(int)(5 + 10 *rand()/(RAND_MAX+1));
hp1-=attack2;
hp2-=attack1;
}
}
cout<<"玩家1:"<<hp1<<endl;
cout<<"玩家2:"<<hp2<<endl;
return 0;
}
更多推荐
已为社区贡献7条内容
所有评论(0)