编程:从键盘输入三个整数,分别赋给变量a,b,c,请按从小到大的顺序依次输出a,b,c(要求不改变a,b,c的值).

简单点写,我比较笨,谢谢

#include <stdio.h>
int main()
{
int a, b, c, d;
printf("请输入a,b,c的值:\n");
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
{
d = a;
a = b;
b = d;
}
else if(b>=c)
{
d = b;
b = c;
c = d;
}
printf("排序后:\n");
printf("%d %d %d\n",a,b,c);
return 0;

}追问

不是说不改变abc的值吗

追答

#include
int main()
{
int a,b,c,max,min;
printf("请输入a,b,c的值:\n");

scanf("%d %d %d",&a,&b,&c);
if(a>=b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
if(c>=max) max=c;
if(c<=min) min=c;
printf("排序后:\n");
printf("%d %d %d\n",min,a+b+c-min-max,max);
return 0;
}

请采纳

追问

你好聪明,不过在输入0开头的数之后就不行了==,怎么回事啊

追答

 

输入一个数字之后就有一个空格啊。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-10
最后不是让输出a.b,c嘛,干嘛要输出它们的值呢
#include <stdio.h>
int main()
{
int a, b, c;
printf("请输入a,b,c的值:\n");
scanf("%d%d%d",&a,&b,&c);
printf("排序后:\n");

if(a>=b&&b>=c) printf("%s\n",'cba');
else if(a>=b&&b<c&&a>=c) printf("%s\n",'bca');
else if(b>=a&&a>=c) printf("%s\n",'cab');
else if(b>=a&&a<c&&b>=c) printf("%s\n",'acb');

else if(c>=a&&a>=b) printf("%s\n",'bac');

else if(c>=a&&a<b&&c>=b) printf("%s\n",'abc');

return 0;

}追问

?我题目没打错的,你会写吗,帮帮忙

第2个回答  2013-04-10
楼上程序错了,得不了正确的结果!少了一行代码!应;#includevoidmain(){inta,b,c,min;printf("请任意输入三个整数:")scanf("%d%d%d",if(a>=b)min=b;elsemin=a;if(min>c)min=c;printf("%d\n",min);}