将值(并求解其总和)放入数组中

Putting values (and solving for its sum) in an array

本文关键字:数组 将值      更新时间:2023-10-16

我有这段代码,它的工作是询问用户是否要在数组中输入多少元素 - 然后用户输入他们想要的元素 - 元素是整数 - 然后程序求解输入数字的总和。

代码如下:

#include <iostream>
using namespace std;
int main()
{
int arr[20], i, n, sum=0;
cout<<"How many elements you want to enter?: ";
cin>>n;
cout<<"Enter any "<<n<<" elements in Array: ";
for(i=0;i<n;i++)
cout<<"How many elements you want to enter?: ";
cin>>n;
cout<<"Enter any "<<n<<" elements in Array: ";
for(i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"Sum of all Elements are: ";
for(i=0;i<n;i++)
{
sum=sum+arr[i];
}
for(i=0;i<n;i++)
{
   cout<<sum;
   getch();
}

我似乎不起作用,程序也没有运行,所以我无法输入实际输出。

预期输出将是用户输入的所有元素(整数(的总和。

它必须是数组吗? 你可以用更简单的方式做到这一点,就像这样:

cout << "Enter number of elementsn"; 
cin >> n 
cout << "Please enter the elements n"
int temp = 0; 
int sum = 0;
for(int i = 0; i<n ; i++){
   cin >> temp; 
   sum+=temp;
} 
cout << "Sum is: " << sum << endl; 

您需要注意的一个薄,您没有将用户限制为最大数组大小..假设他/她说21,那么您将出现溢出,从而产生错误。

既然你使用的是C++,我建议你使用向量,或者使用我上面提到的简单方法。

基本建议:边走边设计,在每个阶段,使用打印输出来告诉您输入了哪些值。

cin >> n;
cout << "Please enter " << n << " values to sum: " << endl;
for(i=0;i<n;i++)
{
    cin >> arr[i];
    cout << "value #" << i << ": " << arr[i] << " entered." << endl;
}

基本上,只有当您确定程序可以输入初始数据时,您才希望进入下一阶段的处理。一次处理一个处理的每个阶段,并输出当前阶段是什么。这样可以更轻松地确定哪个处理阶段导致错误。一旦打印命令按预期工作,您可以稍后减少打印命令,但我建议将其保留在那里但已注释掉。有时,不正确的输入会导致再次错误,重新启用调试打印以告诉您发生了什么非常方便。

这是您的问题描述程序。它从用户那里输入你想要输入到数组中的元素数量,然后它接受元素并保存在数组中,然后计算数组元素的总和。

#include<iostream>
#include<conio.h>
using namespace std;
int main()
  {
   int arr[20],i,n,sum=0;
   cout<<"How many elements you want to enter: ";
   cin>>n;
   cout<<"Enter any "<<n<<" elements in Array: ";
   for(i=0;i<n;i++)
   {
   cin>>arr[i];
   }
   cout<<"Sum of all Elements are: " << endl;
   for(i=0;i<n;i++)
   {
    sum=sum+arr[i];
    cout << "sum of a[" << i << "] = " << sum << endl;
   }
  cout<< "the sum of all the elements (integers) that the user entered = " << sum;
  getch();
  return 0;
  }

现在这个程序给出了 a[i] 元素的信息总和,依此类推到循环的末尾。

显示输出或错误消息很有帮助。

尝试将 cin 转换为整数或浮点数:

cin>>arr[i];