1、
单项选择题标准化考试系统设计C语言实训
10
2020年4月19日
文档仅供参考,不当之处,请联系改正。
#include
2、0]; char da[100]; int title[100];//随机抽题 char right[10]; } m[1000]; void menu() { printf(" ***********单项选择题标准化考试系统³*********\n"); printf(" *********************************************\n"); printf(" 1.试题录入 ***\n"); printf(" 2.查看所有试题
3、 ***\n"); printf(" 3.试题抽取并答题 ***\n"); printf(" 4.判卷并打分 ***\n"); printf(" 5.退出系统 ***\n"); printf(" ********************************************\n"); } int input(int cnt) { int i,count,choice=0; printf
4、"开始输入记录...\n"); count=cnt; for(i=cnt;i<1000;i++) { printf("Continue?(1 Yes 0 No):"); scanf("%d",&choice); getchar(); if(choice==0) break; else if(choice==1) { printf("请输入第%d道题题目,题干和选项:\n",i+1); printf("请输入题目:"); gets
5、m[i].ask); printf("请输入选项A:"); gets(m[i].answer1); printf("请输入选项B:"); gets(m[i].answer2); printf("请输入选项C:"); gets(m[i].answer3); printf("请输入选项D:"); gets(m[i].answer4); printf("请输入答案:"
6、);
scanf("%c",&m[i].right);
cnt++;
}
}
if(count!=cnt)
printf("\n题目输入成功:");
else
printf("\n未输入记录!");
return cnt;
}
void list(int cnt)
{
int i;
printf("开始显示所有题目...");
printf("\n当前文件夹中所有记录显示如下:\n\n");
for(i=0;i 7、题目:%s\n",i+1,m[i].ask);
printf("A:%s\n",m[i].answer1);
printf("B:%s\n",m[i].answer2);
printf("C:%s\n",m[i].answer3);
printf("D:%s\n",m[i].answer4);
getchar();
}
printf("所有题目显示完成...");
}
void rande(int cnt)
{
int i,j,x=1,n,t;
int title[100];
printf("请输入你想抽取的题数:");
s 8、canf("%d",&n);
if(n>cnt)
printf("您抽取的题目超过了题目总数");
else
{
for(i=1;i<=n;i++)
{
here:x=rand()%n;
title[i]=x;
for(j=0;j 9、\n");
printf("输出抽取到的第%d题目",i);
printf("ÌâÄ¿:%s\n",m[x].ask);
printf("A:%s\n",m[x].answer1);
printf("B:%s\n",m[x].answer2);
printf("C:%s\n",m[x].answer3);
printf("D:%s\n",m[x].answer4);
printf("请输入你的答案:");
scanf("%s",m[x].da);
10、 printf(" =============================================\n");
}
}
printf("´答题成功,按任意键返回主菜单...");
}
void ask(int cnt)
{
int i,n;
int count=0;
printf("请输入已经答题的数目:");
scanf("%d",&n);
for(i=0;i 11、
}
}
printf("你答正确总题数是%d\n",count);
printf("你最后的得分为%d",(100/n)*count);
system("pause");
}
int main()
{
FILE * fp;
int i=0,count=0,select;
fp=fopen("tiku.txt","a+");
if(fp==NULL)
{
printf("File open error!\n");
exit(0);
}
while(!feof(fp))
{
if( 12、fread(&m[i],sizeof(struct test),1,fp)==1)
{
i++;
count++;
}
}
fclose(fp);
while(1)
{
printf("当前文件夹总共有%d条记录.\n",count);
menu();
printf("请输入你的选择:");
scanf("%d",&select);
switch(select)
{
case 1:
count=input(count);break;
case 2:
list(count);break 13、
case 3:
rande(count);break;
case 4:
ask(count);break;
case 5:
fp=fopen("tiku.txt","w");
printf("开始保存文件,按任意键继续........");
getchar();
getchar();
for(i=0;i






