c语言编程c语言编程
问题描述:
输入三个实数,按数值大小由大到小的顺序输出这三个数。
答
#include <stdio.h>
int max(int *a, int *b)
{
int swp;
/*swap a <-> b.retain a > b-*/
if (*a < *b)
{
swp = *b;
*b = *a;
*a = swp;
}
return 0;
}
int main()
{
int Max = 0;
int Senior = 0;
int Minor = 0;
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
Max = a;
Senior = b;
Minor = c;
max(&Max, &Senior);
max(&Max, &Minor);
max(&Senior, &Minor);
printf("%d %d %d\r\n", Max, Senior, Minor);
return 0;
}
答
#include<stdio.h>
int main()
{
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if(a > b &&b > c){
printf("%d %d %d",a,b,c);
}else if(b >= a && a >= c){
printf("%d %d %d",b,a,c);
}else if(c >= a && a >= b){
printf("%d %d %d",c,a,b);
}else if(a >= c && c >= b){
printf("%d %d %d",a,c,b);
}else if(b >= c && c >= a){
printf("%d %d %d",b,c,a);
}else if(c >= b && b >= a){
printf("%d %d %d",c,b,a);
}
return 0;
}