c语言 利用指针将 10 个学生的姓名排序。
时间: 2024-05-11 08:19:37 浏览: 30
下面是一种使用指针的冒泡排序算法来对10个学生的姓名进行排序的C语言代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LEN 50
#define NUM_OF_STUDENTS 10
int main() {
char names[NUM_OF_STUDENTS][MAX_NAME_LEN];
char temp[MAX_NAME_LEN];
// 读入学生姓名
printf("请输入%d个学生的姓名:\n", NUM_OF_STUDENTS);
for (int i = 0; i < NUM_OF_STUDENTS; i++) {
scanf("%s", names[i]);
}
// 冒泡排序
for (int i = 0; i < NUM_OF_STUDENTS - 1; i++) {
for (int j = 0; j < NUM_OF_STUDENTS - i - 1; j++) {
if (strcmp(names[j], names[j+1]) > 0) {
strcpy(temp, names[j]);
strcpy(names[j], names[j+1]);
strcpy(names[j+1], temp);
}
}
}
// 输出排序后的学生姓名
printf("\n排序后的学生姓名为:\n");
for (int i = 0; i < NUM_OF_STUDENTS; i++) {
printf("%s\n", names[i]);
}
return 0;
}
```
这里使用了一个二维字符数组来存储学生姓名,每个学生的姓名占用一个字符串的空间。在冒泡排序过程中,使用了指针来交换两个字符串的位置。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)