![C語(yǔ)言綜合編程訓(xùn)練剖析_第1頁(yè)](http://file4.renrendoc.com/view/3d8988e1cdbb256cd2ee12e9e71d46f9/3d8988e1cdbb256cd2ee12e9e71d46f91.gif)
![C語(yǔ)言綜合編程訓(xùn)練剖析_第2頁(yè)](http://file4.renrendoc.com/view/3d8988e1cdbb256cd2ee12e9e71d46f9/3d8988e1cdbb256cd2ee12e9e71d46f92.gif)
![C語(yǔ)言綜合編程訓(xùn)練剖析_第3頁(yè)](http://file4.renrendoc.com/view/3d8988e1cdbb256cd2ee12e9e71d46f9/3d8988e1cdbb256cd2ee12e9e71d46f93.gif)
![C語(yǔ)言綜合編程訓(xùn)練剖析_第4頁(yè)](http://file4.renrendoc.com/view/3d8988e1cdbb256cd2ee12e9e71d46f9/3d8988e1cdbb256cd2ee12e9e71d46f94.gif)
![C語(yǔ)言綜合編程訓(xùn)練剖析_第5頁(yè)](http://file4.renrendoc.com/view/3d8988e1cdbb256cd2ee12e9e71d46f9/3d8988e1cdbb256cd2ee12e9e71d46f95.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
會(huì)計(jì)學(xué)1C語(yǔ)言綜合編程訓(xùn)練剖析C程序組成C程序源程序1源程序2源程序n…………預(yù)編譯命令函數(shù)1函數(shù)n……說(shuō)明部分執(zhí)行部分開(kāi)發(fā)方法:自上向下,逐步細(xì)化,模塊化設(shè)計(jì),結(jié)構(gòu)化編碼第1頁(yè)/共31頁(yè)五子棋游戲程序一個(gè)綜合實(shí)例的分析第2頁(yè)/共31頁(yè)五子棋游戲程序一個(gè)綜合實(shí)例的分析一般來(lái)說(shuō),開(kāi)發(fā)一個(gè)軟件要經(jīng)過(guò)以下步驟:確定軟件的功能定義核心數(shù)據(jù)結(jié)構(gòu)對(duì)整個(gè)軟件進(jìn)行功能模塊劃分編寫(xiě)程序?qū)崿F(xiàn)各功能模塊對(duì)源程序進(jìn)行編譯和調(diào)試,形成軟件產(chǎn)品查看源程序第3頁(yè)/共31頁(yè)功能分析五子棋棋盤(pán)兩位玩家交替行棋五子相連判定贏棋查看源程序第4頁(yè)/共31頁(yè)定義核心數(shù)據(jù)結(jié)構(gòu)定義chargChessBoard[19][19];表示棋盤(pán)棋盤(pán)上每個(gè)交叉點(diǎn)有三種狀態(tài)當(dāng)前光標(biāo)位置表示查看源程序structpoint{intx;inty;};第5頁(yè)/共31頁(yè)程序的模塊劃分查看源程序畫(huà)棋盤(pán)顯示提示信息棋盤(pán)置空接收,處理用戶(hù)輸入,直至:分出勝負(fù)按退出鍵判斷落子鍵有效性更新數(shù)組與棋盤(pán)顯示判斷是否走成五子相連更新全局變量gCursor移動(dòng)光標(biāo)至新位置第6頁(yè)/共31頁(yè)程序的編制細(xì)節(jié)查看源程序定義核心數(shù)據(jù)結(jié)構(gòu)初始化接收按鍵移動(dòng)光標(biāo)落子與判定勝負(fù)main()函數(shù)程序中用到的庫(kù)函數(shù)介紹第7頁(yè)/共31頁(yè)bioskey程序的編制細(xì)節(jié)程序中用到的庫(kù)函數(shù)textmodeclrscrputchcputsgotoxytextcolordelaysound與nosound第8頁(yè)/共31頁(yè)用戶(hù)手冊(cè)查看源程序第9頁(yè)/共31頁(yè)設(shè)計(jì)任務(wù)系統(tǒng)以菜單方式工作(文本菜單或圖形菜單)輸入數(shù)據(jù)模塊,數(shù)據(jù)用文件保存輸出數(shù)據(jù)模塊,數(shù)據(jù)用文件保存基本算法運(yùn)用模塊(排序、查找、插入、比較算法中至少包含一種)系統(tǒng)進(jìn)入畫(huà)面(靜態(tài)或動(dòng)畫(huà))系統(tǒng)其它功能實(shí)現(xiàn)(任選)第10頁(yè)/共31頁(yè)參考設(shè)計(jì)題目一:職工信息管理系統(tǒng)設(shè)計(jì)職工信息包括職工號(hào)、姓名、性別、出生年月、學(xué)歷、職務(wù)、工資、住址、電話(huà)等(職工號(hào)不重復(fù))。試設(shè)計(jì)一職工信息管理系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作職工信息錄入功能(職工信息用文件保存)--輸入職工信息瀏覽功能--輸出查詢(xún)或排序功能:(至少一種查詢(xún)方式)--算法按工資查詢(xún)按學(xué)歷查詢(xún)等系統(tǒng)進(jìn)入畫(huà)面(靜態(tài)或動(dòng)畫(huà))職工信息刪除、修改功能(任選項(xiàng))第11頁(yè)/共31頁(yè)參考設(shè)計(jì)題目二:飛機(jī)訂票系統(tǒng)設(shè)計(jì)假定民航機(jī)場(chǎng)共有n個(gè)航班,每個(gè)航班有一航班號(hào)、確定的航線(起始站、終點(diǎn)站)、確定的飛行時(shí)間(星期幾)和一定的成員訂額。試設(shè)計(jì)一民航訂票系統(tǒng),使之能提供下列服務(wù):系統(tǒng)以菜單方式工作航班信息錄入功能(航班信息用文件保存)--輸入航班信息瀏覽功能--輸出查詢(xún)航線:(至少一種查詢(xún)方式)--算法按航班號(hào)查詢(xún)按終點(diǎn)站查詢(xún)系統(tǒng)進(jìn)入畫(huà)面(靜態(tài)或動(dòng)畫(huà))承辦訂票和退票業(yè)務(wù)(可選項(xiàng))第12頁(yè)/共31頁(yè)參考設(shè)計(jì)題目三:學(xué)生選修課程系統(tǒng)設(shè)計(jì)假定有n門(mén)課程,每門(mén)課程有課程編號(hào),課程名稱(chēng),課程性質(zhì),總學(xué)時(shí),授課學(xué)時(shí),實(shí)驗(yàn)或上機(jī)學(xué)時(shí),學(xué)分,開(kāi)課學(xué)期等信息,學(xué)生可按要求(如總學(xué)分不得少于60)自由選課。試設(shè)計(jì)一選修課程系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作課程信息錄入功能(課程信息用文件保存)--輸入課程信息瀏覽功能--輸出查詢(xún)功能:(至少一種查詢(xún)方式)--算法按學(xué)分查詢(xún)按課程性質(zhì)查詢(xún)系統(tǒng)進(jìn)入畫(huà)面(靜態(tài)或動(dòng)畫(huà))學(xué)生選修課程(可選項(xiàng))第13頁(yè)/共31頁(yè)參考設(shè)計(jì)題目四:圖書(shū)信息管理系統(tǒng)設(shè)計(jì)圖書(shū)信息包括:登錄號(hào)、書(shū)名、作者名、分類(lèi)號(hào)、出版單位、出版時(shí)間、價(jià)格等。試設(shè)計(jì)一圖書(shū)信息管理系統(tǒng),使之能提供以下功能:系統(tǒng)以菜單方式工作圖書(shū)信息錄入功能(圖書(shū)信息用文件保存)--輸入圖書(shū)信息瀏覽功能--輸出查詢(xún)或排序功能:(至少一種查詢(xún)方式)--算法按書(shū)名查詢(xún)按作者名查詢(xún)系統(tǒng)進(jìn)入畫(huà)面(靜態(tài)或動(dòng)畫(huà))圖書(shū)信息的刪除與修改(可選項(xiàng))第14頁(yè)/共31頁(yè)設(shè)計(jì)要求與設(shè)計(jì)報(bào)告設(shè)計(jì)要求可自己選定題目,但至少包含五個(gè)功能模塊模塊化程序設(shè)計(jì)鋸齒型書(shū)寫(xiě)格式必須上機(jī)調(diào)試通過(guò)實(shí)習(xí)報(bào)告語(yǔ)言簡(jiǎn)練,條理清楚,圖表規(guī)范程序設(shè)計(jì)組成框圖、流程圖模塊功能說(shuō)明(如函數(shù)功能、入口及出口參數(shù)說(shuō)明,函數(shù)調(diào)用關(guān)系描述等)調(diào)試與測(cè)試:調(diào)試方法,測(cè)試結(jié)果的分析與討論,測(cè)試過(guò)程中遇到的主要問(wèn)題及采取的解決措施源程序清單和執(zhí)行結(jié)果(軟盤(pán)):清單中應(yīng)有足夠的注釋第15頁(yè)/共31頁(yè)圖形設(shè)計(jì)1顯示系統(tǒng)顯示器:CRT(陰極射線管)與控制電路組成適配器(圖形卡):CPU與顯示器的接口,由寄存器組、存儲(chǔ)器和控制電路組成主機(jī)圖形控制器顯示存儲(chǔ)器顯示控制器適配器CRT參考書(shū):C高級(jí)實(shí)用程序設(shè)計(jì)王士元清華大學(xué)出版社將要顯示的字符和圖形以數(shù)字形式存儲(chǔ)在卡上的視頻RAM中,再轉(zhuǎn)換成視頻模擬信號(hào)傳送給相應(yīng)的顯示器第16頁(yè)/共31頁(yè)顯示模式文本模式:顯示緩沖區(qū)中存放顯示字符的代碼(ASCII碼或漢字機(jī)內(nèi)碼),及字符的屬性,顯示屏幕按字符分成若干行、列,如80列25行圖形模式:顯示緩沖區(qū)中存放顯示屏幕上每點(diǎn)(象素)的顏色或灰度值,顯示屏幕按象素分成若干行、列,如640480一般開(kāi)機(jī)后的模式都是80×25的文本模式第17頁(yè)/共31頁(yè)2TurboC繪圖TurboC支持的適配器和圖形模式xy(0,0)分辨率:640480(0,0)(0,0)(20,50)(639,479)(400,150)圖形庫(kù)文件與圖形頭文件
graphics.lib與graphics.h圖形顯示的坐標(biāo)與象素適配器模式分辨率顏色數(shù)標(biāo)識(shí)符CGA(彩色圖形適配器)EGA(增強(qiáng)圖形適配器)VGA(視頻圖形陣列)03202004CGAC046402002CGAHI13202004CGAC123202004CGAC233202004CGAC3064020016EGAL0164035016EGAHI064020016VGAL0164035016VGAMED264048016VGAHI第18頁(yè)/共31頁(yè)圖形系統(tǒng)的初始化圖形系統(tǒng)初始化函數(shù)voidinitgraph(int*driver,int*mode,char*pathtodriver)其中;driver——顯示適配器驅(qū)動(dòng)程序的枚舉變量mode——圖形模式(模式號(hào)或模式標(biāo)識(shí)符)pathtodriver——適配器驅(qū)動(dòng)程序的尋找路徑,“”表示在當(dāng)前目錄下(*.BGI)enumgraphics_driver{DETECT,CGA,MCGA,EGA,EGA64,………,VGA,PC3270};DETECT——自動(dòng)檢測(cè)所用顯示適配器的類(lèi)型,將相應(yīng)的驅(qū)動(dòng)程序裝入,并將其最高顯示模式作為當(dāng)前顯示模式使用圖形方式時(shí)先進(jìn)行圖形系統(tǒng)初始化,檢測(cè)或設(shè)置指定的圖形模式第19頁(yè)/共31頁(yè)#include<graphics.h>main(){intdriver=DETECT,mode;
initgraph(&driver,&mode,“”);……….
closegraph();}initgraph(&driver,&mode,“d:\\tc\\bgi”);#include<graphics.h>main(){intdriver=VGA;intmode=VGAHI;
initgraph(&driver,&mode,“”);……….closegraph();}將指定模式的驅(qū)動(dòng)程序(*.GBI)從當(dāng)前路徑下調(diào)入內(nèi)存關(guān)閉圖形系統(tǒng)回到文本模式第20頁(yè)/共31頁(yè)圖形程序的獨(dú)立運(yùn)行問(wèn)題為使圖形方式的C源程序能夠脫離TC環(huán)境下運(yùn)行,應(yīng)對(duì)EGAVGA顯示器的驅(qū)動(dòng)程序.BGI轉(zhuǎn)換成.OBJ文件:C:\TC\BGIOBJEGAVGA然后,將EGAVGA.OBJ與GRAPHICS.LIB進(jìn)行連接:C:\TC\TLIBLIB\GRAPHICS.LIB+EGAVGA.OBJ程序中,initgraph()調(diào)用前要用registerbgidriver()進(jìn)行登記:
registerbgidriver(EGAVGA_driver);第21頁(yè)/共31頁(yè)清屏和恢復(fù)顯示方式函數(shù)voidcleardevice(void);voidclosegraph(void);基本圖形函數(shù)畫(huà)點(diǎn):putpixel()getpixel()坐標(biāo)移動(dòng):moveto()moverel()getx()gety()畫(huà)線:line()lineto()linerel()畫(huà)矩形和條形圖:rectangle()bar()橢圓、圓、圓弧和扇形:ellipse()circle()arc()pieslice()顏色控制函數(shù)設(shè)調(diào)色板:setpalette()設(shè)背景色:setbkcolor()設(shè)繪圖色:setcolor()關(guān)閉圖形系統(tǒng)回到文本模式第22頁(yè)/共31頁(yè)顏色值顏色名顏色顏色值顏色名顏色0123456789101112131415BLACKBLUEGREENCYANREDMAGENTABROWNLIGHTGRAYDARKGRAYLIGHTBLUELIGHTGREENLIGHTCYANLIGHTREDLIGHTMAGENTAYELLOWWHITE黑藍(lán)綠青紅洋紅棕淺灰深灰淡藍(lán)淡綠淡青淡紅淡洋紅黃白第23頁(yè)/共31頁(yè)設(shè)定線型函數(shù):setlinestyle()填充函數(shù)設(shè)定填充模式:setfillstyle()常用函數(shù):bar3d()sector()fillellipse()fillpoly()屏幕操作函數(shù)屏幕圖象存儲(chǔ)與顯示:getimage()putimage()imagesize()視口函數(shù)setviewport()clearviewport()圖形方式下的文本輸出文本輸出:outtext()outtextxy()定義文本字型:settextstyle()第24頁(yè)/共31頁(yè)文本的屏幕輸出#include<conio.h>屏幕坐標(biāo)(1,1)(80,25)第25頁(yè)/共31頁(yè)文本方式控制函數(shù)voidtextmode(intnewmode);TurboC支持5種文本顯示方式方式方式名行列和顏色0BW404025黑白1C404025彩色2BW808025黑白3C808025彩色7MONO8025單色-1LASTMODE上一次的顯示方式第26頁(yè)/共31頁(yè)文本方式下顏色控制函數(shù)文本顏色textcolor()文本背景textbackground()文本屬性textattr()BLINKRGBIRGB背景色字符色閃爍加亮字符顯示亮度控制函數(shù)highvideo()lowvideo()normvideo()第27頁(yè)/共31頁(yè)窗口設(shè)置與文本輸出函數(shù)window()cprintf()cputs()putch()清屏與光標(biāo)操作函數(shù)clrscr()clreol()delline()gotoxy()wherex()wherey()屏幕文本移動(dòng)與存取函數(shù)movetext()gettext()puttext()第28頁(yè)/共31頁(yè)菜單及其設(shè)計(jì)要點(diǎn)菜單作用:由若干任務(wù)項(xiàng)組成的畫(huà)面(界面),選擇一項(xiàng)按鍵確定后,即執(zhí)行相應(yīng)的功能菜單顯示方式:文本方式菜單與圖形方式菜單菜單種類(lèi):固定式菜單、彈出式菜單,下拉式菜單optmenu.cpopdown.ctext_men.cmenu_s.cmenu_gra.cplane_e.c第29頁(yè)/共31頁(yè)菜單設(shè)計(jì)要點(diǎn):
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度人工智能應(yīng)用借貸合同樣本
- 2025年樂(lè)器維修工勞動(dòng)合同(2篇)
- 2025年度互聯(lián)網(wǎng)醫(yī)療股權(quán)全部轉(zhuǎn)讓合同
- 2025年度教師培訓(xùn)項(xiàng)目勞動(dòng)合同匯編手冊(cè)
- 2025年度?;愤\(yùn)輸承運(yùn)合同范本修訂版
- 2025年度健身俱樂(lè)部會(huì)員隱私保護(hù)及數(shù)據(jù)安全合同
- 2025年度婚前房產(chǎn)合伙購(gòu)置風(fēng)險(xiǎn)控制合同
- 2025年度旅游景區(qū)商鋪?zhàn)赓U與知識(shí)產(chǎn)權(quán)保護(hù)合同
- 2025年度國(guó)際貿(mào)易培訓(xùn):履行進(jìn)口合同操作技能培訓(xùn)協(xié)議
- 2025年度建筑廢棄物分類(lèi)收集與運(yùn)輸合同范本
- 課堂精練九年級(jí)全一冊(cè)數(shù)學(xué)北師大版2022
- 著衣母嬰臥像教學(xué)設(shè)計(jì)
- 【課件】DNA片段的擴(kuò)增及電泳鑒定課件高二下學(xué)期生物人教版(2019)選擇性必修3
- GB/T 6417.1-2005金屬熔化焊接頭缺欠分類(lèi)及說(shuō)明
- 2023年湖北成人學(xué)位英語(yǔ)考試真題及答案
- 《社會(huì)主義市場(chǎng)經(jīng)濟(jì)理論(第三版)》第七章社會(huì)主義市場(chǎng)經(jīng)濟(jì)規(guī)則論
- 《腰椎間盤(pán)突出》課件
- 漢聲數(shù)學(xué)圖畫(huà)電子版4冊(cè)含媽媽手冊(cè)文本不加密可版本-29.統(tǒng)計(jì)2500g早教
- simotion輪切解決方案與應(yīng)用手冊(cè)
- 柴油發(fā)電機(jī)運(yùn)行檢查記錄表格
- DSC曲線反映PET得結(jié)晶度
評(píng)論
0/150
提交評(píng)論