#include#includevoidchuansong(intar[]){inti;FILE*fp;if((fp=fopen("d:\data.txt">
四、設(shè)計源程序

四、設(shè)計源程序

ID:35109951

大小:118.50 KB

頁數(shù):10頁

時間:2019-03-18

四、設(shè)計源程序_第1頁
四、設(shè)計源程序_第2頁
四、設(shè)計源程序_第3頁
四、設(shè)計源程序_第4頁
四、設(shè)計源程序_第5頁
資源描述:

《四、設(shè)計源程序》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、四、設(shè)計源程序#include#include#includevoidchuansong(intar[]){inti;FILE*fp;if((fp=fopen("d:\data.txt","w+"))==NULL){printf("Cannotopenfile");exit(0);}for(i=0;i<10;i++)fprintf(fp,"%4d",ar[i]);fclose(fp);}voidsort(intar[],intsz){inti,j,tmp;for(i=0;i

2、j=i+1;jar[j]){tmp=ar[i];ar[i]=ar[j];ar[j]=tmp;}/*for(i=0;i<11;i++)printf("%d",ar[i]);*///此處可以打印出data中的成績排名情況。chuansong(ar);}duqu(n1){inti,paixu[11];FILE*fp;paixu[10]=n1;if((fp=fopen("d:\data.txt","r+"))==NULL){printf("Cannotopenfile");exit(0);}while(!feof(fp)){fo

3、r(i=0;i<10;i++)fscanf(fp,"%d",&paixu[i]);}printf("");fclose(fp);sort(paixu,11);}voidmain(){inti,j,n=0,m=0;intsuiji[5];intcaice[5];intk[3];srand((int)time(NULL));//定義rand的隨機(jī)種子,如果不定義,rand默認(rèn)種子值是1。for(i=0;i<5;i++)//每次運行時刻產(chǎn)生不同的隨機(jī)數(shù)列。suiji[i]=rand()%10;do{k[0]=0;k[1]=0;k[2]=0;printf("Ple

4、aseenteryour5guessnumbers:");for(i=0;i<5;i++)scanf("%d",&caice[i]);for(i=0;i<5;i++){if(suiji[i]==caice[i])k[0]++;}for(i=0;i<5;i++){for(j=0;j<5;j++){if(caice[j]==suiji[i]){k[2]++;break;}}}k[1]=(k[2]-k[0]);printf("Theresultis:")printf("%dY%dN",k[0],k[1]);printf("Therealresultis:

5、");for(i=0;i<5;i++)printf("%d",suiji[i]);//此處用于打印電腦產(chǎn)生的隨機(jī)數(shù)的真實值。n++;m++;}while(m<9&&(k[0]!=5));if(m<9&&(k[0]=5)){printf("Youarewin");duqu(n);}elseprintf("Thegameisover");}五、結(jié)果分析(1)、先調(diào)試主函數(shù),主函數(shù)主要功能是完成電腦產(chǎn)生的隨機(jī)數(shù)與用戶輸入的5個數(shù)進(jìn)行比較,并給出結(jié)果,同時會調(diào)用子函數(shù),調(diào)試主函數(shù)時,先把duqu()子函數(shù)屏蔽掉,僅看輸出的n值來判定主函數(shù)的正誤,從而確保主

6、函數(shù)是正確的,即如果用戶輸入超過9次,屏幕顯示“Thegameisover”n值大于9,如果用戶在9次機(jī)會內(nèi)猜對的話,輸出的n值小于9。(2)、編寫duqu()函數(shù),duqu()的形參值是main()函數(shù)傳遞過來的n值,主要功能讀取d盤下的data文檔中的十個數(shù),定義大小為11的數(shù)組來存放讀取的10個數(shù)和n的值,在編寫duqu()函數(shù)時,最好單獨編寫,至于n的值,先可當(dāng)成已知值給予,然后調(diào)試,看數(shù)組中的數(shù)是否正確,若不正確,則繼續(xù)調(diào)試,直至正確為止。(3)、編寫sort()函數(shù),其編法采用冒泡法對數(shù)組中的11個數(shù)進(jìn)行排序,各位同學(xué)對此已經(jīng)很熟悉,在此不作多講。

7、(4)、編寫chuansong()函數(shù),此函數(shù)通俗點說可以看成是duqu()函數(shù)的逆過程,即把排序好的11個數(shù)前10位送到data文檔中保存起來。(5)、在確保以上四個模塊正確的前提下,把這四個模塊“縫合”到一起,并調(diào)試觀察結(jié)果。(6)、例如某用戶在9次內(nèi)沒有猜對其5個數(shù)的過程如下:例如用戶在第二次就猜對了六、調(diào)試過程中的問題1、在主函數(shù)中首先遇到的問題是產(chǎn)生隨機(jī)數(shù)問題,rand(),srand()的使用,我們先運行兩個程序:(1)#include#includemain(){inti,j;for(i=0;i<10;i+

8、+){j=rand()%10;prin

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。