在C语言中怎么写出让编译出来的结果是写出任意三个数,让他识别出依次的大小?
答案:5 信息版本:手机版
解决时间 2020-04-03 12:11
已解决
2020-04-02 16:05
在C语言中怎么写出让编译出来的结果是写出任意三个数,让他识别出依次的大小?
全部回答
1楼
2020-04-02 22:00
#includemain(){int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a
2楼
2020-04-02 20:47
一个简单程序,就是仅利用if语句就能解决,方法有多种,这只是其中一个。
#include
main()
{
int a,b,c,max,min;
printf("请输入任意三个数:\n");
scanf("%d%d%d",&a,&b,&c);
printf("由大到小顺序为:\n");
if(a>b&&a>c)
{
if(b>c)
printf("%d,%d,%d\n",a,b,c);
if(c>b)
printf("%d,%d,%d\n",a,c,b);
}
else if(b>a&&b>c)
{
if(a>c)
printf("%d,%d,%d\n",b,a,c);
if(a
printf("%d,%d,%d\n",b,c,a);
}
else if(c>a&&c>b)
{
if(a>b)
printf("%d,%d,%d\n",c,a,b);
if(b>a)
printf("%d,%d,%d\n",c,b,a);
}
}
3楼
2020-04-02 19:57
你需要一个排序算法,具体程序如下,这里采用的是冒泡算法,也可以用其他算法。
#include
void bubble(int *,int);
main(){
int a,b,c;
int result[3];
int i;
printf("请输入三个整数,以空格分开:");
scanf("%d %d %d",&a,&b,&c);
result[0]=a;result[1]=b;result[2]=c;
bubble(result,3);
for(i=0;i<3;i++)
{
printf("%d ",result[i]);
}
printf("\n");
}
void bubble(int *a,int n)
{
int i,j,temp;
for(i=0;i
for(j=i+1;j
if(a[i]>a[j]) {
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
4楼
2020-04-02 18:38
仅三个数 循环肯定是浪费
直接把a交换成最大的 b交换成次大的ok
main(){
float a,b,c,t;
scanf("%f %f %f",&a,&b,&c);
if(a
if(a
if(b
printf("%f %f %f",a,b,c);
}
5楼
2020-04-02 17:08