我刚刚启动了C ++,我遇到了while
循环的困难。
以下是说明:
更改经典的Hello World程序:
这样程序打印{Hello(1)}次“HelloWorld”字符串(在不同的行上),
用户输入N
。
提示:
N
获取cin >>
。N
循环来处理重复。WHILE
与cout <<
或"\ n"
进行反弹。这是我的代码;我不知道在while循环中输入什么来打印Hello World字符串endl
次。
N
答案 0 :(得分:3)
以下列方式考虑一下:
while(condition){
BODY;
}
继续执行BODY
,直到condition
为真
举个例子,当下雨时,你通常会在下雨时打开雨伞。当条件下雨时不再是真的你把伞放了,对吗?
while(isRaining){
holdUmbrella();
}
closeUmbrella();
你的案件的条件是,继续写作,直到我写完&#34; Hello World&#34;小于 N
次。所以我的想法是计算你打印的次数。为此,您可以使用每次打印时递增的计数器。 while的条件检查计数器不是N
的更大。以下内容应该有效。
int counter=0;
while(counter<N)
{
cout << "Hello World!" << endl;
//remember that you printed one time more. increment counter
counter=counter+1;
}
答案 1 :(得分:2)
&#34; while&#34;当()中的测试为真时,指令基本上将一段代码执行到{}。
while(TEST)
{
// any code you want to repeat while TEST is true
}
当你的节目点击&#34;而#34;它将评估TEST的指令,如果TEST为真,那么它将运行包含在括号中的代码。一旦程序到达括号中的最后一条指令,它将返回到&#34;的顶部。并再次评估TEST。只要TEST为真,这个过程就会重复。
在你的例子中,你希望代码执行10次,这样你就可以创建一个计数器变量,并在每次打印文本时增加一个#34; hello world&#34;像这样:
int count = 0;
while(count < n)// this is true while count is inferior to n
{
printf("hello world!");
count++; // count = count + 1;
// count will progressively take the value 0,1,2,3,4,5,6,7,8,9 and 10
// since 10 is equal to n (10) then the TEST (10 < 10) will return false and the "while" instruction will stop there
// printing will not happen for count == n (10) but it will for 0, for a total of n times
}
答案 2 :(得分:0)
while 循环是一个控制流语句,它允许根据给定的布尔条件重复执行代码.while循环可以被认为是重复的if语句。
语法: while(condition){ execute this }
while循环中的代码执行直到条件为真。
<强>流程图:强>
在上面的问题中,既然你想控制掉Hello World! N 次,while(N--)
将有效。
示例代码:
#include <iostream>
using namespace std;
int main() {
int N;
cin>>N;
while(N--)
cout<<"Hello World!\n";
return 0;
}
注意: 语句cout<<"Hello World!\n"
执行到 N&gt; = 0 。