


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、第七章習(xí)題7(p184p187),7、17、7全做,7、87、12中選做兩道,要求給出程序執(zhí)行結(jié)果。71、#includeintSquare(inti)returni*i;intmaininti=0;i=Square(i);for(;i3;i+)staticinti=1;i+=Square(i);printf(%d,i);printf(%dn,i);return0;結(jié)果:結(jié)果分析:開(kāi)頭定義square函數(shù)功能:計(jì)算一個(gè)數(shù)得平方入口參數(shù):整數(shù)x返回值:i*i主函數(shù):i=0;進(jìn)入循環(huán):靜態(tài)變量i=1;i=i+square(1)=2;輸出2;循環(huán)變量i=0+1=1;i=13成立靜態(tài)變量i=i+s
2、quare(2)=2+4=6;輸出6;循環(huán)變量i=i+1=2;I=23成立靜態(tài)變量(i保持原值)i=6;i=i+square(6)=6+36=42;輸出42;循環(huán)變量i=i+1=3;I=33不成立退出循環(huán)輸出循環(huán)變量i=372、#includeinthour,minute,second;/*定義全局變量*/voidupdatesecond+;if(second=60)second=0;minute+;if(minute=60)minute=0;hour+;if(hour=24)hour=0;voiddisplayprintf(%d:%d:%dn,hour,minute,second);void
3、delayintt;for(t=0;t100000000;t+);/*用循環(huán)體為空語(yǔ)句得循環(huán)實(shí)現(xiàn)延時(shí)*/intmaininti;second=0;for(i=0;i1000000;i+)update;/*利用循環(huán)控制時(shí)鐘運(yùn)行時(shí)間*/display;/*顯示時(shí),分,秒*/delay;/*模一尺時(shí)間為1秒*/return0;結(jié)果:自動(dòng)跳出時(shí)間73、#include/*max函數(shù)功能:找兩個(gè)數(shù)得最大值入口參數(shù):兩個(gè)整數(shù)a,b返回值:兩數(shù)得最大值*/intmax(inta,intb)intmax=0;max=(ab)?a:b;returnmax;voidmainintx=0;/*輸入得兩個(gè)數(shù)x,y*/
4、inty=0;intm=0;/*m用丁接收max函數(shù)得返回值*/printf(inputtwointegernumbers:);scanf(%d,%d,&x,&y);m=max(x,y);printf(themaxnumberis%dn,m);結(jié)果:74#include/*LCM函數(shù)功能:計(jì)算兩個(gè)整數(shù)得最小公倍數(shù)入口參數(shù):兩整數(shù)a,b返回值:最小公倍數(shù)*/intLCM(inta,intb)(inti=0;/*循環(huán)變量*/intmin=0;/*循環(huán)尋找范圍得最小值*/intmax=0;/*循環(huán)尋找范圍得最大值*/min=(ab)?a:b;/*最小值為a,b中得最大值*/max=a*b;/*最大值
5、為a*b*/for(i=min;i=max;i+)(if(i%a=0&i%b=0)returni;voidmain(intx;/*鍵盤(pán)輸入兩整數(shù)x,y*/inty;intm;/*m用丁接收LCM數(shù)得返回值*/do/*輸入整數(shù)得合法數(shù)據(jù)*/printf(輸入兩個(gè)正整數(shù):);scanf(%d,%d,&x,&y);while(x0|y0);m=LCM(x,y);printf(最小公倍數(shù)為:%dn,m);結(jié)果:75、#includelongfact(intn);voidmaininti=0;/*循環(huán)變量*/intm=0;/*接收f(shuō)act函數(shù)得返回值*/doprintf(inputn:);scanf(%
6、d,&n);while(n0);for(i=1;i=n;i+)m=fact(i);printf(%d!=%ldn”,i,m);/*fact函數(shù)功能:計(jì)算n!入口參數(shù):n返回值:n!*/longfact(intn)staticlongp=1;p=p*n;returnp;結(jié)果:76、#includelongfact(intn);voidmaininti=0;/*循環(huán)變量*/intm=0;/*接收f(shuō)act函數(shù)得返回值*/longs=0;/*所求最終結(jié)果*/doprintf(inputn:);scanf(%d,&n);while(n0);for(i=1;i=n;i+)m=fact(i);s=s+m;p
7、rintf(1!+2!+、+n!=%ldn,s);/*fact函數(shù)功能:計(jì)算n!入口參數(shù):n返回值:n!*/longfact(intn)staticlongp=1;p=p*n;returnp;結(jié)果:77、窮舉法:#includevoidmain(intx=0;/*鍵盤(pán)鍵入兩個(gè)數(shù)*/inty=0;intm=0;/*接收Gcd得返回值*/doprintf(輸入兩個(gè)正數(shù):);scanf(%d,%d,&x,&y);while(x0|y0);m=Gcd(x,y);printf(最大公約數(shù):%dn,m);/*Gcd函數(shù)功能:計(jì)算兩數(shù)得最大公約數(shù)入口參數(shù):兩個(gè)正數(shù)a,b返回值:最大公約數(shù)*/intGcd(i
8、nta,intb)inti=0;intt=0;t=(a=1;i)if(a%i=0&b%i=0)returni;結(jié)果:(2) 歐幾里得算法#includeintGcd(inta,intb);voidmain(intx=0;/*鍵盤(pán)鍵入兩個(gè)數(shù)*/inty=0;intm=0;/*接收Gcd得返回值*/doprintf(輸入兩個(gè)正數(shù):);scanf(%d,%d,&x,&y);while(x0|y0);m=Gcd(x,y);printf(最大公約數(shù):%dn,m);/*Gcd函數(shù)功能:計(jì)算兩數(shù)得最大公約數(shù)入口參數(shù):兩個(gè)正數(shù)a,b返回值:最大公約數(shù)*/intGcd(inta,intb)intr=0;r=a%
9、b;if(r!=0)doa=b;b=r;r=a%b;while(r!=0);returnb;結(jié)果:(3) 遞歸方法:#includeintGcd(inta,intb);voidmainintx=0;/*鍵盤(pán)鍵入兩個(gè)數(shù)*/inty=0;intm=0;/*接收Gcd得返回值*/doprintf(輸入兩個(gè)正數(shù):);scanf(%d,%d”,&x,&y);while(x0|yb)returnGcd(ab,b);elsereturnGcd(b,ba);結(jié)果:79、#include/*old函數(shù)功能:計(jì)算第i個(gè)人得年齡入口參數(shù):人數(shù)i返回值:年齡*/intold(inti)(if(i=1)return10
10、;elsereturnold(i1)+2;voidmain(intx=5;/*人數(shù)為5*/inty=0;/*接收old函數(shù)得返回值*/y=old(x);printf(第五個(gè)人得年齡為:%dn”,y);結(jié)果:710、#includevoidmain(intflag=0;/*設(shè)置標(biāo)志變量*/inta=0;/*白位*/intb=0;/*十位*/intn=0;/*代表bac*/intp=0;/*代表bca*/intq=0;/*代表cab*/intr=0;/*代表cba*/inti=0;/*從100999中找abc*/intsum=0;/*觀眾計(jì)算得結(jié)果*/printf(-說(shuō)出您得計(jì)算結(jié)果:);scan
11、f(%d,&sum);for(i=100;i=999;i+)a=i/100;b=i/10%10;c=i%10;m=a*100+c*10+b;n=b*100+a*10+c;p=b*100+c*10+a;q=c*100+a*10+b;r=c*100+b*10+a;if(m+n+p+q+r)=sum)flag=1;/*一旦找到就退出循環(huán)*/break;if(flag=0)/*未找到說(shuō)明計(jì)算錯(cuò)誤*/printf(-您算錯(cuò)了!);else(printf(您想得數(shù)就是%d%d%dn,a,b,c);結(jié)果:二、收集資料并整理,敘述結(jié)構(gòu)化程序設(shè)計(jì)得基本思想;根據(jù)自己得編程,說(shuō)說(shuō)您對(duì)結(jié)構(gòu)化程序設(shè)計(jì)得理解。模塊化程
12、序設(shè)計(jì):1、定義:將系統(tǒng)劃分為若干個(gè)子系統(tǒng),任務(wù)劃分為若干個(gè)子任務(wù),本質(zhì)思想就就是實(shí)現(xiàn)不同層次得數(shù)據(jù)或過(guò)程得抽象過(guò)程。2、模塊分解得基本原則、保證模塊得相對(duì)獨(dú)立性高聚合、低耦合。高聚合:模塊內(nèi)部得聯(lián)系越緊密越好,就就是使模塊得功能要相對(duì)獨(dú)立與單一。低耦合:模塊之間得聯(lián)系越松越好,就就是使模塊之間得接口越簡(jiǎn)單越好。(1) 、模塊得實(shí)現(xiàn)細(xì)節(jié)對(duì)外不可見(jiàn)一一信息隱藏。外部:關(guān)心做什么;內(nèi)部:關(guān)心怎么做。實(shí)質(zhì):把不需要調(diào)用者知道得信息都封裝在模塊內(nèi)部,就是模塊得實(shí)現(xiàn)細(xì)節(jié)對(duì)外不可見(jiàn)。3、設(shè)計(jì)好模塊接口、接口指羅列出一個(gè)模塊得所有得與外部打交道得變量等、定義好后不要輕易改動(dòng)。(1) 、在模塊開(kāi)頭(文件得開(kāi)頭
13、)進(jìn)行函數(shù)聲明。4、結(jié)構(gòu)化程序設(shè)計(jì)思想:(1) 、逐步求精:將一個(gè)完整得、較復(fù)雜得問(wèn)題分解成若干個(gè)相對(duì)獨(dú)立得、較為簡(jiǎn)單得子問(wèn)題若這些子問(wèn)題還較為復(fù)雜可再分解它們,直到能夠容易得用某種高級(jí)語(yǔ)言表達(dá)為止。(2) 、自底向上:先編寫(xiě)出基礎(chǔ)程序段,然后再擴(kuò)大、擴(kuò)充與升級(jí)。(3) 、自頂向下:先寫(xiě)出結(jié)構(gòu)簡(jiǎn)單得、清晰得主程序來(lái)表達(dá)整個(gè)問(wèn)題;在此問(wèn)題中包含得復(fù)雜子問(wèn)題用子程序來(lái)實(shí)現(xiàn);直到每個(gè)細(xì)節(jié)都可用高級(jí)語(yǔ)言表達(dá)為止??偨Y(jié):逐步求精技術(shù)就是一種由不斷得自底向上修正得所補(bǔ)充得自頂向下得程序設(shè)計(jì)方法。其特點(diǎn):、程序結(jié)構(gòu)清晰、容易閱讀、容易修改、可簡(jiǎn)化程序得正確性驗(yàn)證,可減少程序調(diào)試得時(shí)間與復(fù)雜度。5、用逐步求精
14、實(shí)現(xiàn)技術(shù)求解問(wèn)題得步驟為:、對(duì)實(shí)際問(wèn)題進(jìn)行全局性分析、決策,確定數(shù)學(xué)模型。、確定程序得總體結(jié)構(gòu),將整個(gè)問(wèn)題分解成若干個(gè)相對(duì)獨(dú)立得子問(wèn)題。、確定子問(wèn)題得具體功能及其相互關(guān)系。、在抽象得基礎(chǔ)上,將整個(gè)問(wèn)題逐一精細(xì)化,直到能用確定得高級(jí)語(yǔ)言描述為止。我對(duì)結(jié)構(gòu)化程序設(shè)計(jì)得理解:1、由于將復(fù)雜程序分解,對(duì)每個(gè)子程序得檢查可局限于內(nèi)部,結(jié)構(gòu)化設(shè)計(jì)可減少錯(cuò)誤得發(fā)生,易尋找錯(cuò)誤。2、可精簡(jiǎn)程序設(shè)計(jì)得復(fù)雜程度,對(duì)一個(gè)特定得功能只需局限于一個(gè)相對(duì)獨(dú)立得子程序得設(shè)計(jì)。3、結(jié)構(gòu)化程序設(shè)計(jì)也就是模塊化程序設(shè)計(jì)得一種,增強(qiáng)可讀性。4、結(jié)構(gòu)化設(shè)計(jì)要注意參數(shù)之間得傳遞,實(shí)際就是以參數(shù)得傳遞為紐帶。三、收集資料,簡(jiǎn)要敘述C語(yǔ)言
15、編碼中應(yīng)注意得基本編碼規(guī)范。1、代碼行:(1) 、一行內(nèi)只寫(xiě)一條語(yǔ)句,一行代碼只定義一個(gè)變量。容易閱讀并且便于程序測(cè)試與寫(xiě)注釋。(2) 、在定義變量時(shí)同時(shí)初始化該變量??杀苊獬跏蓟贿z忘,或者引用未初始化得變量。2、對(duì)齊與縮進(jìn):(1) 、程序得分界符與一般獨(dú)占一行,且位于同一列,同時(shí)與應(yīng)用她們得語(yǔ)句左對(duì)齊,這樣便于查瞧與得配對(duì)情況(2) 、采用梯形層次對(duì)應(yīng)好個(gè)層次,同層次得代碼在同層次得縮進(jìn)層上,即位于同一層與之內(nèi)得代碼在右邊數(shù)格出左對(duì)齊。(3) 、一般用設(shè)置為4個(gè)空格得Tab鍵縮進(jìn)。3、空行及代碼行內(nèi)得空格(1) 、在每個(gè)函數(shù)定義結(jié)束后加一空行,能起到就是程序布局美觀、整潔與清晰得作用。(2) 、在一個(gè)函數(shù)體內(nèi),相鄰得兩組邏輯上緊密相關(guān)得語(yǔ)句塊之間加空行。(3) 、關(guān)鍵字后加空格,用于突出關(guān)鍵字。列如:int、float等后面至少加一個(gè)空格,if、for、while等后面加一個(gè)空格(4) 、函數(shù)名后面不加空格,一般與關(guān)鍵字區(qū)分開(kāi)(5) 、賦值、算術(shù)、關(guān)系、邏輯等運(yùn)算符得前后各加一個(gè)空格,但一元運(yùn)算符前后不加。(6) 、對(duì)表達(dá)式較長(zhǎng)得for、if語(yǔ)句,為了緊湊,可在適當(dāng)?shù)玫胤饺サ粢恍┛崭瘛?7) 、左圓括號(hào)向后緊跟,右圓括號(hào)、逗號(hào)、分號(hào)向前進(jìn)跟,緊跟處不留空格。(8) 、函數(shù)參數(shù)得逗號(hào)分隔符與for中得分號(hào)后面加一個(gè)空格
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年國(guó)家級(jí)科技園區(qū)企業(yè)孵化器租賃及綜合政策扶持實(shí)施協(xié)議
- 2025年度公立學(xué)校兼職教師崗位服務(wù)合作協(xié)議
- 2025年綠色節(jié)能保溫材料出口業(yè)務(wù)代理合同
- 2025年環(huán)保纖維原料供應(yīng)與銷售合作協(xié)議
- 2025年度建筑節(jié)能保溫巖棉材料供應(yīng)及施工技術(shù)指導(dǎo)服務(wù)合同
- 2025年度航空航天發(fā)動(dòng)機(jī)葉片復(fù)合材料加工承攬協(xié)議
- 2025年度醫(yī)院廢棄物回收利用與保密管理合同
- 2025年高端太陽(yáng)能光伏電站建設(shè)與綜合能源保障服務(wù)合同
- 2025年智能健身房設(shè)備租賃合同:健身器材及管理系統(tǒng)使用權(quán)正式移交
- 2025年城市軌道交通電力節(jié)能改造工程咨詢服務(wù)合同
- 降低產(chǎn)后乳房脹痛發(fā)生率
- NBT 35080-2016 水電站氣墊式調(diào)壓室設(shè)計(jì)規(guī)范
- 買(mǎi)房尾款結(jié)清合同范本
- 2024屆貴州省遵義市紅花崗區(qū)小升初數(shù)學(xué)高頻考點(diǎn)檢測(cè)卷含解析
- 小學(xué)體育訓(xùn)練記錄表
- 高中政治必刷題 高考真題 必修3《政治與法治》(原卷版)
- 知識(shí)題庫(kù)-人社勞動(dòng)知識(shí)競(jìng)賽測(cè)試題及答案(十一)
- 2024年四川省南充市道鑫雙語(yǔ)學(xué)校小升初必考題語(yǔ)文檢測(cè)卷含答案
- 《政治學(xué)概論》教學(xué)課件(總)
- 2024年昆山國(guó)創(chuàng)投資集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 中國(guó)慢性腎臟病患者高血壓管理指南(2023年版)解讀
評(píng)論
0/150
提交評(píng)論