高校学科竞赛管理系统设计C语言代码实现教师的审核功能
时间: 2023-10-08 14:07:43 浏览: 36
以下是一个简单的示例程序,实现了教师审核功能:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义一个结构体,用于存储竞赛信息
struct competition {
int id; // 竞赛编号
char name[50]; // 竞赛名称
char category[20]; // 竞赛类别
int status; // 竞赛状态(0:未审核,1:已通过,2:未通过)
};
// 定义一个函数,用于读取竞赛信息
void read_competition(struct competition *cp, int n) {
int i;
for (i = 0; i < n; i++) {
printf("请输入第 %d 个竞赛的编号:", i + 1);
scanf("%d", &(cp[i].id));
printf("请输入第 %d 个竞赛的名称:", i + 1);
scanf("%s", cp[i].name);
printf("请输入第 %d 个竞赛的类别:", i + 1);
scanf("%s", cp[i].category);
cp[i].status = 0; // 初始化状态为未审核
}
}
// 定义一个函数,用于显示竞赛信息
void display_competition(struct competition *cp, int n) {
int i;
printf("竞赛编号\t竞赛名称\t竞赛类别\t竞赛状态\n");
for (i = 0; i < n; i++) {
printf("%d\t\t%s\t\t%s\t\t", cp[i].id, cp[i].name, cp[i].category);
switch (cp[i].status) {
case 0:
printf("未审核\n");
break;
case 1:
printf("已通过\n");
break;
case 2:
printf("未通过\n");
break;
}
}
}
// 定义一个函数,用于审核竞赛
void approve_competition(struct competition *cp, int n) {
int id, i;
printf("请输入要审核的竞赛编号:");
scanf("%d", &id);
for (i = 0; i < n; i++) {
if (cp[i].id == id) {
printf("请输入审核结果(1:通过,2:未通过):");
scanf("%d", &(cp[i].status));
printf("竞赛审核完成!\n");
return;
}
}
printf("未找到编号为 %d 的竞赛!\n", id);
}
int main() {
struct competition cp[100]; // 定义一个竞赛数组,最多存储100个竞赛信息
int n, choice;
printf("请输入竞赛数量:");
scanf("%d", &n);
read_competition(cp, n); // 读取竞赛信息
while (1) {
printf("请选择要进行的操作:\n");
printf("1. 显示竞赛信息\n");
printf("2. 审核竞赛\n");
printf("3. 退出程序\n");
printf("请输入选项:");
scanf("%d", &choice);
switch (choice) {
case 1:
display_competition(cp, n); // 显示竞赛信息
break;
case 2:
approve_competition(cp, n); // 审核竞赛
break;
case 3:
exit(0); // 退出程序
default:
printf("无效选项!\n");
}
}
return 0;
}
```
该程序使用结构体存储竞赛信息,通过 read_competition 函数读取竞赛信息,通过 display_competition 函数显示竞赛信息,通过 approve_competition 函数审核竞赛。在审核竞赛时,用户需要输入要审核的竞赛编号,并输入审核结果。审核结果包括两个选项:1 表示通过,2 表示未通过。审核完成后,程序会自动返回菜单界面,等待用户选择下一步操作。