各位求解答,(C++初学者)
while循环中,break要放到哪个{ }里 如图
看的视频里教的是放到30行的else{ }里,我试了下放到32行else{ }外就不行,但它也在while循环的{ }里呀(如图)
求解答(手机拍有屏纹,我尽力了(。ì _ í。) )
break放在外面要表达的意思是不管你猜对还是猜大猜小,只要我第一次执行完毕if else语句就中止循环,这个是猜一次就中止循环。
而放在else的那个括号里面,则只有满足那个else条件时才会执行break语句中止while循环,这个是猜对了才中止循环,如果没猜对一直循环。
根据你这个小程序的意思,他是想要你在猜对了以后才中止循环,而不是猜了一次之后就中止循环,所以你应该放在else那个大括号里。
放在第30行,猜对了之后才break跳出循环,否则还要继续猜下去的
你放在32行,等于while循环白写了,猜一次就break结束了
break是跳出循环,
放到32行不行?报错了?
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main(){
srand((unsigned int)time(NULL));
int num = rand() % 100 + 1;
int val = 0;
while(1){
cout << "请输入您要猜的数字:";
cin >> val;
if (val > num){
cout <<"猜大了"<<endl;
}
else if (val < num){
cout<<"猜小了"<<endl;
}
else {
cout<<"猜对了!"<<endl;
break;
}
}
}
看到你这个问题,你对 break 或 while 循环不时很熟悉
while 循环是干嘛的?是条件符合的情况下,再执行一次循环体
break 是干嘛的?是循环体中经过一定的逻辑后,你想要退出循环
ok。。。回归你这代码。。。
你的目的是什么?是猜对之后退出while 循环?
还是?不管猜对没有直接跳出?
ok。。。我相信你会了