请用c语言编程实现按奥运会参赛国国名在字典中的顺序对其入场次序进行排序。假设参赛国不超过150个
时间: 2023-05-20 16:03:07 浏览: 354
好的,这个问题可以用冒泡排序算法来解决。以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_COUNTRIES 150
#define MAX_NAME_LENGTH 50
int main() {
char countries[MAX_COUNTRIES][MAX_NAME_LENGTH];
int n;
// 读入参赛国名单
printf("请输入参赛国数量:");
scanf("%d", &n);
printf("请输入参赛国名称:\n");
for (int i = 0; i < n; i++) {
scanf("%s", countries[i]);
}
// 冒泡排序
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (strcmp(countries[j], countries[j + 1]) > 0) {
char temp[MAX_NAME_LENGTH];
strcpy(temp, countries[j]);
strcpy(countries[j], countries[j + 1]);
strcpy(countries[j + 1], temp);
}
}
}
// 输出排序结果
printf("按字典序排序后的参赛国名单为:\n");
for (int i = 0; i < n; i++) {
printf("%s\n", countries[i]);
}
return 0;
}
```
希望这个代码能够帮到你!
阅读全文