c语言用if函数怎么排列任意输出三个数的大小?
发布网友
发布时间:2022-05-05 04:31
我来回答
共3个回答
热心网友
时间:2023-10-09 19:09
思路:如果利用if进行三个数a,b,b的排序,则先利用if判断a和b的大小,把小数赋值给a大数赋值给b,再利用if判断c和b的大小,把小数赋值给b大数赋值给c,则c就是最大值,最后比较a和b的大小,把小数赋值给a大数赋值给b,则a就是最小数,b是中间值,输出a,b,c就是排序后数。
参考代码:
#include <stdio.h>
int main()
{
int a,b,c,t;
scanf("%d%d%d",&a,&b,&c);
if(a>b)//前判断a和b的大小
{t=b;b=a;a=t;}
if(b>c)//再判断b和c的大小
{t=b;b=c;c=t;}
if(a>b)//最后判断a和b的大小
{t=a;a=b;b=t;}
printf("%d<%d<%d",a,b,c);
return 0;
}
/*
输出:
5 1 9
1<5<9
*/
热心网友
时间:2023-10-09 19:09
#include <stdio.h>
int main()
{
int a,b,c,t;
printf("请输入三个数据");
scanf("%d%d%d",&a,&b,&c);
if(a>b)//前两个先比,大的放到第二个
{t=b;b=a;a=t;}
if(b>c)//后两个再比,大的放到第三个,结合第一次比较,三个中最大的在第三个
{t=b;b=c;c=t;}
if(a>b)//最后再比较前两个,大的放到第二个,最小的在第一个
{t=a;a=b;b=t;}
printf("%d>%d>%d",a,b,c);
}
热心网友
时间:2023-10-09 19:09
#include <stdio.h>
int main()
{
int a,b,c;
printf("请输入三个数据\n");
scanf("%d%d%d",&a,&b,&c);
if(a >= b)
{
if(a >= c)
{
printf("%d\t",a);
if(b >= c)
{
printf("%d\t",b);
printf("%d\n",c);
}
else
{
printf("%d\t",c);
printf("%d\n",b);
}
}
else
{
printf("%d\t",c);
if(a >= b)
{
printf("%d\t",a);
printf("%d\n",b);
}
else
{
printf("%d\t",b);
printf("%d\n",a);
}
}
}
else if(a >= c)
{
printf("%d\t",b);
printf("%d\t",a);
printf("%d\n",c);
}
else
{
printf("%d\t",b);
printf("%d\t",c);
printf("%d\n",a);
}
return 0;
}
这里是按从大到小排列,如果从小到大就把“>”改成“<”即可(如果用到for循环就更简单了,这里的代码只是纯if语句)