能力测试系统C语言Word下载.docx
- 文档编号:22369713
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:18
- 大小:17.63KB
能力测试系统C语言Word下载.docx
《能力测试系统C语言Word下载.docx》由会员分享,可在线阅读,更多相关《能力测试系统C语言Word下载.docx(18页珍藏版)》请在冰豆网上搜索。
inttest();
/*让学生是否要改答案,并且对正确答案和学生输入的答案进行比较,然后给分数*/
voidDisplayscores();
/*接受分数,并且显示分数*/
voidDisplayAnswer();
/*在程序的最后给正确的答案*/
voiddisplay();
/*获取系统时间在开始进入程序后显示时间,又在结束之前给时间,并比较两者的时间差看是否超出规定时间,判断是否给分*/
voidmain()
FILE*fp,*fp2,*fp3;
/*fp用来记录试卷,fp2用来记录正确答案,fp3用来记录学生输入的答案*/
FILE*s;
/*记录学生的名字和学号以便输出*/
doubletimes,beginTime,endTime;
intscore,ans;
intifright,time=1;
studentstu;
beginTime=clock();
display();
printf("
\nPleaseenterpasswordforthesystem:
"
);
ifright=password(time);
if(ifright==1)
{
cover();
ans=stuInf();
if(ans==1)
score=test();
DisplayAnswer();
endTime=clock();
times=(endTime-beginTime)/CLK_TCK;
/*刚开始考试和考完后的时间差*/
\nYouuse%fseconds\n"
times);
if(times>
60)/*如果你做试卷的时间超出了60秒钟那么你的分数只能是0分*/
\nYouusetoomuchtimesoyourscoreis0\n"
else
Displayscores(score);
}
getch();
return;
}
voiddisplay()
FILE*fp1;
time_tnowtime;
inthour,min,sec;
structtm*timeinfo;
time(&
nowtime);
timeinfo=localtime(&
hour=timeinfo->
tm_hour;
min=timeinfo->
tm_min;
sec=timeinfo->
tm_sec;
fp1=fopen("
time.txt"
"
r"
fscanf(fp1,"
\r%02d:
%02d:
%02d"
&
hour,&
min,&
sec);
fprintf(stdout,"
hour,min,sec);
fclose(fp1);
voidcover()
\n------------------------------------------\n"
\n|ExamTest|\n"
\n|Thisisasystemforstudentto|\n"
\n|testtheirabilityafterlearning|\n"
\n|aterm.Youwillhave20secondsto|\n"
\n|finishit,afteryousubmit,thesystem|\n"
\n|willgivetherightanswerandmark.|\n"
\n|goodluck!
|\n"
intpassword(inttime)
intch1,ch2,ch3,ch4;
for(time=1;
time<
=3;
time++)
ch1=getch();
putch('
*'
ch2=getch();
ch3=getch();
ch4=getch();
if(ch1=='
1'
&
ch2=='
2'
ch3=='
3'
ch4=='
4'
)
\nYouareright!
Welcometotheexamtest!
return1;
\nYourpasswordiswrong\n"
if(time==3)
return0;
intstuInf()
intj;
s=fopen("
infor.txt"
wb"
\nPleaseenteryourname:
"
scanf("
%s"
stu.name);
flushall();
for(j=1;
j<
j++)
\nEnteryournumber,thenumbermustlikethat8107041**:
%ld"
stu.num[0]);
if(stu.num[0]>
=810704101&
stu.num[0]<
=810704145)
fwrite(&
stu,sizeof(stu),1,s);
getchar();
fclose(s);
\nYournumbercannotfind!
\n"
if(j==3)
inttest()
intm,n,i;
charanswer;
intscore=0;
intstu_ans1[10],stu_ans2[10],stu_ans3[2];
intright_ans1[10],right_ans2[10],right_ans3[2];
fp=fopen("
test.txt"
a"
fp2=fopen("
rightAnswer.txt"
fp3=fopen("
stuAnswer.txt"
testCover();
count();
filling();
app();
clrscr();
\nDoyouwanttoamendyourcountanswer?
(y/n):
answer=getch();
putch(answer);
while(answer=='
y'
{
begin:
\nPleaseenterthenumberofthesubject:
%d"
m);
if(m<
0)
\nThenumberyouwanttoamendistoosmall!
Tryagain!
gotobegin;
elseif(m>
10)
\nThenumberyouwanttoamendistoobig!
Pleaseenteryouranswer:
stu_ans1[m-1]);
fprintf(fp3,"
\nTheansweryouamendis:
\n"
stu_ans1[m-1]);
NO.%d:
%d\n"
m,stu_ans1[m-1]);
\n%d\n"
\nDoyouwanttoamendagain?
y/n"
\nDoyouwanttoamendyourfillinganswer?
start:
n);
if(n<
gotostart;
if(n>
30)
Thenumberyouwanttoamendistoobig!
\nPleaseenteryouranswer:
stu_ans2[n-11]);
stu_ans2[n-11]);
n,stu_ans2[n-11]);
\n%d\n"
\nDoyouwanttoamendtheappanswer?
\nPleaseentertheansweryouwanttoamend:
\n%d,%d"
stu_ans3[0],stu_ans3[1]);
stu_ans3[0],stu_ans3[1]);
\nNO41:
%d,%d"
\n%d,%d\n"
fclose(fp2);
fclose(fp3);
for(i=0;
i<
10;
i++)
fscanf(fp3,"
\n%d\n"
stu_ans1[i]);
fscanf(fp2,"
right_ans1[i]);
if(stu_ans1[i]==right_ans1[i])
score+=4;
stu_ans2[i]);
right_ans2[i]);
if(stu_ans2[i]==right_ans2[i])
\n%d,%d\n"
stu_ans3[0],&
stu_ans3[1]);
right_ans3[0],&
right_ans3[1]);
2;
if(stu_ans3[i]==right_ans3[i])
score+=20;
fprintf(fp,"
\nYourscoresis%d\n"
score);
fclose(fp);
returnscore;
voidtestCover()
\n----------------------------------------------\n"
\n|Welcometotheexmatest!
\n|Thetesthavethreepast,NO1:
the|\n"
\n|count.NO2:
thefilling.NO3;
theapp.Each|\n"
\n|subjecthave2scores.Theapphave20scores|\n"
voidcount()
inti,op;
intnum1,num2;
intright_ans1[10];
intstu_ans1[10];
\nNowisthefirstpartofcount!
Eachtitlehave2scores!
num1=rand()%200;
num2=rand()%200;
op=rand()%3;
if(op==0)
%d+%d=\n"
i+1,num1,num2);
right_ans1[i]=num1+num2;
%d+%d=%d\n"
i+1,num1,num2,right_ans1[i]);
fprintf(fp2,"
right_ans1[i]);
\n%d\n"
stu_ans1[i]);
if(op==1)
%d-%d=\n"
right_ans1[i]=num1-num2;
%d-%d=%d\n"
if(op==2)
%d*%d=\n"
right_ans1[i]=num1*num2;
%d*%d=%d\n"
}
\n\n"
return;
voidfilling()
inti;
intchose;
intnum3,num4;
intright_ans2[10];
intstu_ans2[10];
\nNowisthefillingpart!
Eachtitlehave2scores!
num3=rand()%200;
num4=rand()%200;
chose=rand()%3;
if(chose==1)
\nNO%d:
___plus%dis%d,youransweris:
i+11,num3,num3+num4);
right_ans2[i]=num4-num3;
\nNO%d:
___plus%dis%d,youransweris:
i+11,num3,num3+num4,right_ans2[i]);
right_ans2[i]);
stu_ans2[i]);
if(chose==0)
%dminus___is%d,youransweris:
i+11,num3,num3-num4);
right_ans2[i]=num3-num4;
%dminus___is%d,youransweris:
i+11,num3,num3-num4,right_ans2[i]);
if(chose==2)
%dmultiply%dis___,youransweris:
i+11,num3,num4);
right_ans2[i]=num3*num4;
i+11,num3,num4,right_ans2[i]);
voidapp()
intchicken,rabbit;
intright_ans3[2];
intstu_ans3[2];
\nNowistheapppart!
Thisparthave20scores!
Goodluck!
\n******************************************************\n"
\n*Thisprogramistosolvetheproblemof*\n"
\n*ChickensandRabbitsareinthesamecage.*\n"
\n*It'
sknownthattheyhave38headsan
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 能力 测试 系统 语言