c语言实现的小型学生教务管理系统
时间: 2023-08-29 20:07:15 浏览: 56
好的,我可以为您解答关于C语言实现小型学生教务管理系统的问题。
学生教务管理系统是一种管理学生信息和课程信息的系统。通常包括以下几个模块:
1. 学生信息管理模块:包括学生的基本信息、课程信息、成绩信息等;
2. 教师信息管理模块:包括教师的基本信息、授课信息、成绩管理等;
3. 课程信息管理模块:包括课程的基本信息、上课时间、上课教室等;
4. 成绩管理模块:包括成绩录入、成绩查询等。
以下是一个简单的C语言实现小型学生教务管理系统的示例代码:
```
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX_STUDENT_NUM 100
#define MAX_COURSE_NUM 10
#define MAX_NAME_LEN 20
struct Student
{
int id;
char name[MAX_NAME_LEN];
int course_num;
int course_id[MAX_COURSE_NUM];
int course_score[MAX_COURSE_NUM];
};
struct Course
{
int id;
char name[MAX_NAME_LEN];
};
struct Student students[MAX_STUDENT_NUM];
struct Course courses[MAX_COURSE_NUM];
int student_num = 0;
int course_num = 0;
void add_student()
{
int id;
char name[MAX_NAME_LEN];
int course_num;
int course_id[MAX_COURSE_NUM];
int course_score[MAX_COURSE_NUM];
printf("Please input student id:");
scanf("%d", &id);
printf("Please input student name:");
scanf("%s", name);
printf("Please input student course number:");
scanf("%d", &course_num);
for (int i = 0; i < course_num; i++)
{
printf("Please input course id for course %d:", i + 1);
scanf("%d", &course_id[i]);
printf("Please input course score for course %d:", i + 1);
scanf("%d", &course_score[i]);
}
students[student_num].id = id;
strcpy(students[student_num].name, name);
students[student_num].course_num = course_num;
memcpy(students[student_num].course_id, course_id, sizeof(int) * course_num);
memcpy(students[student_num].course_score, course_score, sizeof(int) * course_num);
student_num++;
printf("Add student successfully.\n");
}
void add_course()
{
int id;
char name[MAX_NAME_LEN];
printf("Please input course id:");
scanf("%d", &id);
printf("Please input course name:");
scanf("%s", name);
courses[course_num].id = id;
strcpy(courses[course_num].name, name);
course_num++;
printf("Add course successfully.\n");
}
void query_student()
{
int id;
printf("Please input student id:");
scanf("%d", &id);
for (int i = 0; i < student_num; i++)
{
if (students[i].id == id)
{
printf("name:%s\n", students[i].name);
printf("course number:%d\n", students[i].course_num);
for (int j = 0; j < students[i].course_num; j++)
{
printf("course id:%d, score:%d\n", students[i].course_id[j], students[i].course_score[j]);
}
return;
}
}
printf("Student not found.\n");
}
void query_course()
{
int id;
printf("Please input course id:");
scanf("%d", &id);
for (int i = 0; i < course_num; i++)
{
if (courses[i].id == id)
{
printf("name:%s\n", courses[i].name);
return;
}
}
printf("Course not found.\n");
}
void print_menu()
{
printf("1. Add student\n");
printf("2. Add course\n");
printf("3. Query student\n");
printf("4. Query course\n");
printf("0. Exit\n");
}
int main()
{
int choice;
while (1)
{
print_menu();
printf("Please input your choice:");
scanf("%d", &choice);
switch (choice)
{
case 1:
add_student();
break;
case 2:
add_course();
break;
case 3:
query_student();
break;
case 4:
query_course();
break;
case 0:
return 0;
default:
printf("Invalid choice.\n");
break;
}
}
return 0;
}
```
以上是一个简单的C语言实现小型学生教务管理系统的示例代码,希望对您有所帮助。