理论上,我明白如何解决这个问题。
例如,如果给定输入为9536,则输出为9653。
我想要一种方法来使用连接,并循环显示每个数字,当找到比其余数字大的数字时,它将被存储为第一个字符'在一个空字符串r。
我能够使用php(我的主要语言)解决这个问题,但不能解决这个问题。我正在准备实验室职位,这个实验室使用C作为他们的主要语言,所以我正在努力提高我的基本C技能。
感谢您的帮助
答案 0 :(得分:1)
三个步骤:
答案 1 :(得分:0)
使用提供的qsort()
很容易排序。在这个例子中,我本可以直接询问字符串输入,但是你想要一个整数。它不使用您想要的“连接”,但您没有显示任何代码。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int compare(const void *A, const void *B) {
return *(char*)B - *(char*)A;
}
int main() {
int number;
char numstr[21];
printf("Enter an integer: ");
if (scanf("%d", &number) != 1)
return 1;
sprintf (numstr,"%d", number);
qsort(numstr, strlen(numstr), 1, compare);
printf("%s\n", numstr);
return 0;
}
节目输出:
Enter an integer: 9536
9653