#include<stdio.h>
#include<string.h>
int main()
{
char a[100],b[100],c[100],d[100];
scanf("%s%s%s",a,b,c);
if(strcmp(a,b)>0)//若a>b 将a值换成b的 实际还是a
{
strcpy(d,a);
strcpy(a,b);
strcpy(b,d);
}
if(strcmp(b,c)>0)//b与c比较 若上一步改变 则是a与c的比较
{
strcpy(d,b);
strcpy(b,c);
strcpy(c,d);
}
if(strcmp(a,b)>0)//a与b比较 此时的a与b值发生变化 结果为b与c或者a与c比较
{
strcpy(d,a);
strcpy(a,b);
strcpy(b,d);
}
printf("%s %s %s",a,b,c);
return 0;
}
原题的网址
上面加了注释 因为第一次做的时候只想着用a b c的比较来输出最终的结果 忘记了复制交换的过程中a b c字符串已经换了数据 所以要想都比较一遍必须按上面的比较方法来!!!千万要注意