C++ C++;当循环未启动时
因此,我们的想法是向用户询问数组中的每个元素,但在第一个问题给出输入后(其中询问元素的数量),什么都不会发生。不知道为什么C++ C++;当循环未启动时,c++,while-loop,C++,While Loop,因此,我们的想法是向用户询问数组中的每个元素,但在第一个问题给出输入后(其中询问元素的数量),什么都不会发生。不知道为什么 #include <iostream> int main() { int numGrades; tryAgain: std::cout << "Enter number of grades" << std::endl; std::cin >> numGrades
#include <iostream>
int main()
{
int numGrades;
tryAgain:
std::cout << "Enter number of grades" << std::endl;
std::cin >> numGrades;
if (numGrades > 30)
{
std::cout << "Please enter a valid number of grades" << std::endl;
goto tryAgain;
}
int grades[numGrades - 1];
int gradeCount = 0;
while (gradeCount < numGrades);
{
std::cout << "Enter grade number" << gradeCount + 1 << ":";
std::cin >> grades[gradeCount];
++ gradeCount;
}
std::cout << grades;
return 0;
}
#包括
int main()
{
国际努姆格拉德斯;
tryAgain:
std::cout numGrades;
如果(numGrades>30)
{
std::cout构造while(true);
表示while(true){}
(即无限循环)
所以,当你写作的时候
while (gradeCount < numGrades);
{
// ...
}
while(成绩计数
您具有以下功能:
while (gradeCount < numGrades)
{
}
{
// ...
}
while(成绩计数
如果gradeCount
请查看此代码,几乎没有问题。一个是分号打开,而另一个是打印grades
的grades
和内存分配。内存静态分配必须需要一个常量。这里添加了一个动态分配作为t他的分数不是固定不变的……代码如下:
#include <iostream>
int main()
{
int numGrades;
tryAgain:
std::cout << "Enter number of grades" << std::endl;
std::cin >> numGrades;
if (numGrades > 30)
{
std::cout << "Please enter a valid number of grades" << std::endl;
goto tryAgain;
}
int *grades = (int *)malloc(numGrades * sizeof(int)); //allocating dynamic memory
int gradeCount = 0;
while (gradeCount < numGrades)
{
std::cout << "Enter grade number" << gradeCount + 1 << ":";
std::cin >> grades[gradeCount];
++ gradeCount;
}
for(int i =0;i<numGrades;i++)
{
std::cout << grades[i] << std::endl;
}
free(grades);//releasing memory
return 0;
}
#包括
int main()
{
国际努姆格拉德斯;
tryAgain:
std::cout numGrades;
如果(numGrades>30)
{
std::cout您正在使用
while (gradeCount < numGrades);
while(成绩计数
在这一行的末尾有一个分号(;),这样下一行就不会执行,因为该条件始终为真,因为各个变量中没有增量或减量
简而言之,只需删除(;)
while(成绩计数 使用调试器。在while循环之后,看起来像分号;(在WHER()后面的分号可能是罪魁祸首。检查while(GealEntUnNoCuthes);删除分号<代码> int等级[编号1 ];在标准C++中不允许使用< /C> >,而使用<代码>向量等级(NoMeCube)。
并在执行此操作之前检查数字是否为负数。我建议您阅读有关“可变长度数组”(可能在此处:)。我们不知道编译器使用的是什么CptJohnMiller74,但这段代码可能在他这方面是可编译的。谢谢,是的,它可能因编译器而异。。。
while (gradeCount < numGrades)