//定义链表结构
typedef struct QUESTION
{
int index; //题号
char title[100]; //题目
char A[30]; //选项A
char B[30]; //选项B
char C[30]; //选项C
char D[30]; //选项D
char answer[20]; //答案
char chapter[20]; //章节知识点
int score; //分值
int mark; //用于标记是否删除 0已删除 1未删除
struct QUESTION *next; //指向下一个节点指针
}QUESTION;
struct QUESTION *question = NULL; //定义链表
int max = 0; //当前链表长度
int rank = 0; //权限标记 0是学生 1是教师
char name[20];
void InitFile(); //从文件中初始化读取题目
void SaveFile(); //将当前链表保存到文件
void GetTest(); //抽取题目组成试卷
void Del(); //删除题目
void Alter(); //修改题目
void Add(); //添加题目
void Search(); //搜索题目
void Sort(); //对题目进行排序,按题目名称升序排列
void Display(); //显示当前链表数据
void Menu(); //菜单
void InitRank(); //初始化权限
int main()
{
int flag=0; //用于标记用户的选择
InitFile(); //启动时即从文件中初始化
InitRank();
while(1) //死循环,直到用户选择0,退出程序
{
do
{
Menu();
scanf("%d",&flag);
} while (flag<0||flag>8); //如果用户选择非法,则一直让用户重新输入
switch(flag) //分支,根据用户的选择进入不同的功能
{
case 1:
if(rank)
Add();
else printf("你无权进行此操作。\n");
break;
case 2:
Display();
break;
case 3:
GetTest();
break;
case 4:
if(rank)
Del();
else printf("你无权进行此操作。\n");
break;
case 5:
Search();
break;
case 6:
if(rank)
Sort();
else printf("你无权进行此操作。\n");
break;
case 7:
if(rank)
SaveFile();
else printf("你无权进行此操作。\n");
break;
case 8:
if(rank)
Alter();
else printf("你无权进行此操作。\n");
break;
case 0:
printf("谢谢使用!\n");
return 0;
}
}
return 0;
}
给你贴上我做的,核心功能和框架都有了。
你好!
要求的后面,没有看明白,私信联系吧