本文共 2919 字,大约阅读时间需要 9 分钟。
学习C语言是每一个编程爱好者的必经之路。为完成工作中的编程需求,我阅读了《C Primer Plus》,对基础知识进行了初步了解。为了巩固所学知识,我决定独立开发了一个学生成绩管理系统。
该系统能够完成以下操作:
在编写代码时,主要采用以下方法:
void show_menu() { printf("*********************************************************\n"); printf("* 学生管理系统 *\n"); printf("*********************************************************\n"); printf("1. 录入学生信息\n"); printf("2. 打印学生信息\n"); printf("3. 保存学生信息\n"); printf("4. 读取学生信息\n"); printf("5. 统计已录入学生人数\n"); printf("6. 查找学生信息\n"); printf("7. 修改学生信息\n"); printf("8. 删除学生信息\n"); printf("返回主目录\n"); printf("*********************************************************\n"); printf("请输入功能编号\n");}
int main() { while (1) { show_menu(); int choice; scanf("%d", &choice); switch (choice) { case 1: addinfo(); break; case 2: PrintInfo(); break; case 3: savestudent(); break; case 4: ReadStudentInfo(); break; case 5: CountItem(); break; case 6: FindStudent(); break; case 7: ChangeStudent(); break; case 8: DelStudent(); break; default: printf("输入有误,请重选\n"); break; } }}
void addinfo() { Node *newNode = malloc(sizeof(Node)); newNode->next = NULL; Node *current = head; if (head == NULL) { head = newNode; } else { while (current->next != NULL) { current = current->next; } current->next = newNode; } printf("请输入学号:"); scanf("%ld", &newNode->stu.num); printf("请输入姓名:"); scanf("%s", newNode->stu.name); printf("请输入性别:"); scanf("%s", newNode->stu.sex); printf("请输入数学成绩:"); scanf("%d", &newNode->stu.maths); printf("请输入英语成绩:"); scanf("%d", &newNode->stu.english); newNode->stu.total = newNode->stu.maths + newNode->stu.english; printf("信息录入成功\n");}
void PrintInfo() { if (head == NULL) { printf("无相关数据\n"); return; } printf("*********************************************************\n"); printf("学号 姓名 性别 数学 英语 总成绩\n"); Node *current = head; while (current != NULL) { printf("%ld %s %s %d %d %d\n", current->stu.num, current->stu.name, current->stu.sex, current->stu.maths, current->stu.english, current->stu.total); current = current->next; } printf("*********************************************************\n");}
=fopen("student_data.db", "w");
fprintf(fd, "\t学号\t姓名\t性别\t数学\t英语\t总成绩\n");...азвание和实现过程略。转载地址:http://bjgmz.baihongyu.com/