C語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)_第1頁(yè)
C語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)_第2頁(yè)
C語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)_第3頁(yè)
C語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)_第4頁(yè)
C語(yǔ)言上機(jī)實(shí)驗(yàn)指導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩70頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)一 VC的使用一、實(shí)驗(yàn)?zāi)康膌 了解并掌握程序設(shè)計(jì)所必須的計(jì)算機(jī)基本操作技能l 了解并熟悉VC開(kāi)發(fā)環(huán)境l 了解并掌握VC開(kāi)發(fā)環(huán)境下的C程序的編譯、連接與運(yùn)行方法l 了解并掌握查找與排除程序編譯錯(cuò)誤的方法l 了解不同類型的程序錯(cuò)誤二、實(shí)驗(yàn)環(huán)境l 個(gè)人計(jì)算機(jī)一臺(tái),PIII500(或同等性能)以上CPU,128MB以上內(nèi)存,500MB以上硬盤剩余空間,SVGA彩色顯卡。l Windows XP操作系統(tǒng)l Microsoft Visual C+ 6.0(中文/英文)版三、實(shí)驗(yàn)內(nèi)容1 Visual C+開(kāi)發(fā)環(huán)境介紹Visual C+是一個(gè)功能強(qiáng)大的可視化軟件開(kāi)發(fā)工具。自從1993年,微軟公司(Micr

2、osoft)推出Visual C+ 1.0后,隨著其新版本的不斷問(wèn)世,Visual C+已成為專業(yè)程序員進(jìn)行軟件開(kāi)發(fā)的首選工具。雖然微軟公司推出了Visual C+.NET(Visual C+ 7.0),但它的應(yīng)用的很大的局限性,只適用于Windows 2000、Windows XP和Windows NT4.0。所以實(shí)際中,更多的是以Visual C+ 6.0為平臺(tái)。Visual C+ 6.0不僅是一個(gè)CC+編譯器,而且是一個(gè)基于Windows操作系統(tǒng)的可視化集成開(kāi)發(fā)環(huán)境(integrated development environment,IDE)。Visual C+ 6.0由許多組件組成,

3、包括編輯器、調(diào)試器以及程序向?qū)ppWizard、類向?qū)lass Wizard等開(kāi)發(fā)工具。 這些組件通過(guò)一個(gè)名為Developer Studio的組件集成為和諧的開(kāi)發(fā)環(huán)境。Visual C+為用戶開(kāi)發(fā)C程序提供了一個(gè)集成環(huán)境,這個(gè)集成環(huán)境包括:源程序的輸入和編輯,源程序的編譯和連接,程序運(yùn)行時(shí)的調(diào)試和跟蹤,項(xiàng)目的自動(dòng)管理,為程序的開(kāi)發(fā)提供各種工具,并具有窗口管理和聯(lián)機(jī)幫助等功能。Visual C+ 6.0開(kāi)發(fā)環(huán)境的界面如圖1所示。圖1 VC開(kāi)發(fā)環(huán)境2 VC環(huán)境下的C程序開(kāi)發(fā)盡管VC的功能很強(qiáng)大,但二級(jí)考試只是將其作為一個(gè)可視化的C編譯器來(lái)使用,因此要求考生掌握的操作很簡(jiǎn)單。2.1 啟動(dòng)VC在

4、計(jì)算機(jī)安裝VC開(kāi)發(fā)環(huán)境后,桌面都會(huì)出現(xiàn)一個(gè)VC的圖標(biāo),如圖2所示,雙擊該圖標(biāo)就可以啟動(dòng)VC。有的計(jì)算機(jī)上顯示的名稱是“Visual C+ 6.0”或“Microsoft Visual C+”等,但圖標(biāo)都是一樣的。也可以在“開(kāi)始”菜單的“所有程序”子菜單中,找到相應(yīng)的啟動(dòng)啟動(dòng)項(xiàng)。圖2 VC圖標(biāo)2.2 創(chuàng)建一個(gè)C源程序文件啟動(dòng)VC后,單擊“菜單欄”上的“文件菜單”,彈出一個(gè)下拉菜單,單擊其中的“新建”選項(xiàng),如圖3所示。圖3 創(chuàng)建C源程序單擊“新建”選項(xiàng)后,會(huì)彈出“新建”對(duì)話框,如圖4所示。選擇上方的“文件”選項(xiàng)卡,選中“C+ Source File”選項(xiàng)。然后再右方的“文件名(N)”一欄中為程序起

5、個(gè)名字,可以是任意字母和數(shù)字的組合,但其中不能有空格,并且最后一定要以“.c”結(jié)尾。然后在“位置(C)”一欄中為程序選擇一個(gè)合適的位置存放,也可以單擊圖4中劃圈的按鈕,會(huì)彈出一個(gè)對(duì)話框,讓用戶選擇存放的位置。我們現(xiàn)在把這個(gè)程序命名為“example-1.c”,放在D盤下的program文件夾中。圖4 “新建”對(duì)話框2.3 編寫(xiě)程序在單擊圖4中的“確定”按鈕后,VC就會(huì)在D盤program文件夾下創(chuàng)建一個(gè)名為“example-1.c”的C源程序,并在“程序編輯區(qū)”中打開(kāi)它,用戶可以在其中輸入程序,如圖5所示。圖5中是一個(gè)很簡(jiǎn)單的小程序,只有一條printf()函數(shù)調(diào)用語(yǔ)句,其功能是向屏幕上輸出一

6、行信息“Hello world!”。圖5 編寫(xiě)程序2.3 C源程序的編譯、連接與運(yùn)行C源程序文件是不能直接被計(jì)算機(jī)所執(zhí)行的,它需要通過(guò)編譯(Compile)和連接(Link)兩個(gè)步驟,才能生成能被計(jì)算機(jī)直接執(zhí)行的“可執(zhí)行文件”。整個(gè)過(guò)程如圖6所示,請(qǐng)牢記這張圖。圖6 C程序的編譯連接過(guò)程C源程序文件是文本文件,它的后綴名為“.c”,它不能被計(jì)算機(jī)直接執(zhí)行;經(jīng)過(guò)編譯后,生成目標(biāo)文件,它是二進(jìn)制文件,后綴名為“.obj”,它也不能被計(jì)算機(jī)直接執(zhí)行;再經(jīng)過(guò)連接(有的書(shū)籍稱為鏈接),生成可執(zhí)行文件,它是二進(jìn)制文件,后綴名為“.exe”,它可以被計(jì)算機(jī)直接執(zhí)行。注意:C程序的編譯連接過(guò)程一定要熟記,包括

7、每種文件的類型、后綴名、能否被計(jì)算機(jī)直接執(zhí)行,筆試常會(huì)考查該知識(shí)點(diǎn)。因此,在編寫(xiě)完C源程序后,首先要做的就是編譯。編譯實(shí)際上就是進(jìn)行語(yǔ)法檢查,以保證C源程序完全符合C語(yǔ)言的語(yǔ)法,沒(méi)有語(yǔ)法錯(cuò)誤。在VC開(kāi)發(fā)環(huán)境下,編譯C源程序的方法是單擊“菜單欄”的“組建”選項(xiàng),彈出一個(gè)下拉菜單,單擊其中的“編譯”選項(xiàng),如圖7所示?;蛘咭部梢詥螕魣D7中劃圈的按鈕,那是“編譯”的快捷鍵。圖7 C程序的編譯隨后,VC會(huì)彈出一個(gè)小對(duì)話框,如圖8所示,不用去理會(huì)它的具體含義,直接單擊“是”。圖8 C程序的編譯注意:如果在VC的使用過(guò)程中遇到類似的彈出小對(duì)話框,都不用去理會(huì)它的具體含義,直接單擊“是”即可。VC隨即開(kāi)始對(duì)C

8、源程序進(jìn)行語(yǔ)法檢查,其結(jié)果在VC底部的“編譯結(jié)果輸出區(qū)”中顯示,如圖9所示。圖9 編譯結(jié)果其中,“error(s)”代表語(yǔ)法錯(cuò)誤,“warning(s)”代表警告。圖9中的結(jié)果顯示,語(yǔ)法錯(cuò)誤(error(s))與警告(warning(s))的數(shù)量都為0,也就意味著程序編譯成功。在實(shí)際編程當(dāng)中,語(yǔ)法錯(cuò)誤(error(s))是絕對(duì)不允許存在,哪怕存在一個(gè)語(yǔ)法錯(cuò)誤(error(s)),程序都無(wú)法進(jìn)入下一步的連接和運(yùn)行,也就是編譯失敗。因此“error(s)”前面的錯(cuò)誤必須是“0”,才能進(jìn)入下一步的連接和運(yùn)行,否則就要改成程序中的錯(cuò)誤,并重新進(jìn)行編譯,直到編譯成功。而對(duì)于警告(warning(s)),

9、則可以不必理會(huì),因?yàn)樵斐删妫╳arning(s))的原因比較復(fù)雜,并不一定是因?yàn)檎Z(yǔ)法錯(cuò)誤。需要特別指出的是,編譯成功只能保證程序在語(yǔ)法上是正確的,并不能保證程序是無(wú)錯(cuò)的。例如,“奧巴馬是德國(guó)總理”,這句話在語(yǔ)法上是正確的,但在邏輯上卻是錯(cuò)誤。編譯器無(wú)法檢查出程序在邏輯上的錯(cuò)誤。由圖6可知,編譯結(jié)束后需要進(jìn)行連接,然后才能運(yùn)行。但在VC當(dāng)中,這兩部可以合并一步。在編譯成功后,“組建”菜單中的“執(zhí)行”選項(xiàng)就會(huì)出現(xiàn),直接單擊,VC就會(huì)連續(xù)進(jìn)行連接和執(zhí)行兩步操作,如圖10所示?;蛘咭部梢詥螕魣D10中劃圈的按鈕(紅色驚嘆號(hào)),那是“執(zhí)行”的快捷鍵。圖10 C程序的執(zhí)行程序在運(yùn)行后,VC會(huì)彈出一個(gè)黑色的

10、DOS界面,來(lái)顯示程序的運(yùn)行結(jié)果,如圖11所示。圖11 程序的運(yùn)行結(jié)果我們看到,運(yùn)行界面上出現(xiàn)了兩行信息,其中第一行是“Hello world!”,這是由程序中的printf()語(yǔ)句輸出的,正是“example-1.c”這個(gè)程序的運(yùn)行結(jié)果。而第二行“Press any key to continue”,它是由VC自動(dòng)輸出的提示信息,不屬于程序的運(yùn)行結(jié)果。事實(shí)上,任何程序在運(yùn)行結(jié)束后,VC都會(huì)在最后加上這樣一行提示信息。我們可以把它作為程序運(yùn)行結(jié)束的標(biāo)志,只有當(dāng)最后一行出現(xiàn)了“Press any key to continue”,才能證明程序正常運(yùn)行結(jié)束了。否則,程序可能在等待用戶輸入數(shù)據(jù),或者

11、陷入了死循環(huán)。2.4 關(guān)閉工作空間在完成一個(gè)程序的編寫(xiě)、編譯、連接和運(yùn)行后,如果要編寫(xiě)和運(yùn)行另一個(gè)程序,那么要把前一個(gè)程序的編輯區(qū)及其工作空間關(guān)閉。最簡(jiǎn)單的方法就是直接將整個(gè)VC關(guān)閉,然后重新啟動(dòng)。也可以單擊“菜單欄”上的“文件菜單”,彈出一個(gè)下拉菜單,單擊其中的“關(guān)閉工作空間”選項(xiàng),如圖12所示。這樣程序的編輯區(qū)和工作空間就一起關(guān)閉了。圖12 關(guān)閉工作空間注意:在編寫(xiě)和運(yùn)行另一個(gè)程序前,一定要關(guān)閉工作空間,而不能只是簡(jiǎn)單的把程序的編輯區(qū)關(guān)閉,這樣會(huì)造成下一個(gè)程序無(wú)法運(yùn)行。2.5 打開(kāi)開(kāi)已存在的C源程序文件要打開(kāi)一個(gè)已存在的C源程序文件,首先要知道該文件的位置。例如,前面的那個(gè)“example

12、-1.c”文件,我們知道它是放在D盤的program文件夾下的。下面,我們來(lái)用VC打開(kāi)它。單擊“菜單欄”上的“文件菜單”,彈出一個(gè)下拉菜單,單擊其中的“打開(kāi)”選項(xiàng),如圖13所示。圖13 打開(kāi)C源程序文件隨后,會(huì)彈出一個(gè)“打開(kāi)”對(duì)話框,如圖14所示。單擊圖14中劃圈的按鈕,就可以在彈出的下拉界面中選擇要到達(dá)的位置?,F(xiàn)在選中D盤,然后雙擊D盤中的program文件夾,就可以進(jìn)入該文件夾了,如圖15所示。圖14 “打開(kāi)”對(duì)話框默認(rèn)情況下,“打開(kāi)”對(duì)話框只會(huì)顯示CC+程序或工程文件。但用VC也可以打開(kāi)其它類型的文件(在程序設(shè)計(jì)題的解題技巧中會(huì)用到該操作),只要單擊圖15中劃圈的按鈕,然后再?gòu)棾龅南吕?/p>

13、單中選中“所有文件(*.*)”即可顯示所有類型的文件。用鼠標(biāo)單擊選中要打開(kāi)的文件“example-1.c”然后單擊右方的“打開(kāi)”按鈕,即可打開(kāi)該文件。圖15 打開(kāi)文件3 C程序編譯錯(cuò)誤的查找與排除在實(shí)際的程序編寫(xiě)過(guò)程中,語(yǔ)法錯(cuò)誤時(shí)難免的,尤其是對(duì)初學(xué)者而言。編寫(xiě)的程序中出現(xiàn)語(yǔ)法錯(cuò)誤是很正常的事情,沒(méi)有必要感到急躁或灰心。平時(shí)的練習(xí)中犯些錯(cuò)誤,是有助于提高程序設(shè)計(jì)水平的。VC為我們提供了一個(gè)輔助功能,幫助我們查找和排除程序中的編譯錯(cuò)誤。以前面的那個(gè)簡(jiǎn)單程序?yàn)槔?,故意將“printf("Hello world!n");”語(yǔ)句最后的那個(gè)分號(hào)(;)去掉,這樣很明顯就出現(xiàn)了一個(gè)語(yǔ)法錯(cuò)

14、誤。事實(shí)上,初學(xué)者也常犯這樣的錯(cuò)誤?,F(xiàn)在,再次編譯這個(gè)源程序,編譯結(jié)果顯示,出現(xiàn)了一個(gè)語(yǔ)法錯(cuò)誤,編譯失敗,如圖16所示。圖16 程序的編譯結(jié)果在編譯失敗的情況下,“執(zhí)行”按鈕是灰色,不可點(diǎn)擊。下面要做的就是要找出這個(gè)語(yǔ)法錯(cuò)誤。將圖16中劃圈的滾動(dòng)條向上拖動(dòng),會(huì)看到一行信息“D:programexample-1.c(6) : error C2143: syntax error : missing '' before ''”,如圖17所示。這是一行錯(cuò)誤提示信息,辨認(rèn)的標(biāo)志在“error C2143”上,“error”意味著該行是語(yǔ)法錯(cuò)誤的提示信息(如果是“warni

15、ng”則意味著該行警告錯(cuò)誤的提示信息,不用去管它),“C2143”是錯(cuò)誤代碼。把鼠標(biāo)移到該行的任意位置上,并雙擊,該行錯(cuò)誤提示信息變?yōu)樘m色,如圖17所示。圖17 錯(cuò)誤提示信息此時(shí),在回到“程序編輯區(qū)”,觀察它的變化,如圖18所示。圖18 程序編輯區(qū)注意到程序編輯區(qū)的做左端多了一個(gè)蘭色的小箭頭(圖中劃圈部分),該箭頭所指向的行就是該語(yǔ)法錯(cuò)出現(xiàn)的大概位置,可能在箭頭所指行,也可能在前一行或后一行。實(shí)際上,盡管錯(cuò)誤提示信息時(shí)英文的,但其中多數(shù)的單詞都很簡(jiǎn)單常見(jiàn),大致上是可以讀懂的。例如圖17中的語(yǔ)法錯(cuò)誤提示“D:programexample-1.c(6) : error C2143: syntax

16、error : missing '' before ''”,后半句的意思就是:在“”前丟了“;”。而蘭色箭頭又指出了該錯(cuò)誤的大概位置,所以應(yīng)該是能夠比較容易的排除該錯(cuò)誤的。附錄1中列出了常見(jiàn)的編譯錯(cuò)誤,可供需要時(shí)查閱。需要提醒的是,如果出了多個(gè)“error(s)”,那么一定要從第一個(gè)錯(cuò)誤信息提示行開(kāi)始查錯(cuò)。并且每排除一個(gè)錯(cuò)誤,就要重新編譯一次,因?yàn)楹竺娴腻e(cuò)誤可能是由于前面的錯(cuò)誤產(chǎn)生的。4 C程序的錯(cuò)誤類型4.1 語(yǔ)法錯(cuò)誤語(yǔ)法錯(cuò)誤是指不符合C語(yǔ)言的語(yǔ)法規(guī)定,例如左右括號(hào)數(shù)量不匹配、語(yǔ)句最后漏了分號(hào)等等,這些錯(cuò)誤會(huì)在編譯時(shí)被發(fā)現(xiàn)并指出。這些錯(cuò)誤都屬于“致命錯(cuò)誤”,不

17、改正是無(wú)法通過(guò)編譯的。對(duì)一些在語(yǔ)法上有輕微毛病但不影響程序運(yùn)行的問(wèn)題(如定義了某個(gè)變量但始終未使用),編譯時(shí)會(huì)發(fā)出“警告”。但“警告”不屬于“致命錯(cuò)誤”,程序可以通過(guò)編譯。但是在程序的運(yùn)行過(guò)程中,這些“警告”可能造成一些運(yùn)行時(shí)錯(cuò)誤。4.2 邏輯錯(cuò)誤程序沒(méi)有語(yǔ)法錯(cuò)誤,可以正常運(yùn)行,但結(jié)果不對(duì)。例如,要求a和b的和,可是卻寫(xiě)成了“a-b;”。語(yǔ)法上沒(méi)有錯(cuò),但求出的卻是a和b的差。這類錯(cuò)誤可能是由于設(shè)計(jì)算法時(shí)的錯(cuò)誤,也可能是由于在編寫(xiě)程序時(shí)出現(xiàn)的疏忽所致。這類錯(cuò)誤計(jì)算機(jī)是無(wú)法檢查出來(lái)的。4.3 運(yùn)行錯(cuò)誤 有時(shí)程序既無(wú)語(yǔ)法錯(cuò)誤,又無(wú)邏輯錯(cuò)誤,但程序不能正常運(yùn)行或結(jié)果不對(duì)。多數(shù)情況下,是由于數(shù)據(jù)不正確,

18、或數(shù)據(jù)類型不合適造成的。例如:要求a/b,如果b的值為非0程序不會(huì)有問(wèn)題,而如果b的值為0就為造成溢出(over-flow)錯(cuò)誤。四、總結(jié)與思考VC的使用是整個(gè)上機(jī)考試的基石,如果不能熟練地使用VC,那么編程能力根本無(wú)從提高,也會(huì)嚴(yán)重影響考試的發(fā)揮。因此,應(yīng)該要反復(fù)練習(xí)“實(shí)驗(yàn)內(nèi)容”中所講到的操作,并且用一些課本上的其它程序來(lái)進(jìn)行實(shí)驗(yàn)。尤其是“C編譯錯(cuò)誤的查找與排除”以及附錄1中常見(jiàn)的編譯錯(cuò)誤,如果能夠熟悉并掌握,能夠?qū)Τ绦蛟O(shè)計(jì)水平的提升起到很大的促進(jìn)作用。實(shí)驗(yàn)二 數(shù)據(jù)處理一、實(shí)驗(yàn)?zāi)康膌 熟悉并掌握數(shù)據(jù)輸入函數(shù)的格式與應(yīng)用l 熟悉并熟悉數(shù)據(jù)輸出函數(shù)的格式與應(yīng)用l 進(jìn)一步熟悉VC的使用l 學(xué)習(xí)獨(dú)立

19、排除程序中的編譯錯(cuò)誤二、實(shí)驗(yàn)環(huán)境l 個(gè)人計(jì)算機(jī)一臺(tái),PIII500(或同等性能)以上CPU,128MB以上內(nèi)存,500MB以上硬盤剩余空間,SVGA彩色顯卡。l Windows XP操作系統(tǒng)l Microsoft Visual C+ 6.0(中文/英文)版三、實(shí)驗(yàn)內(nèi)容1 程序閱讀與分析注意:以下在書(shū)寫(xiě)時(shí),用“”代表空格,用“”代表回車換行。1.1 printf()函數(shù)閱讀以下程序,并分析預(yù)測(cè)程序的運(yùn)行結(jié)果,然后上機(jī)驗(yàn)證。/*example-1.c*/#include <stdio.h>main()int a = 5, b = 7;float x =67.8564, y = -789

20、.124;char c = 'A'long n = 1234567;printf("%d%dn", a, b);printf("%3d%3dn", a, b);printf("%f,%fn", x, y);printf("%8.2f,%8.2f,%.4f,%.4f,%3f,%3fn", x, y, x, y, x, y);printf("%e,%10.2en", x, y);printf("%c,%d,%o,%xn",c,c,c,c);printf("

21、;%ld,%lo,%xn", n, n, n);分析預(yù)測(cè)的運(yùn)行結(jié)果:上機(jī)驗(yàn)證的運(yùn)行結(jié)果:1.2 scanf()函數(shù)以下程序中的scanf語(yǔ)句用于輸入數(shù)據(jù),目標(biāo)是使得a的值為3,b的值為7,m的值為5,n的值為9,x的值為8.5,y的值為71.82,c1的值為A,c2的值為a,即屏幕上應(yīng)出現(xiàn)以下的輸出結(jié)果:a=3 b=7m=5 n=9x=8.500000 y=71.820000c1=A c2=a那么應(yīng)該從鍵盤上怎樣輸入數(shù)據(jù)?請(qǐng)上機(jī)驗(yàn)證,并把正確的結(jié)果寫(xiě)下來(lái)。程序中的printf語(yǔ)句會(huì)把各個(gè)變量的值輸出。/*example-2.c*/#include <stdio.h>mai

22、n()int a, b, m, n;float x, y;char c1, c2;/*以下scanf語(yǔ)句用于輸入數(shù)據(jù)*/scanf("a=%d b=%d", &a, &b);scanf("%d,%d", &m, &n);scanf(" %f %e", &x, &y);scanf(" %c %c", &c1, &c2);/*以下printf語(yǔ)句用于輸出各變量數(shù)據(jù),驗(yàn)證結(jié)果*/ printf("n以下是輸出結(jié)果:n");printf(&

23、quot;a=%d b=%dn", a, b);printf("m=%d n=%dn", m, n);printf("x=%f y=%fn", x, y);printf("c1=%c c2=%cn", c1, c2);正確的輸入格式是:1.3 putchar()與getchar()函數(shù)觀察分析以下程序,選出對(duì)應(yīng)的輸入與輸出,并上機(jī)驗(yàn)證。/*example-3.c*/#include <stdio.h>int main()char c1, c2, c3;c1 = getchar();c2 = getchar();c

24、3 = getchar(); printf("n以下是輸出:n");putchar(c1);putchar(c2);putchar(c3);printf("n");輸入:A ) abc B ) abc C ) ab輸出:A ) a B ) abc C ) ab b在三組輸入與輸出中:輸入( )與輸出( )對(duì)應(yīng)輸入( )與輸出( )對(duì)應(yīng)輸入( )與輸出( )對(duì)應(yīng)2 程序編寫(xiě)按要求編寫(xiě)程序或?qū)⒊绦蛱畛渫暾?.1 顯示圖形在花括號(hào)()之間填入適當(dāng)?shù)恼Z(yǔ)句,并運(yùn)行,使其能夠顯示圖1所示的圖形。/*example-4.c*/#include <stdio.h

25、>main 【解題提示】可以使用printf()語(yǔ)句按行直接輸出。圖1 example-4.c程序的輸出結(jié)果2.2 溫度轉(zhuǎn)換在花括號(hào)()之間劃線的部分填空,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。該程序的功能是從鍵盤上輸入一個(gè)實(shí)數(shù)F,代表華氏溫度。將華氏溫度轉(zhuǎn)換為攝氏溫度C(實(shí)數(shù))并輸出,攝氏溫度保留兩位小數(shù)。華氏溫度與攝氏溫度的關(guān)系式:例如,輸入:17.2輸出:The temprature is -8.22/*example-5.c*/#include <stdio.h>main() scanf("%lf", &f); printf(&quo

26、t;The temprature is n", c);【解題提示】(1)變量要先定義后使用。(2)控制輸出的實(shí)數(shù)的小數(shù)位的方法是“%n1.n2f”,n1和n2是兩個(gè)整數(shù),n1表示輸出的實(shí)數(shù)占的總位數(shù),n2表示輸出實(shí)數(shù)的小數(shù)位的位數(shù)。2.3 數(shù)據(jù)交換在花括號(hào)()之間劃線的部分填空,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。該程序的功能是從鍵盤上輸入兩個(gè)整數(shù),分別存放在變量a和b中,然后將a與b中的數(shù)據(jù)交換。例如,輸入:10 20輸出:before swap:a=10, b=20 after swap:a=20, a=10/*example-6.c*/#include <stdi

27、o.h>main()/*定義變量*/ /*輸入兩個(gè)整數(shù)*/printf("Input a and b:");scanf("%d%d", &a, &b);/*輸出數(shù)據(jù)交換前,a與b的值*/printf("before swap:");printf("a=%d, b=%dn", a, b);/*數(shù)據(jù)交換*/ /*輸出數(shù)據(jù)交換后,a與b的值*/printf("After swap:");printf("a=%d, b=%dn", a, b);【解題提示】?jī)蓚€(gè)整

28、數(shù)的交換是十分重要的,一定要掌握四、總結(jié)與思考數(shù)據(jù)的輸入和輸出,以及數(shù)據(jù)的基本數(shù)學(xué)運(yùn)算時(shí)整個(gè)程序設(shè)計(jì)的根基,因?yàn)槌绦蛟O(shè)計(jì)的本質(zhì)就是數(shù)據(jù)的獲取以及數(shù)學(xué)運(yùn)算。因此,一定要熟練掌握幾個(gè)數(shù)據(jù)輸入輸出函數(shù)的格式與應(yīng)用方法,以及基本數(shù)學(xué)運(yùn)算符的運(yùn)算法則。在完成以上實(shí)驗(yàn)的基礎(chǔ)上,有興趣的同學(xué)可以在課后思考以下問(wèn)題:思考題:數(shù)字加密在花括號(hào)()之間劃線的部分填空,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證輸入 1個(gè)四位數(shù),將其加密后輸出。方法是將該數(shù)每一位上的數(shù)字加 9,然后除以 10取余,做為該位上的新數(shù)字,最后將第 1 位和第 3 位上的數(shù)字互換,第 2 位和第 4 位上的數(shù)字互換,組成加密后的新數(shù)。例如

29、, 輸入:1257 輸出:The encrypted number is 4601/*think-1.c*/#include <stdio.h>main()/*n用來(lái)存放輸入的4位數(shù),n1存放4位數(shù)的第1位數(shù)字*/*n2存放4位數(shù)的第2位數(shù)字, n3存放4位數(shù)的第3位數(shù)字*/*n4存放4位數(shù)的第4位數(shù)字*/int n, n1, n2, n3, n4;scanf("%d", &n); /*獲取第1位數(shù)*/ /*獲取第2位數(shù)*/ /*獲取第3位數(shù)*/ /*獲取第4位數(shù)*/ /*第1位數(shù)加9對(duì)10取余*/ /*第2位數(shù)加9對(duì)10取余*/ /*第3位數(shù)加9對(duì)10

30、取余*/ /*第4位數(shù)加9對(duì)10取余*/*第 1 位和第 3 位上的數(shù)字互換,第 2 位和第 4 位上的數(shù)字互換*/ printf("The encrypted number is %dn", n);【解題提示】對(duì)于一個(gè)整數(shù)n而言,如果要獲取個(gè)位數(shù),那么直接對(duì)10取余就可以了:n%10。如果要獲得十位數(shù),那么首先要把個(gè)位數(shù)抹去:n/10,然后原來(lái)的十位數(shù)就變成了個(gè)位數(shù)。如果要獲得百位數(shù),那么首先要把十位數(shù)和個(gè)位數(shù)抹去:n/100,然后原來(lái)的百位數(shù)就變成了個(gè)位數(shù)。根據(jù)以上的分析,我們可以發(fā)現(xiàn),要獲得一個(gè)整數(shù)的個(gè)位數(shù),就將n對(duì)10取余(n%10);要抹去一個(gè)整數(shù)的最末x位,就將

31、n除以10x(n/10x)。實(shí)驗(yàn)三 選擇結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康膌 了解并掌握C語(yǔ)言表示邏輯值的方法(以0代表“假”,以非0代表“真”)l 了解并掌握邏輯運(yùn)算符的運(yùn)算法則l 熟悉并掌握邏輯表達(dá)式的使用l 熟練掌握if語(yǔ)句及其嵌套形式的使用l 熟練掌握if-ese語(yǔ)句及其嵌套形式的使用l 熟練掌握switch語(yǔ)句的使用二、實(shí)驗(yàn)環(huán)境l 個(gè)人計(jì)算機(jī)一臺(tái),PIII500(或同等性能)以上CPU,128MB以上內(nèi)存,500MB以上硬盤剩余空間,SVGA彩色顯卡。l Windows XP操作系統(tǒng)l Microsoft Visual C+ 6.0(中文/英文)版三、實(shí)驗(yàn)內(nèi)容注意:以下在書(shū)寫(xiě)時(shí),用“”代表空格

32、,用“”代表回車換行。1 程序閱讀與分析閱讀以下程序,并分析預(yù)測(cè)程序的運(yùn)行結(jié)果,然后上機(jī)驗(yàn)證。(在書(shū)寫(xiě)時(shí),用“”代表空格,用“”代表回車換行)1.1 switch語(yǔ)句閱讀以下程序,并分析預(yù)測(cè)程序的運(yùn)行結(jié)果,然后上機(jī)驗(yàn)證。/*example-7.c*/#include <stdio.h>main()int n;printf("Input n:");scanf("%d", &n);switch(n)case 1: printf("I am case 1.n");default: printf("I am de

33、fault.n");case 2: printf("I am case 2.n"); break;case 4: switch(n)case 4: printf("I am case 4n"); break;case 5: printf("I am case 5n");case 3: printf("I am case 3.n");分析預(yù)測(cè)的運(yùn)行結(jié)果:當(dāng)輸入1時(shí),輸出:當(dāng)輸入2時(shí),輸出:當(dāng)輸入3時(shí),輸出:當(dāng)輸入4時(shí),輸出:當(dāng)輸入5時(shí),輸出:上機(jī)驗(yàn)證的運(yùn)行結(jié)果:當(dāng)輸入1時(shí),輸出:當(dāng)輸入2時(shí),輸出:當(dāng)輸入3時(shí)

34、,輸出:當(dāng)輸入4時(shí),輸出:當(dāng)輸入5時(shí),輸出:2 程序編寫(xiě)按要求編寫(xiě)程序或?qū)⒊绦蛱畛渫暾?.1 求分段函數(shù)值在花括號(hào)()的scanf與printf語(yǔ)句之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證程序的功能是從求以下分段函數(shù)的值:x的值從鍵盤上輸入,根據(jù)x的值求y的值。例如,輸入:11輸出:y=32/*example-8.c*/#include <stdio.h>main()int x, y;scanf("%d", &x); /*可根據(jù)需要填寫(xiě)多條語(yǔ)句*/printf("y=%dn", y);【解答提示】使用if語(yǔ)句或

35、if-else語(yǔ)句皆可。2.2 判斷閏年在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是從鍵盤上輸入一個(gè)正整數(shù),代表年份,然后判斷這個(gè)正整數(shù)所代表的年份是否是閏年。閏年滿足以下兩個(gè)條件中的任意一個(gè):(1)能被4整除但不能被100整除。(2)能被100整除又能被400整除。例如,輸入:2008輸出:2008是閏年!輸入:3000輸出:3000不是閏年!/*example-9.c*/#include <stdio.h>main()/*year用來(lái)存儲(chǔ)年份*/*當(dāng)year是閏年,將leap賦值為1;當(dāng)year不是閏年,將leap賦值為0*/int

36、year, leap;scanf("%d", &year);/*判斷year是否是閏年。如果是,將leap賦值為1;否則賦值為0*/*可以根據(jù)需要填入任意多條語(yǔ)句*/*填寫(xiě)條件表達(dá)式,根據(jù)leap的值,輸出year是否是閏年*/if( ) printf("%d年是閏年!n", year);else printf("%d年不是閏年!n", year);【解答提示】一個(gè)整數(shù)x,如果能夠被整數(shù)y整除,那么x對(duì)y取余的余數(shù)為0(x%y=0),反之余數(shù)則不為0(x%y!=0)。2.3 計(jì)算個(gè)人所得稅在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序

37、補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是從鍵盤上輸入一個(gè)正整數(shù)(salary),代表工資,然后計(jì)算應(yīng)該繳納的個(gè)人所得稅(tax)是多少(結(jié)果保留兩位小數(shù))。個(gè)人所得稅是以850元為起點(diǎn)征收,超過(guò)850元的部分要按以下稅率(rate)征收個(gè)人所得稅:當(dāng)salary <= 850 時(shí),rate = 0;當(dāng)850 < salary <= 1350 時(shí),rate = 0.05;當(dāng)1350 < salary <= 2850 時(shí),rate = 0.1;當(dāng)2850 < salary <= 5850 時(shí),rate = 0.15;例如,輸入:1010.87輸出

38、:tax=8.04/*example-10.c*/#include <stdio.h>main()float salary, rate, tax;printf("Input salary:");scanf("%f", &salary); /*確定個(gè)人所得稅的稅率,根據(jù)需要可填入任意多條語(yǔ)句*/rate = 0.2; /*計(jì)算個(gè)人所得稅*/ printf("tax= n", tax);【解答提示】首先根據(jù)salary的值確定個(gè)人所得稅的稅率rate,然后按以下公式計(jì)算個(gè)人所得稅:tax=(salary - 850)

39、* rate;四、總結(jié)與思考選擇結(jié)構(gòu),又稱為分支結(jié)構(gòu),是程序設(shè)計(jì)的三大基本控制結(jié)構(gòu)之一,C語(yǔ)言中用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語(yǔ)句有:l if語(yǔ)句l if-else語(yǔ)句l switch語(yǔ)句難點(diǎn)在于if-else語(yǔ)句的嵌套,以及在switch語(yǔ)句中,break語(yǔ)句的用法,同學(xué)們一定要多加練習(xí)。在完成以上實(shí)驗(yàn)的基礎(chǔ)上,有興趣的同學(xué)可以在課后思考以下問(wèn)題:思考題:計(jì)算提成在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是計(jì)算企業(yè)的提成。企業(yè)的提成(P)是根據(jù)利潤(rùn)(I)來(lái)計(jì)算的:(1)當(dāng)I 100000(10萬(wàn)元),提成是利潤(rùn)的10%(2)當(dāng)100000 < I 200

40、000,低于或等于10萬(wàn)元的部分按10%提成,高于10萬(wàn)元的部分可提成7.5%(3)當(dāng)200000 < I 400000,低于或等于20萬(wàn)元的部分仍按上述方法提成(下同),高于20萬(wàn)元的部分可提成5%(4)當(dāng)400000 < I 600000,高于40萬(wàn)元的部分可提成3%(5)當(dāng)600000 < I 10000000,高于60萬(wàn)元的部分可提成1.5%(6)當(dāng)I > 1000000,高于100萬(wàn)元的部分可提成1%例如,如果利潤(rùn)I是65萬(wàn)元,提成由以下幾個(gè)部分構(gòu)成:(1)其中的10萬(wàn)元,可提成10%,就是1萬(wàn)元(2)10萬(wàn)元到20萬(wàn)元的部分(共計(jì)10萬(wàn)元),可提成7.5%,

41、就是0.75萬(wàn)元(3)20萬(wàn)元到40元的部分(共計(jì)20萬(wàn)元),可提成5%,就是1萬(wàn)元(4)40萬(wàn)元到60元的部分(共計(jì)20萬(wàn)元),可提成3%,就是0.6萬(wàn)元(5)60萬(wàn)元到65萬(wàn)元的部分(共計(jì)5萬(wàn)元),可提成1.5%,就是0.075萬(wàn)元以上部分相加,提成共計(jì)3.425萬(wàn)元(34250元)。因此,輸入:650000,應(yīng)輸出:P=34250.00元。/*think-2.c*/#include <stdio.h>main()/*I用來(lái)存放利潤(rùn),p用來(lái)存放提成*/float I, P;printf("Input I:");scanf("%f", &a

42、mp;I);/*計(jì)算提成,可根據(jù)需要填入任意多條語(yǔ)句*/printf("P = %fn", P);【解答提示】可使用if語(yǔ)句、if-else語(yǔ)句或者switch語(yǔ)句。實(shí)驗(yàn)四 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康膌 熟練掌握while語(yǔ)句及其嵌套形式的使用l 熟練掌握do-while語(yǔ)句及其嵌套形式的使用l 熟練掌握f(shuō)or語(yǔ)句及其嵌套形式的使用l 了解并掌握continue與break語(yǔ)句在循環(huán)結(jié)構(gòu)中的作用l 熟悉循環(huán)結(jié)構(gòu)程序段中語(yǔ)句的的執(zhí)行過(guò)程二、實(shí)驗(yàn)環(huán)境l 個(gè)人計(jì)算機(jī)一臺(tái),PIII500(或同等性能)以上CPU,128MB以上內(nèi)存,500MB以上硬盤剩余空間,SVGA彩色顯卡。l

43、 Windows XP操作系統(tǒng)l Microsoft Visual C+ 6.0(中文/英文)版三、實(shí)驗(yàn)內(nèi)容1. 數(shù)列求和在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能從鍵盤上輸入一個(gè)整數(shù)n,并計(jì)算以下數(shù)列的前n項(xiàng)和:例如,輸入:10輸出:s=14.266510/*example-11.c*/#include <stdio.h>main()int n, i;float s;scanf("%d", &n);/*求前n項(xiàng)和,結(jié)果存放在s當(dāng)中*/*可根據(jù)需要填入任意多條語(yǔ)句*/printf("s=%fn&quo

44、t;, s);【解題提示】使用for語(yǔ)句或while語(yǔ)句皆可。注意運(yùn)算對(duì)象的類型,“1/2”的值是0而不是0.5。2. 素?cái)?shù)在花括號(hào)()之間的橫線中填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是從鍵盤上輸入一個(gè)整數(shù)n,就n(包括n)以內(nèi)的素?cái)?shù)。素?cái)?shù)是指:只能被1和它本身整除的數(shù)(除了1以外,1不是素?cái)?shù))。例如,輸入:50輸出:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47/*example-12.c*/#include <stdio.h>main()int n, i, j;printf("Input n:&quo

45、t;);scanf("%d", &n);printf("以下是小于%d的素?cái)?shù):n", n); /*列舉2n之間的所有數(shù)*/for(i=2; ; i+) /*下面這個(gè)循環(huán)判斷i是否是素?cái)?shù)*/for(j = 2; ; j+) /*如果i能夠被j整除,就意味著i不是素?cái)?shù),循環(huán)可以提前終止*/if(i % j = 0) /*滿足括號(hào)中的條件意味著n是素?cái)?shù),則輸出*/if( ) printf("%d ", i);printf("n");【解題提示】我們可以有以下思路用于判斷某一個(gè)整數(shù)是否為素?cái)?shù):給定一個(gè)整數(shù)n,我們可

46、以從2開(kāi)始至n-1逐一檢查在這范圍之內(nèi)的整數(shù)是否可以被n整除。如果可以,則說(shuō)明整數(shù)n不是素?cái)?shù)。如果從2開(kāi)始至n-1范圍之內(nèi)的所有整數(shù)都不可以被n整除,那說(shuō)明整數(shù)n符合素?cái)?shù)的定義,所以整數(shù)n是一個(gè)素?cái)?shù)。判斷整數(shù)n能否被整數(shù)m整除的方法是:n%m=0。如果n對(duì)m取余等于0,那么n能夠被m整除;反之,n不能被m整除。3. 水仙花數(shù)在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是求出所有的“水仙花數(shù)”。所謂的“水仙花數(shù)”是指這樣的一個(gè)三位數(shù):其各位數(shù)字的立方和等于該數(shù)本身。例如:153是一個(gè)水仙花數(shù),因?yàn)?53=13+53+33。/*example-13.c*/

47、#include <stdio.h>main()【解題提示】(1)“水仙花數(shù)”是三位數(shù),因此只能是100999之間的數(shù)。(2)列舉100到999之間的每個(gè)數(shù)字,判斷它是否是水仙花數(shù),如果是就輸出,不是就不輸出。(3)“水仙花數(shù)”各位數(shù)字的立方和等于該數(shù)本身,因此判斷一個(gè)數(shù)n是不是“水仙花數(shù)”,要獲得它各個(gè)位上的數(shù)字,然后求立方和,看立方和是否等于n。四、總結(jié)與思考循環(huán)結(jié)構(gòu)是程序設(shè)計(jì)的三大基本控制結(jié)構(gòu)之一,C語(yǔ)言中用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語(yǔ)句有:l while語(yǔ)句l do-while語(yǔ)句l for語(yǔ)句此外,還要注意continue語(yǔ)句和break語(yǔ)句在循環(huán)結(jié)構(gòu)中的作用。編程時(shí),可以不使用c

48、ontinue語(yǔ)句和break語(yǔ)句,但筆試中一定會(huì)考查到。在完成以上實(shí)驗(yàn)的基礎(chǔ)上,有興趣的同學(xué)可以在課后思考以下問(wèn)題:思考題:打印等腰三角形在花括號(hào)()之間填寫(xiě)適當(dāng)?shù)恼Z(yǔ)句,將程序補(bǔ)充完整實(shí)現(xiàn)下述功能,并上機(jī)運(yùn)行驗(yàn)證。程序的功能是從鍵盤上輸入一個(gè)整數(shù)n,然后打印出n層有高的等腰三角形(由“*”組成)。例如,當(dāng)n為5時(shí),如圖1所示。圖1 5層高的等邊三角形/*think-3.c*/#include <stdio.h>main()【解題提示】實(shí)際上,這個(gè)等腰三角形是由“*”和空格兩種符號(hào)構(gòu)成。我們要做的,就是判斷出每層要輸出多少個(gè)“*”和空格。無(wú)論多高的等腰三角形,第一層都是1個(gè)“*”,

49、第二層是3個(gè)“*”,第三層是5個(gè)“*”最后一層都是“*”。很明顯,這是一個(gè)公差為2的等差數(shù)列。等差數(shù)列的第n項(xiàng)是:Sn = S1+ (n-1) * d(d為公差)因此,n層高的等腰三角形,在第n層就要打印出1+(n-1)*2個(gè)“*”,這是打印“*”號(hào)最多的一層。那么,在第x層(x<n),就要打印出1+(x-1)*2個(gè)“*”,剩下的部分就用空格填充。因此在第x層,共要打印(1+(n-1)*2) (1+(x-1)*2)個(gè)空格,其中一半的空格在最前方,另一半空格在最后端。因此,我們可以按如下步驟打印等腰三角形的第x層進(jìn)行:(1)求出該成要打印的星號(hào)數(shù)量:1+(x-1)*2(2)求出該成要打印的

50、空格數(shù)量:y = 1+(n-1)*2) (1+(x-1)*2(3)先打印出一半(y/2個(gè))的空格(4)接著打印出1+(x-1)*2個(gè)星號(hào)(5)最后再打印出另一個(gè)(y/2個(gè))的空格(6)最后再打印一個(gè)回車換行符(n)由于第(5)步打印出的空格不可見(jiàn),所以可以省略。實(shí)驗(yàn)五 函數(shù)(選做實(shí)驗(yàn))一、實(shí)驗(yàn)?zāi)康膌 了解并掌握函數(shù)的定義方法l 了解并掌握函數(shù)的調(diào)用方法l 了解并掌握函數(shù)參數(shù)的單向傳遞l 了解并掌握函數(shù)的遞歸調(diào)用二、實(shí)驗(yàn)環(huán)境l 個(gè)人計(jì)算機(jī)一臺(tái),PIII500(或同等性能)以上CPU,128MB以上內(nèi)存,500MB以上硬盤剩余空間,SVGA彩色顯卡。l Windows XP操作系統(tǒng)l Micros

51、oft Visual C+ 6.0(中文/英文)版三、實(shí)驗(yàn)內(nèi)容1. 求階乘將fun()函數(shù)填充完整,使其以遞歸調(diào)用的形式求參數(shù)n(n<=10)的階乘。例如,輸入:6輸出:6!=720注意:由于階乘的遞增速度很快,所以存放階乘結(jié)果的變量請(qǐng)使用long型,并且不要計(jì)算超過(guò)10的階乘,否則可能會(huì)造成數(shù)據(jù)溢出。/*exampel-14*/#include <stdio.h>long fun(int n)main()int m;long s;printf("Input m:");scanf("%d", &m);s = fun(m);pri

52、ntf("%d!=%ldn", m, s);【解題提示】使用直接遞歸調(diào)用。2. 年齡謎題有5個(gè)人坐在一起,問(wèn)第5個(gè)人多少歲?他說(shuō)比第4個(gè)大2歲。問(wèn)第4個(gè)人多少歲?他說(shuō)比第3個(gè)大2歲。問(wèn)第3個(gè)人多少歲?他說(shuō)比第2個(gè)大1歲。問(wèn)第2個(gè)人多少歲?他說(shuō)比第1個(gè)大2歲。最后問(wèn)第一個(gè)人,他說(shuō)是10歲。請(qǐng)問(wèn)第5個(gè)人有多大?寫(xiě)一函數(shù)fun來(lái)用遞歸調(diào)用來(lái)計(jì)算第5個(gè)人的歲數(shù),并在main函數(shù)中調(diào)用它。/*example-15.c*/【解題提示】使用直接遞歸可以很容易地求出。四、總結(jié)與思考一般而言,程序都是有多個(gè)函數(shù)組成的,因?yàn)橐粋€(gè)函數(shù)中實(shí)現(xiàn)的功能會(huì)造成邏輯混亂以及閱讀上的困難。模塊化的思想要求每個(gè)函數(shù)都只實(shí)現(xiàn)單一的功能,這也是實(shí)際的程序設(shè)計(jì)中,程序員所共同遵守的。因此,了解和掌握函數(shù)調(diào)用方法及函數(shù)之間的數(shù)據(jù)傳遞方法是非常重要的。只有掌握好了這些,才能讓多個(gè)函數(shù)完美融合成一個(gè)整體。函數(shù)調(diào)用的難點(diǎn)是遞歸調(diào)用,關(guān)鍵在于在某個(gè)時(shí)刻,遞歸要能夠結(jié)束,否則程序就會(huì)陷入無(wú)窮的遞歸。由于上機(jī)考試對(duì)程序的遞歸調(diào)用不做要求,因此本實(shí)驗(yàn)可選做或降低要求。但掌握好本實(shí)驗(yàn)有助于理解函數(shù)之間的數(shù)據(jù)傳遞。實(shí)驗(yàn)六 數(shù)組與指針一、實(shí)驗(yàn)?zāi)康膌 了解并掌握一維數(shù)組與二維數(shù)組的定義方法l 了解并掌握一維數(shù)組與二維數(shù)組

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論