使一个数的个十百千按照由小大排列

来源:百度知道 编辑:UC知道 时间:2024/05/26 15:11:16
main()
{int a,b,c,d,x,y;
scanf("%d",&x);
a=x/1000;
b=x%1000/100;
c=x%100/10;
d=x%10;
if(a>b)
{y=a;
a=b;
b=y;
}
else if(a>c)
{y=a;
a=c;
c=y;
}
else if(a>d)
{
y=a;
a=d;
d=y;
}
else if(b>c)
{
y=b;
b=c;
c=y;
}
else if(b>d)
{
y=b;
b=d;
d=y;
}
else if(c>d)
{y=c;
c=d;
d=y;
}
printf("%d%d%d%d",a,b,c,d);
getch();
}
错在哪了?怎么运行的结果总是不对?

把所有的else去掉。
原来的代码当a>b的时候之后的代码都未执行。后面的代码也是,当if内条件满足,else之后的代码都不可能执行。

这么多if看的头都晕了 ,建议把abcd存入数组,用冒泡排序法。

使一个数的个十百千按照由小大排列 怎么用delphi做“任意输入三个数,按照由大到小的顺序排列” 元素周期表是由门捷列夫提出的,是按照质子数排的,有按中子数排的吗?肯定也有规律 c++接收一个数,输出由这个数组成的正方形(用函数) c++接收一个数,输出由这个数组成的菱方形(用函数) 按照自然数从1开始加求和,加到某个数它的和1300,验算时发现重复了一个数,这个数是多少? 现有一个已排好序的数组,今输入一个数,要求按照原来排序的规律将它插入数组中.编程 删除一维数组中所有相同的数,使之只剩下一个,数组中的数已按由小到大顺序排列。 c++接收一个数,输出由这个数打印一个菱形,每行输出不同的是英文字母(用函数) 请按照数的规律,填出下列组数的下一个数