C语言编写程序,将任意3个数按照从小到大的顺序排序。

如题所述

#include<stdio.h>
int main()
{
int i,j,m;
double temp;
double a[3];
for(m=0;m<3;m++) //输入三个数
{
scanf("%lf",&a[m]);
}
for(i=0;i<3;i++) //完成排序
{
for(j=i;j<3;j++)
{
if(a[j]<a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
printf("%lf\t",a[i]);//打印结果
}
printf("\n");
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-02
才三个数啊,我还可以给你n个数的:
#include<stdio.h>
int main(void)
{
int a[80],t=0,z,n,i;
printf("Input n:\n");
scanf("%d",&n);
printf("输入n个整数:\n");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=1;i<n;i++)
if(a[t]>a[i])
t=i;
z=a[0];
a[0]=a[t];
a[t]=z;

for(i=0;i<n;i++)
if(a[t]<a[i])
t=i;
z=a[n-1];
a[n-1]=a[t];
a[t]=z;
for(i=0;i<n;i++)
printf("%3d",a[i]);
return 0;
}
第2个回答  2012-05-02
楼上的正确,调试过了。