数据结构用C语言写一个学生选课系统提示菜单用中文提示要求:学生信息包括姓名学号班级学院;课程信息包括课程名称上课时间上课地点;
#include <stdio.h> #include <string.h>
#define MAX_STUDENT 100 // 最大学生数 #define MAX_COURSE 50 // 最大课程数 #define MAX_NAME 20 // 最大姓名长度 #define MAX_ID 10 // 最大学号长度 #define MAX_CLASS 20 // 最大班级长度 #define MAX_COLLEGE 20 // 最大学院长度 #define MAX_COURSE_NAME 20 // 最大课程名称长度 #define MAX_TIME 30 // 最大上课时间长度 #define MAX_PLACE 30 // 最大上课地点长度
// 学生信息结构体 typedef struct { char name[MAX_NAME]; // 姓名 char id[MAX_ID]; // 学号 char class[MAX_CLASS]; // 班级 char college[MAX_COLLEGE]; // 学院 } Student;
// 课程信息结构体 typedef struct { char name[MAX_COURSE_NAME]; // 课程名称 char time[MAX_TIME]; // 上课时间 char place[MAX_PLACE]; // 上课地点 } Course;
// 全局变量 Student students[MAX_STUDENT]; // 学生数组 int num_students = 0; // 学生数目 Course courses[MAX_COURSE]; // 课程数组 int num_courses = 0; // 课程数目
// 显示菜单 void show_menu() { printf("请选择操作:\n"); printf("1. 添加学生信息\n"); printf("2. 查看学生信息\n"); printf("3. 添加课程信息\n"); printf("4. 查看课程信息\n"); printf("5. 退出\n"); }
// 添加学生信息 void add_student() { if (num_students >= MAX_STUDENT) { printf("学生数目已达到最大值!\n"); return; } Student student; printf("请输入学生姓名:"); scanf("%s", student.name); printf("请输入学生学号:"); scanf("%s", student.id); printf("请输入学生班级:"); scanf("%s", student.class); printf("请输入学生学院:"); scanf("%s", student.college); students[num_students] = student; num_students++; printf("添加成功!\n"); }
// 查看学生信息 void show_students() { if (num_students == 0) { printf("还没有添加学生信息!\n"); return; } printf("学生信息如下:\n"); printf("姓名\t学号\t班级\t学院\n"); for (int i = 0; i < num_students; i++) { printf("%s\t%s\t%s\t%s\n", students[i].name, students[i].id, students[i].class, students[i].college); } }
// 添加课程信息 void add_course() { if (num_courses >= MAX_COURSE) { printf("课程数目已达到最大值!\n"); return; } Course course; printf("请输入课程名称:"); scanf("%s", course.name); printf("请输入上课时间:"); scanf("%s", course.time); printf("请输入上课地点:"); scanf("%s", course.place); courses[num_courses] = course; num_courses++; printf("添加成功!\n"); }
// 查看课程信息 void show_courses() { if (num_courses == 0) { printf("还没有添加课程信息!\n"); return; } printf("课程信息如下:\n"); printf("课程名称\t上课时间\t上课地点\n"); for (int i = 0; i < num_courses; i++) { printf("%s\t%s\t%s\n", courses[i].name, courses[i].time, courses[i].place); } }
int main() { int choice; do { show_menu(); scanf("%d", &choice); switch (choice) { case 1: add_student(); break; case 2: show_students(); break; case 3: add_course(); break; case 4: show_courses(); break; case 5: printf("再见!\n"); break; default: printf("无效操作!\n"); break; } } while (choice != 5); return 0;
原文地址: https://www.cveoy.top/t/topic/flMy 著作权归作者所有。请勿转载和采集!