C语言编程由键盘输入N(=6)名学生的姓名,再按字典排列输出N名学生的姓名。
时间: 2023-12-03 17:46:08 浏览: 38
以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
#define N 6 // 学生人数
int main() {
char names[N][20]; // 存储学生姓名的数组
int i, j;
char temp[20];
// 输入学生姓名
printf("请输入%d名学生的姓名:\n", N);
for (i = 0; i < N; i++) {
scanf("%s", names[i]);
}
// 对学生姓名进行排序
for (i = 0; i < N - 1; i++) {
for (j = i + 1; j < N; j++) {
if (strcmp(names[i], names[j]) > 0) {
strcpy(temp, names[i]);
strcpy(names[i], names[j]);
strcpy(names[j], temp);
}
}
}
// 输出排序后的学生姓名
printf("排序后的学生姓名为:\n");
for (i = 0; i < N; i++) {
printf("%s\n", names[i]);
}
return 0;
}
```
代码说明:
1. 定义了一个二维字符数组 `names`,用来存储学生姓名,其中第一维表示学生序号,第二维表示姓名的长度(最长不超过19个字符)。
2. 使用 `scanf` 从键盘读入学生姓名,存储到 `names` 数组中。
3. 使用冒泡排序对 `names` 数组中的姓名进行排序,按字典序从小到大排列。
4. 使用 `printf` 输出排序后的学生姓名。