C++;当问题 我在C++中有while循环问题。 我写这段代码: #include <iostream.h> main () { int a, av = 0; cout << "Enter a number: "; cin >> a; for (int i = 1; i <= a; i++) { while (av == 1) { cout << "abc" << a / i; if (a % i == 0) { av = 1; } } } } #包括 主要(){ int a,av=0; cout>a; 对于(int i=1;i
它应该是C++;当问题 我在C++中有while循环问题。 我写这段代码: #include <iostream.h> main () { int a, av = 0; cout << "Enter a number: "; cin >> a; for (int i = 1; i <= a; i++) { while (av == 1) { cout << "abc" << a / i; if (a % i == 0) { av = 1; } } } } #包括 主要(){ int a,av=0; cout>a; 对于(int i=1;i,c++,C++,它应该是而(av==0)才能进入内部循环。您从未将av初始化为1。请尝试将第一个语句更改为: int a, av = 1; 在开始时,av等于0。它的值永远不会更改,因为从未输入while循环(因为av不等于1)当你到达while循环时,avav为0,因此条件av==1始终为假。由于av=0,循环谓词为av==1,while循环将永远不会被输入。两种情况下,abc将不会被打印: 1:用户输入0作为“a”的输入-for循环在第一个循环中退出,因为我永远不会是0 2:av的初始值为0,,而(av=
而(av==0)
才能进入内部循环。您从未将av
初始化为1。请尝试将第一个语句更改为:
int a, av = 1;
在开始时,
av
等于0。它的值永远不会更改,因为从未输入while循环(因为av不等于1)当你到达while循环时,avav
为0,因此条件av==1始终为假。由于av=0,循环谓词为av==1,while循环将永远不会被输入。两种情况下,abc将不会被打印:
1:用户输入0作为“a”的输入-for循环在第一个循环中退出,因为我永远不会是0
2:av的初始值为0,,而(av==1)将永远不会为真,无论“for”循环运行了多少次
要打印abc:
初始设置av==1或确保用户始终输入一个大于0的数字
或
更改代码如下:
while(av==1){
cout.标准库标题名为
(no.h
)。标准库实体位于std
命名空间中,并且必须经过限定(例如std::cout
,std::cin
等)。