发布网友 发布时间:2022-04-24 02:56
共2个回答
热心网友 时间:2023-10-23 06:35
这个主要是用到了冒泡排序算法,我帮你写了一个,你看看:
如果想要找到一个就跳出,把下面加注释的句话打开就可以了。
#include<stdio.h>
typedef int BOOL;
#define FALSE (0)
#define TRUE (!FALSE)
int order(int num, BOOL bUp)
{
char temp[5] = {0};
char ch = 0;
int i, j;
int result = 0;
sprintf(temp, "%d", num);
if (bUp)
{
for (i=0; i<4; i++)
{
for (j=i+1; j<4; j++)
{
if (temp[i]>temp[j])
{
ch = temp[i];
temp[i] = temp[j];
temp[j] = ch;
}
}
}
}
else
{
for (i=0; i<4; i++)
{
for (j=i+1; j<4; j++)
{
if (temp[i]<temp[j])
{
ch = temp[i];
temp[i] = temp[j];
temp[j] = ch;
}
}
}
}
result = atoi(temp);
return result;
}
int main()
{
int i = 1000;
int iUp = 0;
int iDown = 0;
int result = 0;
for (i=1000; i<10000; i++)
{
iUp = order(i, TRUE);
iDown = order(i, FALSE);
result = iDown - iUp;
if (6174 == result)
{
printf("该数为:%d ", i);
printf("降序为:%d ", iDown);
printf("升序为:%d\n", iUp);
//break; // 想要找到一个就跳出,把这句话打开就可以了
}
}
system("pause");
return 0;
}
运行结果:
追问私信了你.有些问题请教追答回你了
热心网友 时间:2023-10-23 06:35
给人家一个采纳吧。我就不写了。追问他写比较深奥.我新手刚学,不懂..要简单些.私信又没回.