请教一个c++程序:分别从键盘输入三个整数:按下列条件输出

条件1:按从大到小输出条件2:按从小到大输出条件3:先输出最大值,再输出最小值... 条件1:按从大到小输出
条件2:按从小到大输出
条件3:先输出最大值,再输出最小值
展开
 我来答
文库群
2010-08-03
知道答主
回答量:20
采纳率:0%
帮助的人:18.7万
展开全部
#include<iostream>
#include<vector>//向量容器
#include<algorithm>
using namespace std;
#define N 3 //在本例中,输入3个数,如果想改变输入的数值可以在这里改变。
int main()
{
vector<int> veci;
int n;
cout<<"请输入第 "<<N<<" 个整数,请按空格或者Enter区分!"<<endl;
for(int i=0;i<N;i++)
{

cin>>n;
veci.push_back(n);
}
sort(veci.begin(),veci.end());//排序函数

cout<<"按从小到大输出"<<ends;
for(i=0;i<N;i++)
cout<<veci[i]<<ends;
cout<<endl;
cout<<"按从大到小输出"<<ends;
reverse(veci.begin(),veci.end());//逆序函数
for(i=0;i<N;i++)
cout<<veci[i]<<ends;
cout<<endl;
cout<<"输出最大值"<<ends;
cout<<veci[0]<<endl;
cout<<"输出最小值"<<ends;
cout<<veci[veci.size()-1];
cout<<endl;
}
/*两种方法,但上面那个在健硕性和理解上,比较直观点。怕你还不知道STL,所以我再简单的编写多了个下面的比较大小程序,希望对你有帮助。在vc++6.0我已经调试运行成功。*/
#include<iostream>
using namespace std;
void temp(int &a,int &b)
{
int temp;
temp=a;
a=b;
b=temp;
}
int main()
{
int a[3],min,max;
for(int i=0;i<3;i++)
cin>>a[i];
if(a[0]>a[1])
temp(a[0],a[1]);
if(a[1]>a[2])
temp(a[1],a[2]);
if(a[0]>a[1])
temp(a[0],a[1]);
cout<<"从小到大输出"<<ends;
for(i=0;i<3;i++)
cout<<a[i]<<ends;
cout<<endl;
cout<<"从大到小输出"<<ends;
for(i=2;i>=0;i--)
cout<<a[i]<<ends;
cout<<endl;
cout<<"最大值为 "<< a[2]<<endl;
cout<<"最小值为 "<< a[0]<<endl;
return 0;
}
希望我的解答对你有少许的帮助,如果不对的地方,还望见谅了···
ptlouhong
2010-08-03 · 超过17用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:33.9万
展开全部
#include <iostream>
using namespace std;
int main()
{
int a,b,c,temp;
cin>>a>>b>>c;
if(a<b)//以下三个if是a和b,a和c,b和c比较大小
{
temp=a;
a=b;
b=temp;
}
if(a<c)
{
temp=a;
a=c;
c=temp;
}
if(b<c)
{
temp=b;
b=c;
c=temp;
}
cout<<"从大到小:"<<a<<" "<<b<<" "<<c<<" "<<endl;
cout<<"从小到大:"<<c<<" "<<b<<" "<<a<<" "<<endl;
cout<<"最大:"<<a<<endl;
cout<<"最小:"<<c<<endl;
return 0;

}
这种问题很基础完全可以想的出来,自己练一下,基础是很重要的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我尚地
2010-08-03 · 超过20用户采纳过TA的回答
知道答主
回答量:212
采纳率:0%
帮助的人:52.7万
展开全部
#include <stdio.h>
void main()
{ int a,b,c,t;
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{t=a;
a=b;
b=t;}
if(a<c)
{t=a;
a=c;
c=t;}
if(b<c)
{t=b;
b=c;
c=t;}
printf("从大到小:%d,%d,%d\n",a,b,c);
printf("从小到大:%d,%d,%d\n",c,b,a);
printf("最大值:%d,最小值:%d\n",a,c);
}

输入: 32 3 5
结果: 从大到小:32,5,3
从小到大:3,5,32
最大值:32,最小值:3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zjljlj
2010-08-03 · TA获得超过595个赞
知道小有建树答主
回答量:332
采纳率:0%
帮助的人:220万
展开全部
#include<iostream>
using namespace std;
void main()
{
int a,b,c;
cout<<"输入三个数"<<endl;
cin>>a>>b>>c;
int max=a,min=a;
if(max<b)
max=b;
if(max<c)
max=c;
if(min>b)
min=b;
if(min>c)
min=c;
int center;
if(max==a)
{
if(min==b)
center=c;
else
center=b;
}
else if(max==b)
{
if(min==a)
center=c;
else
center=b;
}
else
{
if(min==b)
center=a;
else
center=b;
}
cout<<"1:条件1,2:条件2,3:条件3"<<endl;
int tiaojian;
cin>>tiaojian;
if(tiaojian==1)
{
cout<<max<<","<<center<<","<<min<<endl;
}
else if(tiaojian==2)
{
cout<<min<<","<<center<<","<<max<<endl;
}
else
{
cout<<max<<","<<min<<endl;
}
}

自己改进 完善
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nanhay
2010-08-03 · TA获得超过1173个赞
知道小有建树答主
回答量:824
采纳率:0%
帮助的人:1003万
展开全部
#include<stdio.h>
int main()
{
int n=3,num,a[3];
while (n--)
{
scanf("%d",&num);
if (n==2)
a[0]=a[2]=num;
if (a[0]<num)
{
a[1]=a[0];
a[0]=num;
}
if (a[2]>num)
{
a[1]=a[2];
a[2]=num;
}
}
printf("大-->小输出:%4d%4d%4d\n",a[0],a[1],a[2]);
printf("小-->大输出:%4d%4d%4d\n",a[2],a[1],a[0]);
printf("最大-->最小:%4d%4d\n",a[0],a[2]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式