用c语言写出以下程序:登录:显示登录界面,提示用户选择 1.学生登录,学生菜单:显示学生登录界面,显示学生菜单 可以查询自己的排名(可以按照不同的条件)。显示自己的各科成绩。 2.管理员登录,管理员菜单:显示管理员登录界面,显示管理员菜单。 显示学生信息:遍历(链表),依次输出学生节点的各个信息(12) 删除学生信息:根据学生的姓名/学号进行删除,遍历链表找到需要删除的节点(2)。 添加学生信息:前插法插入节点,(2) 查询学生信息:遍历链表,根据对比学生姓名/学号来查询对应的节点,并输出该学生节点的信息,若未查到会提示用户。(12) 查看学生总人数:输出总人数。(12) 修改学生信息:遍历链表,根据ID来找到需要修改信息的学生(会对学号的存在性进行检测,也会对修改过后学号是否重复进行检查)再对节点的信息进行修改。(2) 排序:用户可以选择按照学号排序/单科成绩排序。 保存文件:将链表中的数据写入到文件中。
时间: 2024-01-24 16:17:45 浏览: 78
用C语言设计一个同学通迅录程序,同学记录信息用结构体处理。输入同学的通迅信息,存放在数据文件中,输入一个姓名,能实现查找功能,并能把结果显示在屏幕上。画出所有模块的流程图,并写出各个函数。
此处给出一个简单的示例程序,因为没有具体的数据结构和函数实现,所以只是一个框架。
```
#include <stdio.h>
// 学生信息结构体
typedef struct {
// TODO: 定义具体的学生信息字段
} Student;
// 链表节点结构体
typedef struct Node {
Student data;
struct Node* next;
} Node;
// 显示学生登录界面
void showStudentLogin() {
// TODO: 显示学生登录界面
}
// 显示学生菜单
void showStudentMenu() {
// TODO: 显示学生菜单
}
// 查询自己的排名
void queryRank() {
// TODO: 查询自己的排名
}
// 显示自己的各科成绩
void showScores() {
// TODO: 显示自己的各科成绩
}
// 显示管理员登录界面
void showAdminLogin() {
// TODO: 显示管理员登录界面
}
// 显示管理员菜单
void showAdminMenu() {
// TODO: 显示管理员菜单
}
// 遍历链表,输出学生信息
void traverseList() {
// TODO: 遍历链表,输出学生信息
}
// 删除学生信息
void deleteStudent() {
// TODO: 删除学生信息
}
// 添加学生信息
void addStudent() {
// TODO: 添加学生信息
}
// 查询学生信息
void queryStudent() {
// TODO: 查询学生信息
}
// 查看学生总人数
void showTotalCount() {
// TODO: 查看学生总人数
}
// 修改学生信息
void modifyStudent() {
// TODO: 修改学生信息
}
// 排序
void sort() {
// TODO: 排序
}
// 保存文件
void saveToFile() {
// TODO: 保存文件
}
int main() {
int choice;
do {
// 显示登录界面,提示用户选择
printf("请选择登录类型:\n");
printf("1. 学生登录\n");
printf("2. 管理员登录\n");
scanf("%d", &choice);
switch (choice) {
case 1:
// 显示学生登录界面,显示学生菜单
showStudentLogin();
showStudentMenu();
break;
case 2:
// 显示管理员登录界面,显示管理员菜单
showAdminLogin();
showAdminMenu();
break;
default:
printf("输入的选项不合法,请重新输入!\n");
break;
}
} while (choice != 1 && choice != 2);
return 0;
}
```
阅读全文