从键盘输入十个数,输出最大值和最小值。为什么我的程序只能输出最大值,而最小值显示-858993460
#include<iostream.h>intmain(){inti,a,max,min;cout<<"输入10个数:";max=min=a;for(i=1;i<=10;...
#include<iostream.h>
int main()
{
int i,a,max,min;
cout<<"输入10个数:";
max=min=a;
for(i=1;i<=10;i++)
{
cin>>a;
if(max<a)max=a;
if(min>a)min=a;
}
cout<<"max ="<<max<<endl;
cout<<"min ="<<min<<endl;
} 展开
int main()
{
int i,a,max,min;
cout<<"输入10个数:";
max=min=a;
for(i=1;i<=10;i++)
{
cin>>a;
if(max<a)max=a;
if(min>a)min=a;
}
cout<<"max ="<<max<<endl;
cout<<"min ="<<min<<endl;
} 展开
2个回答
展开全部
#include<iostream.h>
int main()
{
int i,a,max,min;
cout<<"输入10个数:";
cin>>a;
max=min=a;
for(i=1;i<=9;i++)
{
cin>>a;
if(max<a)max=a;
if(min>a)min=a;
}
cout<<"max ="<<max<<endl;
cout<<"min ="<<min<<endl;
}
这样就可以了。。。因为你在输入数据之前,没有给a赋值,而是由系统随机给它赋了个值,这个正好是-858993460,因为你输入的所有值都比这个数要大,所以if(min>a)min=a;条件一直不成立,因而min=a;不会执行。。。
还有什么不明白的吗?
可以继续提问~~
int main()
{
int i,a,max,min;
cout<<"输入10个数:";
cin>>a;
max=min=a;
for(i=1;i<=9;i++)
{
cin>>a;
if(max<a)max=a;
if(min>a)min=a;
}
cout<<"max ="<<max<<endl;
cout<<"min ="<<min<<endl;
}
这样就可以了。。。因为你在输入数据之前,没有给a赋值,而是由系统随机给它赋了个值,这个正好是-858993460,因为你输入的所有值都比这个数要大,所以if(min>a)min=a;条件一直不成立,因而min=a;不会执行。。。
还有什么不明白的吗?
可以继续提问~~
追问
那这句话为什么要改成for(i=1;i<=9;i++)?
追答
因为我在前面进行了一次输入~~~
总共有10个数,之前输入了一个,所以剩下9个。。
还有什么不明白的吗?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询