
.给定任意字符串,查找出数字字符,并按从小到大顺序排列输出(20分)(容易,适中偏难,困难
1)要求实现函数:
void GetNumString(const char *inputchar *output)输入:constchar *input,原始字符串

基于new bing的实现:

#include <stdio.h>
#include <string.h>
void GetNumString(const char *input, char *output) {
int len = strlen(input), count = 0;
char nums[100] = {0};
// 找到所有数字字符
for (int i = 0; i < len; i++) {
if (input[i] >= '0' && input[i] <= '9') {
nums[count++] = input[i];
}
}
// 冒泡排序,按从小到大排序
for (int i = 0; i < count - 1; i++) {
for (int j = 0; j < count - i - 1; j++) {
if (nums[j] > nums[j+1]) {
char temp = nums[j];
nums[j] = nums[j+1];
nums[j+1] = temp;
}
}
}
// 将结果输出到 output 中
for (int i = 0; i < count; i++) {
output[i] = nums[i];
}
output[count] = '\0';
}
int main() {
char input[] = "ab2c1d4e6f5g7h8i9j";
char output[100] = {0};
GetNumString(input, output);
printf("Input: %s\nOutput: %s\n", input, output);
return 0;
}