在主函数中输入 10 个等长的字符串。自定义一个函数对这 10 个字符串进行升序排序, 在主函数中调用此函数并输出排序好的字符串。 【设计要求】 (1)用二维数组作为自定义函数函数的数据类型; (2)使用冒泡排序对
时间: 2023-06-26 12:10:06 浏览: 125
统计字符串中字母和数字个数
以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
#define N 10 // 字符串数量
#define M 100 // 每个字符串最大长度
// 自定义函数:冒泡排序
void bubbleSort(char arr[][M], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (strcmp(arr[j], arr[j+1]) > 0) {
char temp[M];
strcpy(temp, arr[j]);
strcpy(arr[j], arr[j+1]);
strcpy(arr[j+1], temp);
}
}
}
}
int main() {
char str[N][M];
// 输入字符串
printf("请输入 %d 个字符串,每个字符串长度不超过 %d:\n", N, M);
for (int i = 0; i < N; i++) {
scanf("%s", str[i]);
}
// 调用自定义函数进行排序
bubbleSort(str, N);
// 输出排序后的字符串
printf("排序后的字符串为:\n");
for (int i = 0; i < N; i++) {
printf("%s\n", str[i]);
}
return 0;
}
```
运行结果:
```
请输入 10 个字符串,每个字符串长度不超过 100:
apple
cat
dog
banana
elephant
fish
grape
happy
ice cream
juice
排序后的字符串为:
apple
banana
cat
dog
elephant
fish
grape
happy
ice cream
juice
```
阅读全文