C++的简单问题,任意给定n个整数,求这n个整数序列的和、最小值、最大值

题目描述
任意给定n个整数,求这n个整数序列的和、最小值、最大值
输入描述
输入一个整数n,代表接下来输入整数个数,n<=100,接着输入n个整数,整数用int表示即可。
输出描述
输出整数序列的和、最小值、最大值。用空格隔开,占一行
样例输入
2
1 2
样例输出3 1 2
#include<iostream>
using namespace std;
int main(){
int n,a,i,sum=0,min,max;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>a;
sum=sum+a;
if(i=1)
{
max=a,min=a;
}
if(i!=1&&max<a)
{
max=a;
}
if(i!=1&&min>a)
{
min=a;
}
cout<<sum<<" "<<max<<" "<<min;
return 0;
}
}
这是我的程序,为什么输出的结果都是最小值呢?

#include<iostream>
using namespace std;
int main(){
int n,a,i,sum=0,min=0,max=0;
cin>>n;
cout<<n<<endl;
for(i=1;i<=n;i++)
{
cin>>a;
sum+=a;
if(i==1)
{
max=a,min=a;
}else
{
if (a>max)
{
max=a;
}
if (a<min)
{
min=a;
}
}
}
cout<<sum<<" "<<max<<" "<<min<<endl;
system("pause");
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-21
cout<<sum<<" "<<max<<" "<<min;
return 0;

应该放for循环外面。追问

呃,谢谢,我把return 0放到for循环之外了,输出的不是最小值了,而是输出了六个值,还有什么错误

呃,谢谢,我把return 0放到for循环之外了,输出的不是最小值了,而是输出了六个值,还有什么错误

呃,谢谢,我把return 0放到for循环之外了,输出的不是最小值了,而是输出了六个值,还有什么错误

呃,谢谢,我把return 0放到for循环之外了,输出的不是最小值了,而是输出了六个值,还有什么错误

呃,谢谢,我把return 0放到for循环之外了,输出的不是最小值了,而是输出了六个值,还有什么错误

追答

cout<<sum<<" "<<max<<" "<<min;
return 0;

应该放for循环外面。

第2个回答  2019-09-11
#include <iostream>
using namespace std;
int main(){
int n, enter, number, sum=0, min=101, max=0;

for(cin>>n;n!=0;n--)
{
cin>>enter;
number = enter;
sum += number;
if(number < min){min = number;}
if(number > max){max = number;}

}
cout<<sum<<' '<<min<<' '<<max<<endl;

return 0;
}
相似回答