在當下社會,,接觸并使用報告的人越來越多,,不同的報告內容同樣也是不同的,。優(yōu)秀的報告都具備一些什么特點呢,?又該怎么寫呢?以下是我為大家搜集的報告范文,,僅供參考,,一起來看看吧
c語言掃雷課程設計報告篇一
專業(yè)
軟 件 工 程
班級
x
班
學號_ xxxxxxxxxxx_
姓名
實驗日期:201x年x月x日
報告退發(fā)(訂正、重做)
課程
c程序設計實驗
實驗名稱
函
數(shù)
一,、實驗目的
① 熟練掌握c程序中函數(shù)的定義,; ② 掌握函數(shù)的調用,函數(shù)參數(shù)的傳遞,; ③ 熟練掌握函數(shù)的嵌套調用和遞歸調用,;
二、實驗環(huán)境(描述實驗的軟件,、硬件環(huán)境)
① 軟件環(huán)境:windows xp/win7等操作系統(tǒng),,microsoft visual c++ 6.0編譯器; ② 硬件環(huán)境:pc機一臺
三,、實驗內容,、步驟和結果分析
題目一:編寫一個用來判斷質數(shù)(素數(shù))的函數(shù)。
要求:
(1)在main函數(shù)中調用該函數(shù)對輸入的數(shù)值進行判斷,,并輸出判斷結果,;(2)當輸入數(shù)值<=1時,停止輸入和判斷,。
#include
#include
/*=======判斷質數(shù)(素數(shù))的函數(shù)=======*/ int judgeprime(int n){
} /*=======判斷質數(shù)(素數(shù))的函數(shù)=======*/ int main(){printf(“n提示:輸入一個數(shù)字來判斷是否是質數(shù)(素數(shù)),,當輸入數(shù)值<=1時,停止輸入和判斷,。nn”);for(int num=2,temp;num>1;){ printf(“please enter a number:”);for(int i=2;i<=sqrt(n);i++)//一個數(shù)n如果是合數(shù),,那么它的所有的因子不超過n的開方 {
} return 1;if(n%i==0)return 0;else continue;
}
} scanf(“%d”,#);if(num<=1)break;//當輸入數(shù)值<=1時,停止輸入和判斷 temp=judgeprime(num);if(temp==0)printf(“%d is not a prime numner!nn”,num);else printf(“%d is a prime numner!nn”,num);return 0;
題目二:使用習題1中所編寫的判斷質數(shù)的函數(shù)驗證哥德巴赫(goldbach)的1+1猜想-----任何一個>=6的偶數(shù)都可以表示成兩個素數(shù)之和
要求:
① 屏幕提示用戶一個>=6的偶數(shù),;
② 輸出這個偶數(shù)等于2個素數(shù)之和的表達式,; ③ 當輸入數(shù)據(jù)<6或者不是偶數(shù)時,停止輸入和驗證,。
#include
#include
/*=======判斷質數(shù)(素數(shù))的函數(shù)=======*/ int judgeprime(int n){
for(int i=2;i<=sqrt(n);i++)//一個數(shù)n如果是合數(shù),,那么它的所有的因子不超過n的開方 {if(n%i==0)return 0;else continue;
} } return 1;//true-->1,false-->0 /*=======驗證哥德巴赫猜想的函數(shù)(調用judgeprime)=======*/ int provegoldbach(int m){
} int main(){
}
printf(“n提示:輸入一個偶數(shù)來驗證哥德巴赫猜想,當輸入數(shù)值<6時,,停止輸入和判斷,。nn”);for(int num=6;num>=6;){
} int temp;printf(“please enter a number:”);scanf(“%d”,#);temp=provegoldbach(num);if(temp==0)//當輸入小于6或者不是偶數(shù)時結束 return 0;printf(“==================================”);if(m<6||m%2!=0){
} if(judgeprime(j)==1&&judgeprime(m-j)==1)//判斷兩數(shù)是否都等于質數(shù) { } printf(“t%d = %d + %dn”,m,j,m-j);return 0;//判斷是否大于等于6或者不是偶數(shù) for(int j=2;j<(m/2);j++)
題目三:編寫一個求階乘的函數(shù),,接著調用該函數(shù)實現(xiàn)組合的求解要求:
① 提示用戶輸入n和m的數(shù)值; ② 輸出的 結果
#include
/*=======階乘函數(shù)=======*/ int fac(int n){
} /*=======組合函數(shù)=======*/ int combine(int m,int n){ } /*=======main函數(shù)=======*/ void main(){int m,n;int res;printf(“n提示:這是求組合求和公式的函數(shù),,輸入兩個整數(shù)(分別為上標和下標)nn”);scanf(“%d%d”,&m,&n);if(m>n)//判斷上標大于小標重新輸入 goto loop;return fac(n)/(fac(n-m)*fac(m));int f;if(n<0)printf(“n<0,data error!”);f=1;else if(n==0||n==1)else f=fac(n-1)*n;return f;loop:printf(“please enter two numbers:”);
}res=combine(m,n);printf(“tresult is %dn”,res);
題目四:編寫一個求矩陣中最大元素以及最小元素的函數(shù)selectmaxandmin(),在main函數(shù)中調用該函數(shù)
要求:
最大值和最小值的輸出操作,,可以放在selectmaxandmin()函數(shù)中
#include
#define row 4//矩陣的行 #define column 4//矩陣的列
/*=======在矩陣中選擇最大最小數(shù)的函數(shù)=======*/ void selectmaxandmin(int arry[row][column])//用指針更方便 {int tempmax,tempmin;if(arry[0][0]>arry[0][1])//賦初始值 {
} else {
} for(int i=0;i
}
} for(int j=0;j
} if(arry[i][j]>tempmax){ } if(arry[i][j]
} int mat[row][column];printf(“please enter a %d x %d matrix:n”,row,column);for(int i=0;i
} selectmaxandmin(mat);return 0;for(int j=0;j
題目五:編寫一個編碼原文的函數(shù),,對于給定的內容,按照敵方的規(guī)律對其進行編碼
要求:
某日,,我軍某部截獲了一份敵方電報,,經(jīng)過仔細分析后發(fā)現(xiàn):該電文中所有的字母字符都是經(jīng)過某種運算后得到的,然那些非字母字符則沒有經(jīng)過任何處理,。例如,,原文中的字符a對應電文中的字符e,原文中的字符b對應電文中的字符f,,原文中的字符w對應電文中的字符a,,原文中的字符!在電文中仍為!
#include
#define size 20
//定義大小 /*=======密碼翻譯的函數(shù)=======*/ char trans(char a){} //主函數(shù) int main(void){
printf(“請輸入原文:nnn”);char str[size];gets(str);printf(“nnn”);if((a>='a'&&a<='v')||(a>='a'&&a<='v')){ } else {
} if(a>='w'||a>='w'){ } else { return a;} return a-22;return a+4;
}printf(“正在破解……nnn”);printf(“破譯的原文是:”);for(int i=0;i<20;i++){
} printf(“n”);str[i]=trans(str[i]);if(str[i]=='')//判斷是否結束 break;printf(“%c”,str[i]);
題目六:編寫一個函數(shù),,求解輸入矩陣的轉置矩陣并輸出
#include
#define row 3//矩陣的行 #define column 4//矩陣的列 /*=======矩陣的輸入函數(shù)=======*/ void matinput(int mat[][column]){
} /*=======原始矩陣的打印函數(shù)=======*/ for(int i=0;ifor(int j=0;j
} printf(“請輸入矩陣元素 [%d][%d]=:”,i,j);scanf(“%d”,&mat[i][j]);
void matprint(int mat[][column]){
} /*=======轉置矩陣的打印函數(shù)=======*/ void mattrasprint(int mat[][column]){
} /*=======main函數(shù)=======*/ int main(void){
} printf(“==================================”);printf(“請輸入一個 %d x %d 的矩陣:n”,row,column);int mat[row][column];matinput(mat);printf(“==================================”);printf(“原始矩陣為:n”);matprint(mat);printf(“==================================”);printf(“原始矩陣的轉置矩陣為n”);mattrasprint(mat);return 0;int arr[column][row];for(int i=0;i
} for(int j=0;j
} printf(“n”);arr[i][j]=mat[j][i];printf(“%3d”,arr[i][j]);for(int i=0;i
} for(int j=0;j
題目七:用戶輸入的字符串,,以相反的順序打印出來。
要求:利用遞歸函數(shù)調用形式
#include
#define size 20 /*=======相反輸出字符串的函數(shù)=======*/ void reverse(char a[]){
int i=0;if(a[i]!=''){} int main(void){
}printf(“t提示:輸入一串字符以相反的順序打印n”);char str[size];gets(str);reverse(str);printf(“n”);return 0;
} else return;reverse(&a[i+1]);//遞歸調用 printf(“%c”,a[i]);
四,、討論
c語言掃雷課程設計報告篇二
c語言程序設計報告
題目: 掃雷小游戲設計
電子通信與物理學院 日期:2018年7月 12 日
指導教師評語
目錄
1.課程設計內容...........................................................................................................1 2.課程設計目的...........................................................................................................1 3.背景知識..................................................................................................................1 4.工具/準備工作..........................................................................................................3 5.設計步驟,、方法.....................................................................................................3
5.1........................................................................................................................3 5.2定義全局變量..................................................................................................4 5.3挖雷部分函數(shù)的分析.......................................................................................5 6.設計結果及分析.....................................................................................................11 7.設計結論...............................................................................................................16 8.參考文獻...............................................................................................................17 附錄...........................................................................................................................17
1.課程設計內容
在計算機逐步滲入社會生活各個層面的今天,計算機已經(jīng)成為人們日常生活的一分,,越來越多的人使用計算機辦公,、娛樂等等。
掃雷游戲是windows操作系統(tǒng)自帶的一款小游戲,,在過去的幾年里,,windows操作系統(tǒng)歷經(jīng)數(shù)次換代更新,變得越來越龐大,、復雜,,功能也越來越強大,但是這款小游戲依然保持原來的容貌,,可見這款小游戲受到越來越多人的喜愛,。我利用c-free編寫了與它功能相仿的挖地雷游戲,寓學于樂,。
即:設計一個功能與windows中的挖雷游戲相同的小游戲,。
2.課程設計目的
1.培養(yǎng)學生綜合運用所學知識獨立完成課題的能力。
2.試學生更深入地理解和掌握該課程中的有關基本概念,,程序設計思想和方法,。3.提高對工作認真負責,、一絲不茍,對同學團結友愛,,協(xié)作攻關的基本素質,。4.培養(yǎng)勇于探索、嚴謹推理,、實事求是,、有錯必改,用實踐來檢驗理論,,全方位考慮問題等科學技術人員應具有的素質,。
5.培養(yǎng)從資料文獻、科學實驗中獲得知識的能力,,提高從別人經(jīng)驗中找到解決問題的新途徑的悟性,,初步培養(yǎng)工程意識和創(chuàng)新能力。
6.對掌握知識的深度,、運用理論去處理問題的能力,、實驗能力、課程設計能力,、書面及口頭表達能力進行考核
3.背景知識
游戲區(qū)包括雷區(qū),、地雷計數(shù)器(位于左上角,記錄剩余地雷數(shù))和計時器(位于 右上角,,記錄游戲時間),,確定大小的矩形雷區(qū)中隨機布置一定數(shù)量的地雷(初級為9*9個方塊10個雷,中級為16*16個方塊40個雷,,高級為16*30個方塊99個雷,,自定義級別可以自己設定雷區(qū)大小和雷數(shù),但是雷區(qū)大小不能超過24*30),,玩家需要盡快找出雷區(qū)中的所有不是地雷的方塊,,而不許踩到地雷。
游戲的基本操作包括左鍵單擊(left click),、右鍵單擊(right click),、雙擊(chording)三種。其中左鍵用于打開安全的格子,,推進游戲進度,;右鍵用于標記地雷,以輔助判斷,,或為接下來的雙擊做準備,;雙擊在一個數(shù)字周圍的地雷標記完時,相當于對數(shù)字周圍未打開的方塊均進行一次左鍵單擊操作:
左鍵單擊:在判斷出不是雷的方塊上按下左鍵,可以打開該方塊,。如果方塊上出現(xiàn)數(shù)字,,則該數(shù)字表示其周圍3×3區(qū)域中的地雷數(shù)(一般為8個格子,對于邊塊為5個格子,,對于角塊為3個格子,。所以掃雷中最大的數(shù)字為8);如果方塊上為空(相當于0),,則可以遞歸地打開與空相鄰的方塊,;如果不幸觸雷,則游戲結束,。
雙擊:同時按下左鍵和右鍵完成雙擊。當雙擊位置周圍已標記雷數(shù)等于該位置數(shù)字時操作有效,,相當于對該數(shù)字周圍未打開的方塊均進行一次左鍵單擊操作,。地雷未標記完全時使用雙擊無效。若數(shù)字周圍有標錯的地雷,,則游戲結束,,標錯的地雷上會顯示一個“ ×”(見下圖)
掃雷的設計原理: 掃雷游戲分為幾個步驟: 第一步,使用二維數(shù)組表示地圖,; 第二步,,隨機生成幾個地雷;
第三步,,點擊方格的反應,,計算每個非雷區(qū)方格點開后的數(shù)字; 第四步,,當方格數(shù)字為0的情況,; 第五步,當方格為地雷的情況,。
第一步地圖的大小和第二步地雷的數(shù)量都應該是程序中給定的,,或者玩家輸入的。這個是多少自己決定吧,。第三步,,計算非雷區(qū)方格點開后的數(shù)字就把這個方格在二維數(shù)組中周圍八個方向的方格是否是地雷都檢查一遍,一定要注意不要越出數(shù)組邊界,。這個數(shù)字可以在游戲初始化時全都計算好,,也可以在玩家點擊的時候再計算。點 擊非雷區(qū)方格,,顯示數(shù)字,,這個方格標記為“已點過”。第四步,當方格數(shù)字為0時,,這里要用到遞歸調用,,就是讓程序自動“點擊”這個數(shù)字為0方格周圍的八個方格,然后再看結果,,如果不是0,,就停止,如果是0,,依然遞歸調用,,直到?jīng)]有0為止,或者直到點遍所有方格為止,,一定要注意不要越出數(shù)組邊界,。第五步,很簡單,,宣布玩家死亡就可以了,。
4.準備工作
查閱相關資料,了解掃雷的的玩法,,了解掃雷的設計思想方法,。借鑒他人寫過的程序,從中找到突破口,。從程序中了解需要的各種函數(shù)準備,,再進一步獲悉該函數(shù)的功能與使用方法。
對自己要設計的挖地雷游戲進行功能分析,,大致如下:
總體游戲過程分析:在屏幕上顯示一個游戲界面,,雷區(qū)范圍內預先埋設了一定數(shù)量的隨機分布的地雷(用數(shù)字9代替地雷);玩家通過從鍵盤中輸入(行數(shù)x,列數(shù)y)↙進行點擊,;若能點中所有非雷區(qū),,則游戲勝利;否則踩雷,,游戲失敗,。簡易版掃雷游戲要具備以下功能:
1)開局:首先選擇游戲等級,然后生成不同等級的雷區(qū)界面,。游戲等級分 為三級:各等級行列數(shù)為———:簡單:10×
10,、普通:15×
15、困難:20×20,;雷區(qū)每個*號下面或埋藏有1個地雷,,或者沒有地雷;
2)挖雷:從鍵盤中輸入(行數(shù)x,列數(shù)y),,并按回車鍵,,可挖開它;若所揭方塊下有9,則踩雷,,此時所有含地雷的塊都出現(xiàn)9,,該局游戲失敗,;如果方塊上出現(xiàn)數(shù)字,,它代表 在它周圍的8個方塊中共有多少顆地雷;
3)輸入:通過鍵盤輸入相關指示信息,; 4)輸出:提示游戲失敗,,是否繼續(xù)再來一遍;
5.設計步驟,、方法 5.1主函數(shù)第一步,,寫出主程序的基本框架,確定各子模塊名字和參數(shù),。具體的函數(shù)流程如圖5-3 所示:
定義使用到的常數(shù),、全局變量、函數(shù)原型說明,。然后初始化圖形系統(tǒng),調用游戲控制函數(shù),,游戲只接受鍵盤,,通過鼠標結束游戲,關閉系統(tǒng),,退出游戲,。
主控模塊的各子模塊說明:
void initialvalue_game()用于棋盤初始化; initialmine_game()用于棋盤的隨機布雷,; void print_game()用于打印棋盤,; int judge_game()用于判斷游戲是否結束; int openmap()用于點開地圖,;
5.2定義全局變量
#include
#include “stdlib.h” #include“time.h” # define s 20 int x;/*棋盤行數(shù)*/ int y;/*棋盤列數(shù)*/ int b;/*選擇游戲難度 1簡單2普通3困難4 自定義*/ int h;/*雷的個數(shù)*/ struct games g;struct games { int game_int[s][s];char game_char[s][s];};使用結構體數(shù)組來完成棋盤的定義,,引用時間頭文件來完成對隨機布雷的隨時性。
5.3挖雷部分函數(shù)的分析void initialvalue_game(struct games *g){ int i,j;for(i=0;i
initialmine_game(struct games *g){ 5 int i,j,next1,next2;int sum=0;srand((unsigned)time(null));while(1){ i=rand()%x;j=rand()%y;if((*g).game_int[i][j]==9)continue;(*g).game_int[i][j]=9;++sum;for(next1=-1;next1<2;next1++){ for(next2=-1;next2<2;next2++){ if(-1
void print_game(struct games *g,int logo){ int i,j;int a[s];for(i=0;i
int judge_game(struct games *g){ int sum=0;int i,j;for(i=0;i
運行第一步:
按enter鍵進入: 11
選擇游戲難度(簡單,、普通,、困難、任意),,按enter鍵進入: 簡單難度: 普通難度:
困難難度:
任意難度:
游戲界面,,開始從鍵盤輸入數(shù)字,格式為(行數(shù)x,列數(shù)y),,點擊enter鍵:
游戲結束頁面: 7.設計結論
一學期結束了,,對c語言也有了一些認識,不過自我感覺學得不太好,好在還是學到了知識: 了解了c的發(fā)展以及編程的基本步驟,,學會了printf輸出語句,,c語言的運算,知道了有哪幾種數(shù)據(jù)類型,,還有我覺得經(jīng)常用的if語句,,if--eles語句,for循環(huán),,while 語句,,do-while語句等等,基本會用數(shù)組和指針,,還有字符串的處理,,對了還有才學的結構體。
還有許多知識點,,不一羅列了,,總之c語言要學的東西太多了,聽大三的都說c很簡單,,但我并不認為他像人們說的那樣簡單,,c是最基礎的,基礎不代表簡單,,也可能是我沒學好才有這樣的感受,。
在這次設計過程中,不僅復習課本上所學知識,,還通過查資料,、問同學學到了課本上沒有的知識。從而啟發(fā)我,,要想寫好程序,,在寫好課本知識的同時還需要多讀和專業(yè)有關的一些書籍,同時還需要多動腦子,,盡量把所學的知識綜合起來應用,,力爭寫出完美的程序。除此之外,,我還得到了一些有用的教訓:寫程序時必須要細心,,不能輸錯一個字符標點,就連全角半角也得注意,。在修改時要有耐心,,編譯出錯后必須逐個錯誤去改正,絕不能心急浮躁,,否則修改之后還會有新的錯誤,。
8.參考文獻
郭翠英主編的《c語言課程設計實例精編》,; 張芳妮 呂波 譯《c語言編程常見問題解答》; 譚浩強《c程序設計題解與上機指導(第二版)》,。課程設計與系統(tǒng)開發(fā)案例[m].北京
附錄:
#include
#include “stdlib.h” 17 #include“time.h” # define s 20 int x;/*棋盤行數(shù)*/ int y;/*棋盤列數(shù)*/ int b;/*選擇游戲難度 1簡單2普通3困難4 自定義*/ int h;/*雷的個數(shù)*/ struct games g;struct games { int game_int[s][s];char game_char[s][s];};
main(){ int i,j;/*定義i,j變量*/ int no;int begin=1;int h;/*確定雷的個數(shù)*/ while(begin){ printf(“nnnnnnn” “ttt=================================n” “ttt 歡迎進入掃雷 nnn” “ttt 按回車鍵繼續(xù) n” “ttt=================================n” “ttt n”);getchar();/*游戲開始界面*/ system(“cls”);printf(“ nnnnnnnnn”);printf(“ 請選擇游戲難度:nn”);printf(“ 1簡單難度nn”);printf(“ 2普通難度nn”);printf(“ 3困難難度nn”);printf(“ 4自定義難度nn”);scanf(“%d”,&h);getchar();/*確定游戲難度*/ if(0void initialvalue_game(struct games *g){ int i,j;for(i=0;i
initialmine_game(struct games *g){ int i,j,next1,next2;int sum=0;srand((unsigned)time(null));while(1){ i=rand()%x;j=rand()%y;if((*g).game_int[i][j]==9)continue;(*g).game_int[i][j]=9;++sum;for(next1=-1;next1<2;next1++){ for(next2=-1;next2<2;next2++){ if(-1
void print_game(struct games *g,int logo){ int i,j;int a[s];for(i=0;i
int judge_game(struct games *g){ int sum=0;int i,j;for(i=0;i
c語言掃雷課程設計報告篇三
中南大學
程序設計基礎實踐報告
學生姓名 張?zhí)m蘭 學 院 信息科學與工程學院 專業(yè)班級 物聯(lián)網(wǎng)工程1301班 完成時間 2014.1 題 目 設計一個和window系統(tǒng)類似的小游戲【挖地雷】
《計算機程序設計實踐》 目錄
1.課程設計內容.............................................................................................3 2.課程設計目的.............................................................................................3 3.背景知識....................................................................................................3 4.工具/準備工作............................................................................................5 5.設計步驟,、方法.........................................................................................5
5.1.步驟1:步驟名稱(二級標題).......................................................錯誤!未定義書簽,。
步驟1.1:步驟名稱(三級標題)..............................................................................5 5.1.1.5.2.5.3.步驟2:步驟名稱..........................................................................錯誤,!未定義書簽。步驟n:步驟名稱..........................................................................錯誤,!未定義書簽,。
6.設計結果及分析.........................................................................................5 7.設計結論..................................................................................................15 8.問題及心得體會.......................................................................................16 9.對本設計過程及方法、手段的改進建議....................................................17 10.參考文獻..................................................................................................17
《計算機程序設計實踐》
printf(“請輸入棋盤行列數(shù)(小于20且用逗號隔開):”);
scanf(“%d,%d”,&x,&y);
getchar();
printf(“請輸入雷的個數(shù):”);
scanf(“%d”,&b);
getchar();
break;
}
break;
}
else
{
printf(“輸入錯誤請重新輸n”);
}
} while(begin){
system(“cls”);
initialvalue_game(&g);
initialmine_game(&g);
print_game(&g,2);
no=1;
while(no)
{
printf(“please choose:”);
scanf(“%d,%d”,&i,&j);getchar();if(-1
{
switch(openmap(&g,i-1,j-1))
{
case 1:
print_game(&g,1);
printf(“游戲結束,!按回車鍵再來一局n”);
《計算機程序設計實踐》
if(getchar()=='n')begin=1;
else begin=0;
no=0;
break;
case 2:
if(judge_game(&g)==b)
{
printf(“win,!n”);
print_game(&g,1);
printf(“按回車鍵再來一局n”);
if(getchar()=='n')begin=1;
else begin=0;
no=0;
break;
}
else print_game(&g,2);no=1;break;
default:break;
}
}
else
{
printf(“你輸入錯誤!請重新輸入n”);
} } } }
c語言掃雷課程設計報告篇四
中南大學
程序設計基礎實踐報告
學生姓名 張?zhí)m蘭 學 院 信息科學與工程學院 專業(yè)班級 物聯(lián)網(wǎng)工程1301班 完成時間 2014.1 題 目 設計一個和window系統(tǒng)類似的小游戲【挖地雷】
《計算機程序設計實踐》錯誤!未指定書簽,。
目錄
1.課程設計內容.............................................................................................3 2.課程設計目的.............................................................................................3 3.背景知識....................................................................................................3 4.工具/準備工作............................................................................................5 5.設計步驟,、方法.........................................................................................5
5.1.步驟1:步驟名稱(二級標題).......................................................錯誤!未定義書簽,。
步驟1.1:步驟名稱(三級標題)..............................................................................5 5.1.1.5.2.5.3.步驟2:步驟名稱..........................................................................錯誤,!未定義書簽。步驟n:步驟名稱..........................................................................錯誤,!未定義書簽,。
6.設計結果及分析.........................................................................................5 7.設計結論..................................................................................................15 8.問題及心得體會.......................................................................................16 9.對本設計過程及方法、手段的改進建議....................................................17 10.參考文獻..................................................................................................17
《計算機程序設計實踐》錯誤,!未指定書簽,。
case 4:
system(“cls”);
printf(“請輸入棋盤行列數(shù)(小于20且用逗號隔開):”);
scanf(“%d,%d”,&x,&y);
getchar();
printf(“請輸入雷的個數(shù):”);
scanf(“%d”,&b);
getchar();
break;
}
break;
}
else
{
printf(“輸入錯誤請重新輸n”);
}
} while(begin){
system(“cls”);
initialvalue_game(&g);
initialmine_game(&g);
print_game(&g,2);
no=1;
while(no)
{
printf(“please choose:”);
scanf(“%d,%d”,&i,&j);getchar();if(-1
{
switch(openmap(&g,i-1,j-1))
{
case 1:
《計算機程序設計實踐》錯誤,!未指定書簽,。
print_game(&g,1);
printf(“游戲結束!按回車鍵再來一局n”);
if(getchar()=='n')begin=1;
else begin=0;
no=0;
break;
case 2:
if(judge_game(&g)==b)
{
printf(“win,!n”);
print_game(&g,1);
printf(“按回車鍵再來一局n”);
if(getchar()=='n')begin=1;
else begin=0;
no=0;
break;
}
else print_game(&g,2);no=1;break;
default:break;
}
}
else
{
printf(“你輸入錯誤!請重新輸入n”);
} } } }