c语言,写一个函数,用起泡法对输入的10个字符串按由小到大的顺序排列
时间: 2024-02-06 07:10:48 浏览: 82
C语言程序设计-编写函数fun对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果;
5星 · 资源好评率100%
下面是一个使用 C 语言实现的起泡法排序的函数,可以对输入的 10 个字符串按照由小到大的顺序进行排序:
```c
#include <stdio.h>
#include <string.h>
void bubble_sort(char arr[][100], int n) {
int i, j;
char temp[100];
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (strcmp(arr[j], arr[j+1]) > 0) {
strcpy(temp, arr[j]);
strcpy(arr[j], arr[j+1]);
strcpy(arr[j+1], temp);
}
}
}
}
int main() {
char arr[10][100];
int i;
printf("请输入 10 个字符串:\n");
for (i = 0; i < 10; i++) {
scanf("%s", arr[i]);
}
bubble_sort(arr, 10);
printf("排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%s\n", arr[i]);
}
return 0;
}
```
在这个程序中,我们定义了一个 `bubble_sort` 函数来实现起泡法排序,其中 `arr` 是一个二维字符数组,表示输入的 10 个字符串。函数中使用了 `strcmp` 函数来比较字符串的大小,并使用 `strcpy` 函数来交换字符串的位置。在 `main` 函数中,我们首先输入了 10 个字符串,然后调用 `bubble_sort` 函数进行排序,最后输出排序后的结果。
阅读全文