在主函数中输入 10 个不等长的字符串。用另一个函数对它们按升序排序,然后在 主函数中输出这 10 个已排序的字符串。
时间: 2023-03-19 22:27:00 浏览: 145
可以使用以下代码实现:
#include <stdio.h>
#include <string.h>
void sortStrings(char arr[][100], int n) {
char temp[100];
for(int i=0; i<n-1; i++) {
for(int j=i+1; j<n; j++) {
if(strcmp(arr[i], arr[j]) > 0) {
strcpy(temp, arr[i]);
strcpy(arr[i], arr[j]);
strcpy(arr[j], temp);
}
}
}
}
int main() {
char strings[10][100];
printf("请输入10个字符串:\n");
for(int i=0; i<10; i++) {
scanf("%s", strings[i]);
}
sortStrings(strings, 10);
printf("排序后的字符串为:\n");
for(int i=0; i<10; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
在主函数中,首先定义了一个二维字符数组 strings,用于存储输入的字符串。然后使用 for 循环输入 10 个字符串。接着调用 sortStrings 函数对这些字符串进行排序。sortStrings 函数使用了冒泡排序算法,通过比较字符串的大小关系,将它们按升序排序。最后在主函数中输出已排序的字符串。