電氣C實(shí)訓(xùn)指導(dǎo)書(shū)_第1頁(yè)
電氣C實(shí)訓(xùn)指導(dǎo)書(shū)_第2頁(yè)
電氣C實(shí)訓(xùn)指導(dǎo)書(shū)_第3頁(yè)
電氣C實(shí)訓(xùn)指導(dǎo)書(shū)_第4頁(yè)
電氣C實(shí)訓(xùn)指導(dǎo)書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)指導(dǎo)書(shū)電氣指導(dǎo)老師:2O1112.15精選范本C程序設(shè)計(jì)實(shí)訓(xùn)指導(dǎo)書(shū)(適用于電氣專(zhuān)業(yè))C程序設(shè)計(jì)實(shí)訓(xùn)是C程序設(shè)計(jì)課程的一個(gè)重要環(huán)節(jié),而且也是整個(gè)教學(xué)過(guò)程中理論聯(lián)系實(shí)際不可缺少的教學(xué)環(huán)節(jié)。為加強(qiáng)學(xué)生對(duì)于知識(shí)掌握的廣泛性、應(yīng)用性和動(dòng)手能力,以及對(duì)各有關(guān)先修課程的知識(shí)進(jìn)行較為全面而綜合的設(shè)計(jì)練習(xí),必須搞好C程序設(shè)計(jì)實(shí)訓(xùn)I。一、實(shí)訓(xùn)目標(biāo)強(qiáng)化C語(yǔ)言的各種知識(shí),通過(guò)一系列實(shí)驗(yàn),使學(xué)生獲得C語(yǔ)言的相關(guān)知識(shí)及一定的實(shí)際操作技能和用C編程的實(shí)踐經(jīng)驗(yàn),進(jìn)一步提高學(xué)生分析問(wèn)題、解決問(wèn)題的能力,以鞏固和加深所學(xué)的理論知識(shí)。為學(xué)生從事本行業(yè)相關(guān)工作打下比較堅(jiān)實(shí)的基礎(chǔ)。使學(xué)生獲得一定的實(shí)際操作技能和程序開(kāi)

2、發(fā)經(jīng)驗(yàn),進(jìn)一步提高學(xué)生分析問(wèn)題、解決問(wèn)題的能力,增強(qiáng)實(shí)踐技能,并培養(yǎng)學(xué)生勇于動(dòng)手、勤于動(dòng)手、熱愛(ài)本專(zhuān)業(yè)的思想。二、實(shí)訓(xùn)要求C實(shí)驗(yàn)應(yīng)在計(jì)算機(jī)機(jī)房進(jìn)行,通過(guò)合理選擇實(shí)驗(yàn)題目,使學(xué)生應(yīng)達(dá)到以下要求:本課題設(shè)計(jì)的基本要求:必須提交系統(tǒng)分析報(bào)告,包括系統(tǒng)的功能分析、系統(tǒng)的功能模塊設(shè)計(jì)程序設(shè)計(jì)的報(bào)告:包括程序的運(yùn)行環(huán)境、開(kāi)發(fā)環(huán)境、程序的詳細(xì)設(shè)計(jì)(包括模塊之間的關(guān)系,模塊的功能、主要功能實(shí)現(xiàn)的程序段)。時(shí)間夠用情況可以嘗試。系統(tǒng)的源程序,應(yīng)帶有詳細(xì)的備注。時(shí)間夠用情況可以嘗試。要求學(xué)生在實(shí)訓(xùn)期間,做好實(shí)訓(xùn)日記、以及實(shí)訓(xùn)所得資料、內(nèi)容的整理工作。實(shí)訓(xùn)結(jié)束時(shí),寫(xiě)出實(shí)訓(xùn)報(bào)告并有實(shí)訓(xùn)作品。實(shí)訓(xùn)報(bào)告內(nèi)容詳略得當(dāng),要有

3、程序及程序使用說(shuō)明。實(shí)訓(xùn)要在機(jī)房中計(jì)算機(jī)上完成整個(gè)程序的調(diào)試,通過(guò)實(shí)訓(xùn)I,對(duì)C課程的掌握上應(yīng)使學(xué)生應(yīng)達(dá)到以下要求:精選范本1、熟悉C的開(kāi)發(fā)環(huán)境。2、掌握C中的數(shù)據(jù)類(lèi)型、變量、常量、表達(dá)式和運(yùn)算符的用法。3、掌握C中順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)程序的編寫(xiě),語(yǔ)句的實(shí)現(xiàn)。使學(xué)生養(yǎng)成良好的編程習(xí)慣。培養(yǎng)分析問(wèn)題,解決問(wèn)題的能力。4、掌握C程序結(jié)構(gòu)的概念與使用方法。5、掌握數(shù)組類(lèi)型的使用方法。6、理解并掌握函數(shù)的概念和用法。7、掌握C編程的技巧。8、樹(shù)立實(shí)事求是、認(rèn)真工作的思想,培養(yǎng)嚴(yán)密的邏輯思維能力。三、實(shí)訓(xùn)內(nèi)容本次實(shí)訓(xùn)要求必須完成兩類(lèi)實(shí)訓(xùn)任務(wù):(1)學(xué)生對(duì)指定的12個(gè)實(shí)驗(yàn)項(xiàng)目進(jìn)行驗(yàn)證與設(shè)計(jì);(2)學(xué)

4、生從所給的6道實(shí)用題目中任意選擇5個(gè),自行進(jìn)行編程實(shí)現(xiàn)。1指定的實(shí)驗(yàn)項(xiàng)目驗(yàn)證與設(shè)計(jì)(對(duì)以下指定的12個(gè)實(shí)驗(yàn)項(xiàng)目進(jìn)行驗(yàn)證)1、數(shù)據(jù)類(lèi)型、運(yùn)算符和表達(dá)式一、實(shí)驗(yàn)?zāi)康? .熟練表達(dá)式的表示方法2 .了解表達(dá)式的運(yùn)行結(jié)果二、實(shí)驗(yàn)內(nèi)容和步驟用printf函數(shù)來(lái)輸入表達(dá)式運(yùn)行結(jié)果觀(guān)察以下表達(dá)式的結(jié)果=x<yy>xx!=y精選范本x=z-2x=x-2x>=zx<=z以上表達(dá)式的值(2)當(dāng)x=0,y=-1,z=1時(shí)當(dāng)x當(dāng)x=0,y=-1,z=1時(shí)x&&yx|yy&&xy|z以上表達(dá)式的值三、問(wèn)題討論1. “二”和“二=”有什么區(qū)別?2. "&a

5、mp;”和“&&”、丫和“|”有什么區(qū)別?2、數(shù)據(jù)類(lèi)型一、目的和要求了解C語(yǔ)言中數(shù)據(jù)類(lèi)型的意義。二、實(shí)驗(yàn)內(nèi)容和步驟1、下面的程序試圖計(jì)算由鍵盤(pán)輸入的任意兩個(gè)整數(shù)的平均值:精選范本ininclude<stdio.h>main()intx,y,a;scanf(%x,%y,&x,&y);a=(x+y)/2;printf(Theaverageis:"a);調(diào)試無(wú)語(yǔ)法錯(cuò)誤后,分別使用下列測(cè)試用例對(duì)上述程序進(jìn)行測(cè)試:(1)2,6(2)1,3(3)2,6(4)1,3(5) 2,6(6) 1,3(7)1,0(8)1,6(9)32800,33000(10)-

6、32800,330001、分析上述哪幾組測(cè)試用例較好?通過(guò)測(cè)試,你發(fā)現(xiàn)程序有什么錯(cuò)誤了嗎?若有錯(cuò)誤,請(qǐng)指出精選范本錯(cuò)誤原因。2、操作符sizeof用以測(cè)試一個(gè)數(shù)據(jù)或類(lèi)型所占用的存儲(chǔ)空間的字節(jié)數(shù)。請(qǐng)編寫(xiě)一個(gè)程序,測(cè)試各基本數(shù)據(jù)類(lèi)型所占用的存儲(chǔ)空間大小。三、分析與討論如何正確地選用數(shù)據(jù)類(lèi)型?(提示:給合前面做過(guò)的兩個(gè)實(shí)驗(yàn)及書(shū)本進(jìn)行討論總結(jié))3、運(yùn)行符與表達(dá)式一、目的和要求1、理解常用運(yùn)行符的意義。2、掌握C語(yǔ)言表達(dá)式的運(yùn)行規(guī)則。3、本實(shí)驗(yàn)可在學(xué)習(xí)了教材第2.3節(jié)后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容和步驟1、編寫(xiě)一個(gè)C語(yǔ)言程序,測(cè)試下列各表達(dá)式i,ji+1,j+1i+,j+i,+ji+j+i+j+要求在各表達(dá)式中i

7、和j都分別有相同的初值。在實(shí)驗(yàn)中注意下列問(wèn)題:(1)哪些表達(dá)式是錯(cuò)誤的?為什么?精選范本(2)理解+,+,+i,i+的意義和優(yōu)先級(jí)別精選范本2、編寫(xiě)一個(gè)程序,測(cè)試常用的十個(gè)運(yùn)算符的優(yōu)先順序。四、分析與討論分析總結(jié)運(yùn)算符的優(yōu)先級(jí)。4、輸入與輸出一、目的和要求1、掌握C語(yǔ)言程序輸入、輸出的方法和格式。2、本實(shí)驗(yàn)可在學(xué)習(xí)教材第二章后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容與步驟1、輸入并編輯下面的程序main()inta,b;floatc,d;longe,f;unsignedintu,v;charc1,c2;scanf(%d,%d”,a,b);scanf(%f,%f”,c,d);scanf(%ld,%ld”,e,f);s

8、canf(%o,%o”,u,v);scanf(%c,%c”,c1,c2);printf(n");printf(C=%10.2f,d=%10.2fn”,&c,&d);printf(e=17ld,f=%17ldn”,&e,&f);printf(U=%o,d=%on”,&u,&v);printf(Cl=%c,d=%cn”,&c1,&c2);這個(gè)程序有語(yǔ)法錯(cuò)誤嗎?為什么?2、調(diào)試上述程序無(wú)語(yǔ)法錯(cuò)誤后,用下面的測(cè)試數(shù)據(jù),對(duì)程序進(jìn)行測(cè)試:a=123,b=456,c=17.6,d=71837.65,e=70000,f=2174506,

9、u=62000,v=58765,c1='a',c2='b,分析運(yùn)行結(jié)果。特別注意輸入c1,c2的值是什么?什么原因?3、將輸入e和f的語(yǔ)句改為:scanf(%d,%d”,&e,&f);再用上述測(cè)試數(shù)據(jù)測(cè)試并分析結(jié)果。4、將輸入u、v的語(yǔ)句改為:scanf(%d,%d”,&u,&v);再用上述測(cè)試數(shù)據(jù)測(cè)試并分析結(jié)果。5、將輸出e,f的語(yǔ)句改為:printf(e=%17d,f=%17dn”,e,f);再用上述測(cè)試數(shù)據(jù)測(cè)試并分析結(jié)果。6、將輸出u、v的語(yǔ)句改為:printf(U=%u,v=%un”,u,v);或printf(U=%d,v=%dn

10、”,u,v);再用上述測(cè)試數(shù)據(jù)測(cè)試并分析結(jié)果。7、請(qǐng)讀者自己修改程序和改變數(shù)據(jù)輸入的形式,分析各種情況下的輸入與輸出8、在scanf(%c,%c”,&c1,&c2);語(yǔ)句之前加一個(gè)語(yǔ)句:getchar();9、驗(yàn)證轉(zhuǎn)義字符n與r的意義有何不同。三、分析與討論1、總結(jié)在printf函數(shù)中可以使用的各種格式指定符,并給出樣例。2、總結(jié)在printf函數(shù)中可以使用的各轉(zhuǎn)義字符及其功能。5、順序程序結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康? .進(jìn)一步掌握C程序的編輯、編譯、連接和運(yùn)行的過(guò)程。2 .熟悉順序結(jié)構(gòu)的程序設(shè)計(jì)方法。3 .熟練使用C的各種表達(dá)式。4 .熟練掌握輸入、輸出函數(shù)的使用。二、實(shí)驗(yàn)內(nèi)容

11、和步驟1 .輸入x,y,編寫(xiě)程序求z=x+|y|的值。實(shí)驗(yàn)步驟與要求:精選范本(1)程序中用scanf函數(shù)輸入x和y的值,請(qǐng)分析以下兩個(gè)語(yǔ)句scanf(%f%f”,x,y);scanf(%f%f”,&x,&y);哪一個(gè)是正確的,分別運(yùn)行之,分析程序運(yùn)行結(jié)果。如果scanf函數(shù)改為scanf(%f,%f”,&x,&y);應(yīng)該怎樣輸入數(shù)據(jù)。2 .編寫(xiě)輸入三角形的三邊長(zhǎng)a、b、c,求三角形面積area的程序。實(shí)驗(yàn)步驟與要求:(1)輸入前要加提示語(yǔ)句。(2)輸出結(jié)果前要有必要的文字說(shuō)明。(3)輸入一組數(shù)據(jù)3,4,5,觀(guān)察運(yùn)算結(jié)果。(4)輸入另外一組數(shù)據(jù)3,4,8,觀(guān)察運(yùn)

12、算結(jié)果,分析這個(gè)運(yùn)算結(jié)果是否有效。三、問(wèn)題討論上機(jī)各個(gè)環(huán)節(jié)所出現(xiàn)的錯(cuò)誤及解決的辦法精選范本6、選擇結(jié)構(gòu)一、實(shí)驗(yàn)?zāi)康?、了解條件與程序流程的關(guān)系2、了解用不同的數(shù)據(jù)使程序的流程覆蓋不同的語(yǔ)句、分支和路徑。3、本實(shí)驗(yàn)應(yīng)在學(xué)習(xí)教材第3.2節(jié)后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容和步驟1、題目有如下程序段:if(a>1&&b=0)x=x/a;if(a=2|x>1)x=x+1;為了更容易明白程序的邏輯結(jié)構(gòu),我們用圖5.1所示流程圖來(lái)加以描述要求增加一些輸入語(yǔ)句和輸出語(yǔ)句,以便使上述程序能在不同的a,b和x值下運(yùn)行,并且能觀(guān)察程序流程經(jīng)過(guò)(覆蓋)了哪些語(yǔ)句、哪些分支及哪些路徑。2、實(shí)驗(yàn)步驟記下分

13、別使用下列各組數(shù)據(jù)運(yùn)行時(shí)的操作流程。(1)a=1,b=1,x=1;(2) a=1,b=1,x=2;(3) a=3,b=0,x=1;(4) a=2,b=1,x=4;(5) a=2,b=1,x=1;(6) a=1,b=0,x=2;(7) a=2,b=1,x=1;(8)a=3,b=0,x=2三、分析討論(1) 用哪一組數(shù)據(jù)就可使程序中的每個(gè)處理語(yǔ)句都執(zhí)行一次?為了找出程序中各條處理語(yǔ)句中的錯(cuò)誤,應(yīng)該使用什么樣的數(shù)據(jù)對(duì)程序進(jìn)行測(cè)試?請(qǐng)上機(jī)驗(yàn)證自己的結(jié)論。(2) 用哪兩組數(shù)據(jù)就可以使程序段中的每個(gè)分支都運(yùn)行一次?這種情形與上面的討論有何不同?如果為了找出程序中積壓分支中的錯(cuò)誤,應(yīng)該使用什么樣的數(shù)據(jù)對(duì)程序

14、進(jìn)行測(cè)試?請(qǐng)上機(jī)驗(yàn)證自己的結(jié)論。(3) 用哪兩組數(shù)據(jù)就可以把判定框中的每個(gè)條件運(yùn)算都進(jìn)行一次?如果為了測(cè)試出判定條件中的錯(cuò)誤,應(yīng)使用哪些數(shù)據(jù)對(duì)程序進(jìn)行測(cè)試?請(qǐng)上機(jī)驗(yàn)證自己的結(jié)論。(4) 用哪四組數(shù)據(jù)才可以把各種條件的組合都檢測(cè)一遍?如果為了測(cè)試各種條件的組合的情形,應(yīng)該使用什么樣的測(cè)試數(shù)據(jù)?請(qǐng)上機(jī)驗(yàn)證自己的結(jié)論。(5) 用哪四組數(shù)據(jù)才可以把起始到終止的各條路徑都覆蓋一次?如果為了測(cè)試出程序在不同路徑下的錯(cuò)誤,應(yīng)該使用什么樣的測(cè)試數(shù)據(jù)?請(qǐng)上機(jī)驗(yàn)證自己的結(jié)論。四、進(jìn)一步的實(shí)驗(yàn)1 .題目從鍵盤(pán)上輸入三個(gè)數(shù),讓它們代表三條線(xiàn)段的長(zhǎng)度,請(qǐng)寫(xiě)一個(gè)判斷這三條線(xiàn)段所組成的三角形屬于什么類(lèi)型(不等邊,等腰,等邊

15、或不構(gòu)成三角形)的C程序。2 .請(qǐng)分別設(shè)計(jì)下列數(shù)據(jù)對(duì)自己的程序進(jìn)行測(cè)試:(1)找出各條語(yǔ)句中的錯(cuò)誤。(2)精選范本找出積壓分支中的錯(cuò)誤(3) 找出各條件中的錯(cuò)誤。(4) 找出各種條件組合中的錯(cuò)誤。(5) 找出各條路徑中的錯(cuò)誤。7、條件型循環(huán)結(jié)構(gòu)一、目的和要求1、掌握在程序設(shè)計(jì)條件型循環(huán)結(jié)構(gòu)時(shí),如何正確地設(shè)定循環(huán)條件,以及如何控制循環(huán)的次數(shù)2、了解條件型循環(huán)結(jié)構(gòu)的基本測(cè)試方法。3、本實(shí)驗(yàn)可在學(xué)習(xí)教材3.3節(jié)后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容與步驟1、下面是一個(gè)計(jì)算e的近似值(使誤差小于給定的6)的程序。main()doublee=1.0,x=1.0,y,detax;inti=1;printf(npleasei

16、nputenteraerror:");scanf(%lf”,&detax);y=1/x;while(y>=detax)x=x*I;精選范本y=1反;e=e+y;+i;printf(%12.10lf",e);2、實(shí)驗(yàn)步驟(1)、閱讀上面的程序,寫(xiě)出程序所依據(jù)的計(jì)算公式。(2)、當(dāng)輸入的detax各是什么值時(shí),能分別使程序按下面的要求運(yùn)行:.不進(jìn)入循環(huán);.只循環(huán)一次;.只循環(huán)兩次;.進(jìn)入死循環(huán)(程序?qū)⒂肋h(yuǎn)循環(huán)下去)。為了能知道程序循環(huán)了多少次,應(yīng)該在程序中增加一條什么樣的語(yǔ)句?(3)、原程序中while語(yǔ)句中的y>=detax,分別換成y>detax,

17、y=detax,y<detax,y<=detax觀(guān)察程序運(yùn)行將會(huì)有什么變化。假如不知道機(jī)器內(nèi)的程序中的各語(yǔ)句實(shí)際上是什么,分別輸入什么樣的detax來(lái)測(cè)試出while語(yǔ)句的循環(huán)條件寫(xiě)錯(cuò)了。(4)、把原程序中while語(yǔ)句之前的y=1/x語(yǔ)句去掉,觀(guān)察程序的運(yùn)行將會(huì)發(fā)生什么樣的變化。假如不知道機(jī)器內(nèi)的程序?qū)嶋H上是怎么寫(xiě)的,輸入什么樣的detax就能測(cè)試出少了上述這條語(yǔ)精選范本句。(5)、若把原程序中的+i換成i+,觀(guān)察程序的運(yùn)行發(fā)生了什么變化?假如不知道這條語(yǔ)句到底是怎么寫(xiě)的,輸入什么樣的detax就能測(cè)試出這條語(yǔ)句寫(xiě)錯(cuò)了.(6)、把原程序中的while結(jié)構(gòu)改寫(xiě)成do-while結(jié)構(gòu)

18、,再分別按上述的(2)、(3)兩步進(jìn)行實(shí)驗(yàn)。三、分析討論總結(jié)一下測(cè)試條件循環(huán)結(jié)構(gòu)的一般方法。8、計(jì)數(shù)型循環(huán)結(jié)構(gòu)1、 目的和要求1、 掌握如何正確地控制計(jì)數(shù)型循環(huán)結(jié)構(gòu)的次數(shù)2、 了解對(duì)計(jì)數(shù)型循環(huán)結(jié)構(gòu)進(jìn)行測(cè)試的基本方法3、 了解在嵌套循環(huán)結(jié)構(gòu)中,提高程序效率的方法4、 本實(shí)驗(yàn)應(yīng)在學(xué)習(xí)了教材第3.3.4進(jìn)行2、 實(shí)驗(yàn)內(nèi)容與步驟1、 實(shí)驗(yàn)題目下面是一個(gè)循環(huán)結(jié)構(gòu)的C程序。main()inti,j;longsum=0;精選范本for(i=1,i<=20,i+)for(j=1;j<=3;j+)sum=sum+(i+1)*(i+1)*(j+2)printf(sumis:%dn”,sum);2、 實(shí)

19、驗(yàn)步驟(1) 將上述程序中的和分別做什么樣修改,能使程序按如下要求運(yùn)行:.不循環(huán);.外循環(huán)1次,不進(jìn)入內(nèi)循環(huán);.外循環(huán),內(nèi)循環(huán)各1次;.外循環(huán)1次,內(nèi)循環(huán)2次;.外循環(huán)2次,內(nèi)循環(huán)1次;.外循環(huán)19次,內(nèi)循環(huán)3次;.外循環(huán)20次,內(nèi)循環(huán)2次;.外循環(huán)21次,內(nèi)循環(huán)3次。(2) 試修改程序,以便能知道控制表達(dá)式i=1;j<=20;i+和j=1;j<3;j+=各執(zhí)行了多少次?精選范本(3)內(nèi)循環(huán)與外循環(huán)的控制表達(dá)式進(jìn)行對(duì)換,觀(guān)察程序的執(zhí)行結(jié)果有無(wú)變化,并且觀(guān)察對(duì)換后的外循環(huán)與內(nèi)循環(huán)控制表達(dá)式執(zhí)行的總次數(shù)有無(wú)變化?(4)將(3)中程序?qū)憺閙ain()inti,j,k;longsum=0;

20、for(j=1.j<=3.j+)k=j+2;for(i=1;i<=20;i+)sum=sum+(i+1)*(i+1)*k;printf(sumis:%dn”,sum);觀(guān)察程序的執(zhí)行結(jié)果有無(wú)變化?(5)將(3)中程序改寫(xiě)為main()intI,j,m,n;精選范本longsum=0;for(j=1;j<=3;j+)(m=j+2;for(I=1;j<=20;I+)(n=I+1;sum=sum+m*m*k;)printf(Sumis:%dn”,sum);)觀(guān)察程序的執(zhí)行結(jié)果有無(wú)變化?(6)在(5)的程序中,若將外循環(huán)控制表達(dá)式分別做如下修改:.j=1;j<3;j+.j

21、=1;j=3;j+.j=1;j>=3;j+.j=1;j>3;j+.j=1;j<=3;j-.j=1;j>3;j-精選范本.j=1;j<3;j+.j=0;j<=3;j+=.j=0;j<3;j+j=1;j<=3;j+j=1;j<3;+j觀(guān)察程序的執(zhí)行結(jié)果有無(wú)變化?三、分析討論(1)如何測(cè)試計(jì)數(shù)型循環(huán)結(jié)構(gòu)的控制表達(dá)式中的錯(cuò)誤?從實(shí)驗(yàn)中你得到了哪些提高嵌套循環(huán)程序效率的啟示?9、有關(guān)函數(shù)的程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康? .理解和掌握多模塊的程序設(shè)計(jì)與調(diào)試的方法。2 .掌握函數(shù)的定義和調(diào)用的方法。3 .學(xué)會(huì)使用遞歸方法進(jìn)行程序設(shè)計(jì)。二、實(shí)驗(yàn)內(nèi)容和步驟1 .編寫(xiě)

22、一個(gè)函數(shù),判斷一個(gè)數(shù)是不是素?cái)?shù)。在主函數(shù)中輸入一個(gè)整數(shù),輸出是否是素?cái)?shù)的信息實(shí)驗(yàn)步驟與要求:(1)編寫(xiě)一個(gè)函數(shù)prime(n),返回給定整數(shù)n是否為素?cái)?shù)。(2)編寫(xiě)一個(gè)主函數(shù),輸入一個(gè)整數(shù),調(diào)用(1)中的函數(shù),判斷此整數(shù)是否為素?cái)?shù),并輸出結(jié)果。精選范本(3)對(duì)于屬于多函數(shù)程序,可以采用每個(gè)函數(shù)分別進(jìn)行編輯、編譯的方法,然后再連接、運(yùn)行。如果編譯有錯(cuò)時(shí),可分別修改,這樣便于調(diào)試。實(shí)驗(yàn)2和實(shí)驗(yàn)3也可以使用這樣的調(diào)試方法。2 .用梯形法求函數(shù)的定積分。實(shí)驗(yàn)步驟與要求:(1)編制一個(gè)函數(shù)sab(a,b,n),其功能是求函數(shù)f(x)在a,b上的定積分,其中n為區(qū)間a,b的等分?jǐn)?shù)。要求該函數(shù)在一個(gè)獨(dú)立的文

23、件中。(2)編制一個(gè)主函數(shù)以及計(jì)算被積函數(shù)值的函數(shù)f(x),在主函數(shù)中調(diào)用(1)中的函數(shù)計(jì)算并輸出下列積分值。要求主函數(shù)與函數(shù)f(x)在同一個(gè)文件中。(3)編制另一個(gè)主函數(shù)以及計(jì)算被積函數(shù)值的函數(shù)f(x),在主函數(shù)中調(diào)用(1)中的函數(shù)計(jì)算并輸出下列積分值。要求主函數(shù)與函數(shù)f(x)在同一個(gè)文件中。說(shuō)明:用梯形法求定積分,梯形公式為s=hf(a)+f(b)/2+hf(a+kh)其中,h=(b-a)/n3 .用遞歸方法編寫(xiě)程序,求n階勒讓德多項(xiàng)式的值,遞歸公式為1(n=0)pn(x)=x(n=1)(2n-1)xpn-1(x)-(n-1)pn-2(x)/n(n>1)實(shí)驗(yàn)步驟與要求:(1)根據(jù)遞歸

24、公式編制計(jì)算n階勒讓德多項(xiàng)式的遞歸函數(shù)p(n,x)。(2)編制一個(gè)主函數(shù),由鍵盤(pán)輸入n,x,調(diào)用(1)中的函數(shù)計(jì)算n階勒讓德多項(xiàng)式的值。精選范本(3)輸入(n,x)=(4,2)運(yùn)行該程序。然后自定義幾組數(shù)據(jù)再運(yùn)行該程序。程序調(diào)試說(shuō)明:多模塊的調(diào)試除了可以采用前面實(shí)驗(yàn)中采用的各種調(diào)試方法以外,還可以采用“回聲打印”的調(diào)試方法。當(dāng)函數(shù)之間要傳遞的數(shù)據(jù)較多時(shí),容易出錯(cuò)。這時(shí),在有關(guān)的輸入數(shù)據(jù)之后加上輸出語(yǔ)句,以便反映數(shù)據(jù)輸入的情況。在函數(shù)之間有數(shù)據(jù)傳遞后,再用輸出語(yǔ)句把傳遞后的數(shù)據(jù)輸出,這樣可以找到數(shù)據(jù)的錯(cuò)誤處,以便分析原因,三、問(wèn)題討論1 .小結(jié)函數(shù)的定義及調(diào)用方法。2 .小結(jié)函數(shù)中形參和實(shí)參的結(jié)

25、合規(guī)則。3 .編寫(xiě)和調(diào)試包10、 函數(shù)的定義及調(diào)用一、目的與要求1、 掌握C語(yǔ)言函數(shù)定義及調(diào)用的規(guī)則。2、 理解參數(shù)傳遞的過(guò)程。3、 本實(shí)驗(yàn)可在學(xué)習(xí)了教材第4.1節(jié)后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容與步驟1、 上機(jī)調(diào)試下面的程序,記錄系統(tǒng)給出的出錯(cuò)信息,并指出出錯(cuò)原因。main()精選范本int,y;printf(%dn”,sum(x+y);intsum(a,b)inta,b;return(a+b);2、 編寫(xiě)并調(diào)試一個(gè)求(n為整數(shù))的遞歸函數(shù),希望能在程序運(yùn)行過(guò)程中動(dòng)態(tài)地顯示遞歸函數(shù)被調(diào)用的軌跡。三、分析討論1、 針對(duì)以上實(shí)驗(yàn)內(nèi)容寫(xiě)出相應(yīng)的參數(shù)傳遞過(guò)程并分析結(jié)果。2、 討論參數(shù)的傳遞的幾種形式。11、有關(guān)

26、數(shù)組的程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康恼莆沼嘘P(guān)數(shù)組和字符串的程序設(shè)計(jì)方法。二、實(shí)驗(yàn)內(nèi)容和步驟1已知一組數(shù)據(jù)如下:6,3,42,23,35,71,98,67,56,38精選范本編寫(xiě)程序,把它們按從小到大的次序排列起來(lái)。程序如下:/*EX3-1*/# include<stdio.h># defineN10main()intaN=6,3,42,23,35,71,98,67,56,38;inti,j,t;printf(Thearraybeforesorted:");for(i=0;i<N;i+)printf(%4d“,ai);for(i=0;i<9;i+)for(j=i+1;j&

27、lt;10;j+)if(ai>aj)t=ai;ai=aj;精選范本aj=t;for(i=0;i<N;i+)printf(%4d“,ai);returno;2求矩陣:1 23A=456bij=aji 。的轉(zhuǎn)置矩陣,A矩陣的轉(zhuǎn)置矩陣B是這樣的矩陣,其元素程序如下:/*EX3-27#include<stdio.h>main()inta23=1,2,3,4,5,6;intb32,i,j;精選范本printf(ArrayA:n");for(i=0;i<=1;i+)for(j=0;j<=2;j+)printf(%5d",aij);printf(n&q

28、uot;);for(i=0;i<=1;i+)for(j=0;j<=2;j+)bji=aij;printf(ArrayB:n");for(i=0;i<=2;i+)for(j=0;j<=1;j+)printf(%5d",bij);printf(n");returno;精選范本12、數(shù)組一、目的和要求1、掌握數(shù)組定義的規(guī)則。2、掌握C語(yǔ)言數(shù)組的基本用法。3、本實(shí)驗(yàn)可在學(xué)習(xí)教材第5.2節(jié)后進(jìn)行。二、實(shí)驗(yàn)內(nèi)容與步驟1、編寫(xiě)程序,測(cè)試下列數(shù)組的定義方式是否正確(1) main()intn;scanf(%d",&n);intan;(2)

29、 main()constintn=10;intan;(3) #include<stdio.h>精選范本#defineM10main()intaM;(4) main()inta2+2*4;(5) #include<stdio.h>#defineM2#defineN8main()intaM+N;通過(guò)這一實(shí)驗(yàn),可以說(shuō)明什么問(wèn)題?2、運(yùn)行下面的C程序,根據(jù)運(yùn)行結(jié)果,可以說(shuō)明什么?main()intnum5=1,2,3,4,5;inti i;精選范本for(i=0;i<=5;i+)printf(%d”,numi);3、為一個(gè)起泡排序程序設(shè)計(jì)測(cè)試用例,并測(cè)試之。4、1983年

30、,在A(yíng)CM圖林獎(jiǎng)?lì)C獎(jiǎng)大會(huì)上,杰出的計(jì)算機(jī)科學(xué)家,UNIX的鼻祖。語(yǔ)言的創(chuàng)始人之一,圖林大獎(jiǎng)得主,KenThompson上臺(tái)的第一句話(huà)是:“我是一個(gè)程序員,在我的1040表上,我自豪地寫(xiě)上了我的職業(yè)。作為一個(gè)程序員,我的工作就是寫(xiě)程序,今天我將向大家提供一個(gè)我曾經(jīng)寫(xiě)過(guò)的最精練的程序。”這個(gè)程序如下:chars=t',0',n“,“;5nn/“,n/*(213linesdeleted)*/精選范本;/* Thestringisa* representationofthebody* ofthisprogramfrom0'* totheend*/main()inti;printf("”;for(i=0;si;i+)printf(t%d,n”,si);printf(%s”,s);請(qǐng)上機(jī)運(yùn)行這個(gè)程序,指出它的功能和運(yùn)行結(jié)果。三、分析討論通過(guò)實(shí)驗(yàn),分析定義與引用數(shù)組的區(qū)別。2小程

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論