请给我一个开始界面,退出界面和主界面能够数据输入、创建链表模块 能够查询课表排课系统的C语言程序
时间: 2024-01-21 18:16:43 浏览: 75
以下是一个简单的课表排课系统的C语言程序,包含开始界面、退出界面和主界面以及链表模块和查询功能:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
/* 课程信息结构体 */
typedef struct course {
char name[20]; // 课程名称
int week; // 上课周数
int day; // 上课天数
int time; // 上课时间
struct course *next; // 指向下一个课程信息的指针
} Course;
/* 创建链表 */
Course *createList() {
Course *head = (Course*)malloc(sizeof(Course)); // 创建头结点
head->next = NULL;
return head;
}
/* 添加课程信息 */
void addCourse(Course *head) {
Course *p = head;
while (p->next != NULL) {
p = p->next;
}
Course *newCourse = (Course*)malloc(sizeof(Course)); // 创建新课程信息结点
printf("请输入课程名称:");
scanf("%s", newCourse->name);
printf("请输入上课周数:");
scanf("%d", &newCourse->week);
printf("请输入上课天数:");
scanf("%d", &newCourse->day);
printf("请输入上课时间:");
scanf("%d", &newCourse->time);
p->next = newCourse; // 将新课程信息结点添加到链表尾部
newCourse->next = NULL;
printf("添加成功!\n");
}
/* 查询课程信息 */
void searchCourse(Course *head) {
char name[20];
printf("请输入要查询的课程名称:");
scanf("%s", name);
Course *p = head->next;
int flag = 0;
while (p != NULL) {
if (strcmp(p->name, name) == 0) { // 找到了课程信息
printf("课程名称:%s,上课周数:%d,上课天数:%d,上课时间:%d\n", p->name, p->week, p->day, p->time);
flag = 1;
}
p = p->next;
}
if (flag == 0) {
printf("未找到该课程信息!\n");
}
}
/* 显示菜单 */
void displayMenu() {
printf("********** 课表排课系统 **********\n");
printf("1. 添加课程信息\n");
printf("2. 查询课程信息\n");
printf("3. 退出系统\n");
printf("***********************************\n");
}
/* 主函数 */
int main() {
Course *head = createList(); // 创建链表
int choice;
do {
displayMenu(); // 显示菜单
printf("请输入选项:");
scanf("%d", &choice);
switch (choice) {
case 1:
addCourse(head); // 添加课程信息
break;
case 2:
searchCourse(head); // 查询课程信息
break;
case 3:
printf("感谢使用!\n");
break;
default:
printf("输入选项有误,请重新输入!\n");
break;
}
printf("按任意键继续...\n");
getch();
system("cls");
} while (choice != 3);
return 0;
}
```
在这个程序中,我们使用了链表来存储课程信息。通过创建头结点和添加新的课程信息结点,我们可以动态地管理课程信息。同时,我们还提供了查询功能,可以根据课程名称来查找对应的课程信息。开始界面、退出界面和主界面都在 `main` 函数中实现,并且添加了一些界面清除和等待输入的代码,使程序更加友好。
阅读全文