下面这个代码如果我想在其中插入一个while语句,使得数据可以循环多次输入,这个while语句应该加在哪?
#include
#include
using namespace std;
int main() {
int a=0 ;
int i = 0;
double sum = 0;
for (i = 0; i < 9999; i++) {
cin >>a;
if (a == 9999)
break;
else
sum = sum + a;
}
double con = sum / i;
printf("%.2f", con);
system("pause");
return 0;
}
你可以将整个代码块放在while循环内,并在循环开始前重置 sum 和 i 的值。这样,当用户输入 9999 时,会退出当前循环并回到循环开头,直到满足某些条件结束循环。以下是示例代码:
#include<iostream>
#include<stdio.h>
using namespace std;
int main() {
int a = 0;
int i = 0;
double sum = 0;
while (true) {
sum = 0;
i = 0;
while (i < 9999) {
cin >>a;
if (a == 9999) {
break;
}
sum = sum + a;
i++;
}
if (i == 0) {
break;
}
double con = sum / i;
printf("%.2f\n", con);
}
system("pause");
return 0;
}
在这个例子中,当用户输入 9999 时,内部循环会结束并计算平均值。如果用户想继续输入数据,则会重新进入内部循环,否则整个程序会结束。
该回答引用ChatGPT
您可以将数据输入部分的代码放入一个while循环中,使其可以多次输入数据。修改后的代码如下:
#include<iostream>
#include<stdio.h>
using namespace std;
int main() {
int a = 0;
int i = 0;
double sum = 0;
while (true) {
cin >> a;
if (a == 9999) {
break;
}
else {
sum += a;
i++;
}
}
double con = sum / i;
printf("%.2f", con);
system("pause");
return 0;
}
在这个代码中,while循环会一直运行直到输入了值为9999的数据。每次输入一个数据,就会将其加到sum中,并将i加1。当输入的数据为9999时,循环结束,计算平均值并输出。