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頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、c 語言單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì)課程設(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)判卷并給出成績(jī). 3模塊劃分單項(xiàng)選擇體標(biāo)準(zhǔn)化考試系統(tǒng)判退 添顯答 卷 出 加示題 系

2、 試試統(tǒng) 題題到庫試題庫4主要函數(shù)說明及N-S圖(1) 菜單 Menu(): 用來給用戶提供選項(xiàng);輸出菜單界面輸入選項(xiàng)輸入 1 N Y添加 Add 輸入 2 N Y () 函數(shù)添加 Put 輸入 3 N Y () 函數(shù)添加輸入4 N Y Ask() 函 數(shù)exit(0)break break break(2)Read() 函數(shù) : 用于打開文件; FILE *fp ,int i=0 breakfp=fopen(" 單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","r+")Y if(fp=NULL) N printf(" 文件打開失敗");re

3、turn 0;for(i=0;!feof(fp);i+)fprintf(fp,"%s %s %s %s %s %cn",quei.topic,quei.a1,quei .a2,quei.a3,quei.a4,quei.real);fclose(fp)return i(3)Save() 函數(shù) : 用于添加試題后保存試題;FILE *fpint i=0if(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.t

4、opic,quei.a1,quei.a2,quei.a3,quei.a4,quei .real” ) (4)Put() 函數(shù) : 用于顯示試題int i,nn=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ù) : 用于添加試題(5)Adi FILE *fp int i,a,n . sruct question quen=Read(que)printf( “請(qǐng)輸入增加試題的數(shù)目”)scanf( “ %d“,&a

5、mp;a);i=0;i<n; i+scanf(” %s %s %s %s%s%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real”)fprintf(fp, ” %s %s %s %s %s%cn,quei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.realfclose(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",&quo

6、t;r+");printf( “請(qǐng)輸入要答得題目數(shù) : ” )Scanf( ” %d”,&m);for(i=0;i<n;i+)if(strcmp(number,stui.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) Y N圖 4-6printf("n 答

7、案正確!n"); printf("n 答案錯(cuò)誤!n"); 修改函數(shù)(cor)score+; score=score;printf("n 你的總成績(jī)?yōu)?%dn",score);getchar(); getchar();5. 程序運(yùn)行數(shù)據(jù)及其結(jié)果6課程設(shè)計(jì)心得通過這次實(shí)訓(xùn)I,感覺到自己還是差很多的,自己學(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),讓自己更加熟練

8、的掌握更多編程技巧,更多的思路。 還有一點(diǎn)就是沒有思路的時(shí)候千萬不要放棄,要學(xué)會(huì)思考,學(xué)會(huì)獨(dú)立有耐心的完成一些事情,等到做完成功之后,便會(huì)收獲很多的信心和欣慰??傊褪且心托模瑘?jiān)持多做練習(xí),不會(huì)的多請(qǐng)教別人,一切 困難都會(huì)迎刃而解。附錄 :串操作及內(nèi)存操作函數(shù) 調(diào)用系統(tǒng)函數(shù)動(dòng)態(tài)內(nèi)存#include<stdio.h>#include<stdlib.h> /#include<string.h> /#include<malloc.h>/#include<conio.h>#define N 100void Menu1();int Read(

9、);void save();void Put();void Add();void Ask();struct question char topic100;char a1100;char a2100;char a3100;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 答題并判卷&quo

10、t;);puts("tt 4 退出 ");puts("tt 請(qǐng)選擇");int choice1,choice2;while(12)scanf("%d",&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;cas

11、e 4:puts(" 歡迎下次使用");exit(0);int Read(struct question queN)/ 打開文件FILE *fp;int i=0;fp=fopen(" 單項(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,que

12、i.a1 ,quei.a2,quei.a3,quei.a4,quei.real);fclose(fp);return i;void save(struct question queN,int n) /考試系統(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 ;elsefor(i=0;i<n;i+)fprintf(fp,"%s %s %s %s %s %cn",qu

13、ei.topic,quei.a1,quei.a2,quei.a3,quei.a4,quei.real);fclose(fp);void Put()/ 顯示試題信息struct question queN;int i,n;n=Read(que);printf("I*所有的試題信息如下*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;str

14、uct question queN;fp=fopen(" 單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)設(shè)計(jì).txt","a+"); / 以添加的形式打開文件if(fp=NULL)printf(" 文件打開失敗");return;printf(" 請(qǐng)輸入增加試題的數(shù)目n");scanf("%d",&a);for(i=1;i<=a;i+)printf("n請(qǐng)輸入第dj試題的題目,第一個(gè)選項(xiàng),第二個(gè)選項(xiàng),第三個(gè)選項(xiàng),第四個(gè)選項(xiàng),正確答案,并按回車鍵確認(rèn)n",i);scanf("

15、%sn%sn%sn%sn%sn%c",&quei.topic,&quei.a1,&quei.a2,&quei.a3,&quei.a4,&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

溫馨提示

  • 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)論