c語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)_第1頁
c語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)_第2頁
c語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)_第3頁
c語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)_第4頁
c語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 課程設(shè)計(jì)任務(wù)書學(xué) 院、系:專 業(yè):學(xué) 生 姓 名:學(xué) 號(hào):設(shè) 計(jì) 題 目:單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì) 起 迄 日 期:指 導(dǎo) 教 師:1.設(shè)計(jì)目的設(shè)計(jì)單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)。2 任務(wù)概述(1)用文件保存試題庫(每個(gè)試題包括題干、4個(gè)備選答案、標(biāo)準(zhǔn)答案).(2)試題錄入:可隨時(shí)在試題庫中增加試題.(3)試題抽?。好看螐脑囶}庫中可以隨機(jī)抽出N道題(N由鍵盤輸入).(4)答題:用戶可以輸入自己的答案.(5)自動(dòng)判卷:系統(tǒng)可根據(jù)用戶答案與標(biāo)準(zhǔn)答案的對(duì)比實(shí)現(xiàn)判卷并給出成績.3 模塊劃分單項(xiàng)選擇體標(biāo)準(zhǔn)化考試系統(tǒng)添加試題到試題庫顯示試題庫答題判卷退出系統(tǒng)4主要函數(shù)說明及N-S圖(1) 菜單Menu()

2、:用來給用戶提供選項(xiàng);輸出菜單界面輸入選項(xiàng)N輸入1Y 輸入2N添加Add()函數(shù)輸入3添加Put()函數(shù)YNY輸入4NY添加Ask()函數(shù)exit(0)breakbreakbreakbreak(2) Read()函數(shù):用于打開文件;FILE *fp ,int i=0fp=fopen("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","r+")Y if(fp=NULL) Nprintf("文件打開失敗");return 0;for(i=0;!feof(fp);i+) fprintf(fp,"%s %s %s %s %s %cn&quo

3、t;,quei.topic,quei.a1,quei .a2,quei.a3,quei.a4,quei.real);fclose(fp)return i(3) Save()函數(shù):用于添加試題后保存試題;FILE *fpint i=0 if(fp=fopen(“單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt”)=Null)Y Nprintf(“文件打開失?。 ?i=0;i<n;i+fprintf(fp,”%s %s %s %s %s %cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real”)(4) Put()函數(shù):用于顯示試題;int i,n

4、n=Read(que)打印表頭i=0;i<n;i+ fprintf(fp,”%s %s %s %s %sn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4”)getch()(5)Add()函數(shù):用于添加試題FILE *fp int i,a,n(5)Adisruct question que.n=Read(que)printf(“請(qǐng)輸入增加試題的數(shù)目”)scanf(“%d“,&a);i=0;i<n; i+scanf(”%s %s %s %s %s%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,

5、quei.real”)fprintf(fp,”%s %s %s %s %s%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real”)fclose(fp)(5) Ask()函數(shù):用于答題并判卷。 sruct question queNint m,score=0;char r;fp=fopen("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","r+"); printf(“請(qǐng)輸入要答得題目數(shù):”)Scanf(”%d”,&m);for(i=0;i<n;i+)if(strcmp(number,stu

6、i.num)=0);break;printf("%sn%sn%sn%sn%sn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4); printf("n請(qǐng)輸入您的答案:"); scanf("%c",&r); getchar();if(quei.real=r)NYprintf("n答案錯(cuò)誤!n");score=score;printf("n答案正確!n");score+; 圖4-6修改函數(shù)(cor) printf("n你的總成績?yōu)?%dn&q

7、uot;,score);getchar();getchar();5. 程序運(yùn)行數(shù)據(jù)及其結(jié)果6 課程設(shè)計(jì)心得通過這次實(shí)訓(xùn),感覺到自己還是差很多的,自己學(xué)到的還是遠(yuǎn)遠(yuǎn)不夠的,練習(xí)的太少了,好多知識(shí)點(diǎn)都記得不牢,還需要大量的練習(xí)。又因?yàn)橐粋€(gè)學(xué)期沒看了,好多東西都忘了,所以好多知識(shí)點(diǎn)都是在看得時(shí)候重新拾起來的。這次實(shí)訓(xùn)給我的教訓(xùn)就是平時(shí)要多多練習(xí)一些題型,時(shí)不時(shí)的復(fù)習(xí)以前的知識(shí)點(diǎn),讓自己更加熟練的掌握更多編程技巧,更多的思路。還有一點(diǎn)就是沒有思路的時(shí)候千萬不要放棄,要學(xué)會(huì)思考,學(xué)會(huì)獨(dú)立有耐心的完成一些事情,等到做完成功之后,便會(huì)收獲很多的信心和欣慰??傊褪且心托模瑘?jiān)持多做練習(xí),不會(huì)的多請(qǐng)教別人,一

8、切困難都會(huì)迎刃而解。附錄:#include<stdio.h>#include<stdlib.h> /串操作及內(nèi)存操作函數(shù)#include<string.h> /調(diào)用系統(tǒng)函數(shù)#include<malloc.h>/動(dòng)態(tài)內(nèi)存#include<conio.h>#define N 100void Menu1();int Read();void save();void Put();void Add();void Ask();struct question char topic100;char a1100;char a2100;char a3100

9、;char a4100;char real;void Menu1()/主菜單 system("cls"); puts("tt-歡迎進(jìn)入單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)-"); puts("tt 1-添加試題到試題庫中"); puts("tt 2-顯示試題庫");puts("tt 3-答題并判卷"); puts("tt 4-退出"); puts("tt 請(qǐng)選擇"); int choice1,choice2; while(12) scanf("%d&qu

10、ot;,&choice1); switch(choice1) /調(diào)用子函數(shù)。 case 1:system("cls");Add();Menu1();break; case 2:system("cls");Put();Menu1();break; case 3:system("cls");Ask();Menu1();break; case 4:puts("歡迎下次使用 ");exit(0); int Read(struct question queN)/打開文件 FILE *fp;int i=0;fp=fop

11、en("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","r+"); /以讀的形式打開文件information.txtif(fp=NULL)printf("文件打開失敗");return 0; for(i=0;!feof(fp);i+)fscanf(fp,"%s %s %s %s %s %cn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real);fclose(fp);return i;void save(struct question queN,int n) /

12、考試系統(tǒng)改變后更新并保存文件 FILE *fp;int i=0; if(fp=fopen("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","w+")=NULL) printf("文件打開失??!n"); return ; else for(i=0;i<n;i+) fprintf(fp,"%s %s %s %s %s %cn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real); fclose(fp); void Put()/顯示試題信息 struct quest

13、ion queN;int i,n;n=Read(que);printf("*所有的試題信息如下*nn"); for(i=0;i<n;i+) printf("%sn%sn%sn%sn%snn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4); getch(); void Add()/添加試題 FILE *fp;int a,i;struct question queN;fp=fopen("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","a+"); /以添加的形式打開文件if(fp

14、=NULL)printf("文件打開失敗");return;printf("請(qǐng)輸入增加試題的數(shù)目n");scanf("%d",&a); for(i=1;i<=a;i+) printf("n請(qǐng)輸入第%d個(gè)試題的題目,第一個(gè)選項(xiàng),第二個(gè)選項(xiàng),第三個(gè)選項(xiàng),第四個(gè)選項(xiàng),正確答案,并按回車鍵確認(rèn):n",i); scanf("%sn%sn%sn%sn%sn%c",&quei.topic,&quei.a1,&quei.a2,&quei.a3,&quei.a

15、4,&quei.real); fprintf(fp,"n%sn%sn%sn%sn%sn%cn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real); printf("添加信息成功!");fclose(fp);getchar();getchar(); void Ask()/答題并判卷 FILE *fp;struct question queN;int m,score=0;char r;fp=fopen("單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","r+"); printf("請(qǐng)輸入要答得題目數(shù):"); scanf("%d",&m);for(int i=1;i<=m;i+)fread(&quei,sizeof(struct question)-1,1,fp);printf("%sn%sn%sn%sn%sn",quei.topic,quei.a1,quei.a2,quei.a3,quei.a4)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論