freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言程序設計開放性實驗指導手冊(完整版)

2025-07-31 06:24上一頁面

下一頁面
  

【正文】 errorcode = graphresult()。int confirm(int) 函數(shù):用于判斷游戲是否重新開始。 }while(!gameRes)。 /*y方向偏移量*/游戲狀態(tài)數(shù)據(jù)int gameRes。 /*當前游戲雷區(qū)列數(shù)*/define SIZEX 20 /*雷區(qū)方塊的水平大小(像素數(shù))*/define SIZEY 20 /*雷區(qū)方塊的垂直大?。ㄏ袼財?shù))*/define STARTX (MAXCOLCOL*SIZEX)/2 /*水平起始位置*/define STARTY (MAXROWROW*SIZEY)/2 /*垂直起始位置*/雷區(qū)內(nèi)部數(shù)據(jù)int totalMine。(2)決定游戲的輸入方式。掃雷游戲要具備以下功能:開局:首先選擇游戲等級,然后生成不同等級的雷區(qū)界面。任務1:確定游戲界面、輸入方式和基本數(shù)據(jù)(1) 確定游戲的界面。 /*屏幕最大寬度*/int MAXROW=480。方塊(i,j)的狀態(tài)取值:define UNFLAG 0 /* 表示該方塊還沒有被打開或者標記*/define FLAGED 1 /* 標記該方塊有地雷*/define QUESTION 20 /* 表示該方塊可能有地雷*/define EXPLOD 30 /* 踩到地雷爆炸了*/define OPEN 40 /* 一個沒有地雷的方塊被打開*/光標當前位置數(shù)據(jù)int pi,pj。 do { int key = getKey()。int getKey()函數(shù):得到從鍵盤讀入的操作信息。 /* 自動檢測最高圖形模式*/ initgraph(amp。 /*返回錯誤碼*/ } MAXCOL = getmaxx()。 /*實現(xiàn)在屏幕上畫出雷區(qū)*/}SetGrade()的繼續(xù)細化:void setGrade()功能:設置游戲等級。i++) for(j=0。為了讓方塊看起來有立體感,將矩形上方和左方的邊線設為白色,下方和右方的邊線設為黑色。 switch(key){ case ENTER:case SPACE: gameRes = openMine(pi,pj)。 /*光標左移一格*/ case RIGHT: moveRight()。 /*標記疑問*/ default: break。判斷是否有地雷。其余函數(shù)的實現(xiàn)類似,要注意邊界條件的判斷。參數(shù): i 表示坐標的行的值,j表示坐標的列的值。當key值為LOWERQ或UPPERQ時,執(zhí)行questBlock(pi,pj)操作。對“判斷游戲是否重新開始”功能模塊進一步求精。(2) 以鍵盤輸入代替鼠標輸入來實現(xiàn)游戲輸入方式。如果程序功能完備,運行無誤,并在設計上有一定的獨到之處,或者編寫的代碼具有良好的設計風格,規(guī)范易讀,此類設計視為優(yōu)秀。 /*雷區(qū)各方塊的狀態(tài)*/int pi,pj。 if (errorcode != grOk) /* 發(fā)生錯誤 */ { printf(Graphics error: %s\n, grapherrormsg(errorcode))。 int ri,rj。itotalMine。 if(ni=0 amp。 } memset(flag,UNFLAG,sizeof(flag))。 color = (flag[i][j]==UNFLAG)?LIGHTGRAY:DARKGRAY。 setcolor(BLACK)。 my = y+5。 case EXPLOD: outtextxy(mx,my,*)。 }}/*繪制雷區(qū)*/void drawTable(){ int i,j。 outtextxy(0,0,Please choice grade(J for Junior,M foe Medium,S for Senior):)。) { COL = 8。 } else { COL = 24。 drawTable()。 flag[i][j] != OPEN) return 0。 outtextxy(0,0,buffer)。) return 0。 }}/*光標左移一格*/void moveLeft(){ if(pj0){ pj。 } drawBlock(i,j)。ii++){ for(jj=0。 drawBlock(i,j)。amp。 if(! (flag[i][j] == OPEN)) return 0。amp。 if(ni=0 amp。}/*獲取按鍵信息,返回有效的操作值*/int getKey(void){ while(1){ int key=bioskey(0)。 /*讀入操作信息*/ if(key == ESC) break。break。break。/*得分*/int gamespeed=50000。/*蛇的節(jié)數(shù)*/ int direction。/*結(jié)束游戲*/void PrScore(void)。段:當許多節(jié)連成一條直線,我稱它為段。如果它吃到食物尾部段就不減少一節(jié)。實現(xiàn)思路程序設計圖(1) 程序結(jié)構(gòu)圖(2) 程序流程圖評分標準評分重點放在面向?qū)ο笤O計方法和實際編寫代碼能力這兩個方面。/*食物的橫坐標*/ int y。/* 蛇的生命,0活著,1死亡*/}snake。/*圖形驅(qū)動*/ DrawK()。}/*開始畫面,左上角坐標為(50,40),右下角坐標為(610,460)的圍墻*/void DrawK(void){/*setbkcolor(LIGHTGREEN)。i=450。[0]=100。 while(%10!=0) ++。 } /*1,2,3,4表示右,左,上,下四個方向,通過這個判斷來移動蛇頭*/ switch() { case 1:[0]+=10。 } for(i=3。/*本次游戲結(jié)束*/ =1。 /*新的一節(jié)先放在看不見的位置,下次循環(huán)就取前一節(jié)的位置*/ ++。 delay(gamespeed)。!=4)/*判斷是否往相反的方向移動*/ =3。amp。}/*輸出成績*/void PrScore(void){ char str[10]。 closegraph()。為了照顧緊迫性作業(yè),使之進入系統(tǒng)后便獲得優(yōu)先處理,引入了最高優(yōu)先數(shù)優(yōu)先(FPF)調(diào)度算法。為了彌補短作業(yè)優(yōu)先算法的不足,我們引入動態(tài)優(yōu)先權(quán),使作業(yè)的優(yōu)先等級隨著等待時間的增加而以速率a提高。 當執(zhí)行的時間片用完時,由一個記時器發(fā)出一個時鐘中斷請求,該進程被停止,并被送往就緒隊列末尾;依次循環(huán)。1) 設置多個就緒隊列,并為各個隊列賦予不同的優(yōu)先級。 /*計數(shù)器*/ char state。進而,結(jié)合進程調(diào)度算法的實際過程,借助鏈隊列的操作用C程序模擬調(diào)度的過程; 重點難點如何在鏈隊列的基礎(chǔ)上來完成入隊和出隊操作,以及進程調(diào)度理論方面的知識如何采用具體的C程序來加以敘述,這是個難點。 /*進程優(yōu)先數(shù)*/ int round。 /*隊列指針*/int N。 else printf( name cputime needtime count round state\n)。 /*輸出當前正在運行的PCB*/ p=ready。 int b。 p1=p1next。 p2next=NULL。 /*輸入進程標識和所需時間創(chuàng)建PCB*/ for(i=1。 pneedtime=time。 printf( output of priority:\n)。 int i,time。i++) { p=malloc(sizeof(PCB))。 /*計數(shù)器*/ pstate=39。 printf( output of round\n)。 runneedtime=runneedtime1。 /*將就緒對列的第一個進程投入運行*/ } else /*沒有運行完同時優(yōu)先數(shù)不是最大,則將其變?yōu)榫途w態(tài)插入到就緒隊列*/ if((ready!=NULL)amp。 runneedtime=runneedtime1。 /*就緒對列不空,將第一個進程投入運行*/ } else if(run。 if(runneedtime==0)/*運行完將其變?yōu)橥瓿蓱B(tài),插入完成隊列*/ { runnext=finish。(runprioreadyprio)) { runstate=39。 /*每運行一次優(yōu)先數(shù)降低3個單位*/ if(runneedtime==0) /*如所需時間為0將其插入完成隊列*/ { runnext=finish。 prt(alg)。 pround=2。 scanf(%d,amp。 ready=NULL。 prt(alg)。w39。i++) { p=malloc(sizeof(PCB))。 int i,time。 if(r!=p1) /*如果條件成立說明插入在r與p1之間*/ { rnext=s。 /*待插入的PCB指針*/ p1=ready。 p=pnext。P39。 /*就緒隊列頭指針賦值給運行頭指針*/ runstate=39。 /*進程占用CPU時間*/ int needtime。需求說明(1)實現(xiàn)思路程序設計圖(1) 功能結(jié)構(gòu)圖(2) 程序流程圖評分標準評分重點放在面向過程程序設計方法和實際編寫代碼能力這兩個方面。 /*鏈指針*/}PCB。任務1:確定進程的數(shù)據(jù)類型和相關(guān)數(shù)據(jù)typedef struct node{ char name[10]。 當其用于作業(yè)調(diào)度, 將后備隊列中若干個優(yōu)先權(quán)最高的作業(yè)裝入內(nèi)存。一、高優(yōu)先數(shù)優(yōu)先調(diào)度算法 bar(50,15,220,35)。 }/*endwhile(1)*/}/*游戲結(jié)束*/void GameOver(void){ cleardevice()。amp。/*用黑色去除蛇的的最后一節(jié)*/ rectangle([],[], []+10,[]10)。/*畫面上需要出現(xiàn)新的食物*/ score+=10。 if([0]==amp。i++)/*從蛇的第四節(jié)開始判斷是否撞到自己了,因為蛇頭為兩節(jié),第三節(jié)不可能拐過來*/ { if([i]==[0]amp。 case 2: [0]=10。/*畫面上有食物了*/ } if(==0)/*畫面上有食物了就要顯示*/ { setcolor(GREEN)。[1]=100。 /*左邊*/ rectangle(601,i,610,i+10)。 setlinestyle(SOLID_LINE,0,THICK_WIDTH)。/*玩游戲具體過程*/ Close()。/*圖形驅(qū)動*/void Close(void)。/*判斷是否要出現(xiàn)食物的變量*/}food。能夠以清晰的思路設計出較為詳細的UML類圖,并編寫代碼實現(xiàn)大部分功能,沒有重大語法錯誤的可以視為良好。 貪吃蛇是由一節(jié)一節(jié)組成的。 一條完整的貪吃蛇是由一段一段組成的。(2)體會程序開發(fā)過程,充分認識程序設計的各個環(huán)節(jié)的重要性,包括需求分析、總體設計、算法設計、文檔總結(jié)以及詳細設計和測試修改等。/* 蛇的生命,0活著,1死亡*/}。/*食物的橫坐標*/ int y。 } while(!gameRes)。break。break。 } }}int main(){ int gameRes。 ni ROW amp。amp。k8。amp。k8。jj++){ if(table[ii][jj] amp。 } else { if(flag[i][j] == UNFLAG) flag[i][j] = QUESTION。 drawBlock(pi,pj+1)。}/*光標上移一格*/void moveUp(){ if(pi0){ pi。 kk = (kkamp。}/*判斷游戲是否重新開始*/int confirm(int res){ char buffer[100]。
點擊復制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1