酷代码 AI
菜单
全部AI  /  热门  /  AI问答
服务商

c语音定义一个结构体student,其中包含的成员为char no[10];char name[10];float score。设有5个学生,从键盘输入其信息,按成绩的升序排序。并输出这5个学生排序后的信息。 输入格式: "%s%s%f" 输出格式: "请输入第%d位同学的信息:姓名 学号 成绩\n" "%s,%s,%.0f\n" 输入样例: 张三 10001 98↙ 李四 10002 100↙ 王五 10003 95↙ 赵六 10004 99↙ 钱七 10005 93↙ 输出样例: 请输入第1位同学的信息:姓名 学号 成绩↙ 请输入第2位同学的信息:姓名 学号 成绩↙ 请输入第3位同学的信息:姓名 学号 成绩↙ 请输入第4位同学的信息:姓名 学号 成绩↙ 请输入第5位同学的信息:姓名 学号 成绩↙ 钱七,10005,93↙ 王五,10003,95↙ 张三,10001,98↙ 赵六,10004,99↙ 李四,10002,100↙

以下是使用 C 语言解决此问题的代码: ```c #include <stdio.h> #include <string.h> struct student { char no[10]; char name[10]; float score; }; void sortStudents(struct student students[], int n) { struct student temp; for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - i - 1; j++) { if (students[j].score > students[j + 1].score) { temp = students[j]; students[j] = students[j + 1]; students[j + 1] = temp; } } } } int main() { struct student students[5]; for (int i = 0; i < 5; i++) { printf("请输入第%d位同学的信息:姓名 学号 成绩\n", i + 1); scanf("%s%s%f", students[i].name, students[i].no, &students[i].score); } sortStudents(students, 5); for (int i = 0; i < 5; i++) { printf("%s,%s,%.0f\n", students[i].name, students[i].no, students[i].score); } return 0; } ``` [2025-01-01 20:11:47 | AI问答 | 326点数解答]

相关提问