冬奥运会国家金牌数量排序的实现,用c语言解决上述问题,简单点
时间: 2023-06-20 09:08:53 浏览: 137
以下是用C语言实现冬奥会国家金牌数量排序的代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_COUNTRIES 50
struct Country {
char name[50];
int gold;
};
void sort_countries(struct Country countries[], int n);
int main() {
struct Country countries[MAX_COUNTRIES];
int n;
printf("请输入国家数量:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
printf("请输入第%d个国家的名称和金牌数(以空格分隔):", i+1);
scanf("%s %d", countries[i].name, &countries[i].gold);
}
sort_countries(countries, n);
printf("按照金牌数从高到低排序如下:\n");
for (int i = 0; i < n; i++) {
printf("%s: %d\n", countries[i].name, countries[i].gold);
}
return 0;
}
void sort_countries(struct Country countries[], int n) {
struct Country temp;
for (int i = 0; i < n-1; i++) {
for (int j = i+1; j < n; j++) {
if (countries[j].gold > countries[i].gold) {
temp = countries[i];
countries[i] = countries[j];
countries[j] = temp;
}
}
}
}
```
这个程序会先让用户输入国家数量,接着让用户逐个输入每个国家的名称和金牌数,最后按照金牌数从高到低排序并输出。
阅读全文