C++ 汇总用户输入数据
我试图将用户输入的数字相加,但它返回了一些超大的数字。如果有人能帮忙,那就太好了,谢谢C++ 汇总用户输入数据,c++,C++,我试图将用户输入的数字相加,但它返回了一些超大的数字。如果有人能帮忙,那就太好了,谢谢 #include<iostream> using namespace std; int main() { int a; int attemptno = 1; int str[a]; //array int x; for(int a=0;a<10;a++){ cout << "Person " << attem
#include<iostream>
using namespace std;
int main()
{
int a;
int attemptno = 1;
int str[a]; //array
int x;
for(int a=0;a<10;a++){
cout << "Person " << attemptno++ << ", how many pancakes did you have for breakfast? " << endl;
cin >> x;
}
int sum;
sum = 0;
sum = sum + str[a];
cout << "Total number of pancakes eaten is: " << sum << endl;
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
int attemptno=1;
int str[a];//数组
int x;
对于(int a=0;a您从未设置str
的元素,因此'str'未初始化
sum = sum + str[a];
是未定义的行为。str[]
的元素从未初始化,而且a
的元素在初始化之前读取其内容的行为也未定义。要生成程序,您必须有一个非常灵活的编译器
为什么不使用
std::vector<int> str(a);
要计算总数。您需要根据数组值计算总和:
sum=sum+str[a];
,但是在获取输入值时,您不需要填充数组。实际上,在这种情况下,您不需要数组来计算sum。您可以在获取输入值时计算sum,如下所示:
int main() {
int a;
int attemptno = 1;
int x;
int sum = 0;
for(int a=0;a<10;a++){
cout << "Person " << attemptno++ << ", how many pancakes did you have for breakfast? " << endl;
cin >> x;
sum = sum + x;
}
cout << "Total number of pancakes eaten is: " << sum << endl;
return 0;
}
intmain(){
INTA;
int attemptno=1;
int x;
整数和=0;
对于(int a=0;a您可能打算这样做:
#include<iostream>
using namespace std;
int main()
{
// int a; // << deleted
int attemptno = 1;
int str[10]; // << changed array of 10 elements
int x;
for (int a = 0; a<10; a++) {
cout << "Person " << attemptno++ << ", how many pancakes did you have for breakfast? " << endl;
cin >> x;
str[a] = x; // << added
}
int sum = 0;
for (int a = 0; a < 10; a++) // << added for loop
{
sum = sum + str[a];
}
cout << "Total number of pancakes eaten is: " << sum << endl;
return 0;
}
#包括
使用名称空间std;
int main()
{
这个代码的值是什么?< <代码> >数组的大小是多少?你还记得一个数组大小的最大索引<代码> >代码>吗?最后,你知道C++没有?我也建议你尝试。不,代码> < <代码>不等于<代码> 10代码>代码。代码中的哪里?说吧?你需要的是一本学习编程的好书:他甚至不初始化<代码> A<代码> MichaelWalz:真的,在<<代码> < <代码> >中被代码< int=0 < /代码>欺骗。什么事情可以做得更优雅?用C++的“LG29”作为Bathsheba答案的建议。
#include<iostream>
using namespace std;
int main()
{
// int a; // << deleted
int attemptno = 1;
int str[10]; // << changed array of 10 elements
int x;
for (int a = 0; a<10; a++) {
cout << "Person " << attemptno++ << ", how many pancakes did you have for breakfast? " << endl;
cin >> x;
str[a] = x; // << added
}
int sum = 0;
for (int a = 0; a < 10; a++) // << added for loop
{
sum = sum + str[a];
}
cout << "Total number of pancakes eaten is: " << sum << endl;
return 0;
}