第4章 順序結(jié)構(gòu)程序設(shè)計(jì)_第1頁(yè)
第4章 順序結(jié)構(gòu)程序設(shè)計(jì)_第2頁(yè)
第4章 順序結(jié)構(gòu)程序設(shè)計(jì)_第3頁(yè)
第4章 順序結(jié)構(gòu)程序設(shè)計(jì)_第4頁(yè)
第4章 順序結(jié)構(gòu)程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩47頁(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)介

第4章順序結(jié)構(gòu)程序設(shè)計(jì)C語(yǔ)言程序設(shè)計(jì)內(nèi)容提要算法的N-S圖表示程序的三種基本結(jié)構(gòu)數(shù)據(jù)輸入數(shù)據(jù)輸出程序舉例算法的N-S圖表示算法的特征:輸入輸出有窮性,算法只能執(zhí)行有限個(gè)步驟確定性,算法的每一步都須有確定的定義可行性,算法的每個(gè)步驟都可以被分解為可執(zhí)行的基本操作算法的N-S圖表示方法描述算法N-S圖流程圖偽代碼自然語(yǔ)言順序結(jié)構(gòu)NS圖BAABNY條件P分支結(jié)構(gòu)(選擇結(jié)構(gòu))多分選擇支結(jié)構(gòu)ABCDE表達(dá)式S當(dāng)型循環(huán)結(jié)構(gòu)當(dāng)P為真A當(dāng)P為真A直到型循環(huán)結(jié)構(gòu)直到P為假A直到P為假A程序的三種基本結(jié)構(gòu)N-S圖的五種基本結(jié)構(gòu)可以分為三類:順序結(jié)構(gòu),順序結(jié)構(gòu);選擇結(jié)構(gòu),二分支和多分支選擇結(jié)構(gòu);循環(huán)結(jié)構(gòu),當(dāng)型循環(huán)和直到型循環(huán)結(jié)構(gòu)。程序的三種基本結(jié)構(gòu)輸入一個(gè)整數(shù)a,計(jì)算a的平方,計(jì)算a的三次方,輸出a,a的平方以及a三次方。程序的三種基本結(jié)構(gòu)從鍵盤(pán)輸入一個(gè)字母ch,如果ch是大寫(xiě)字母則將它轉(zhuǎn)換成小寫(xiě)字母,如果ch是小寫(xiě)字母則將它轉(zhuǎn)換成大寫(xiě)字母,最后輸出字母ch和轉(zhuǎn)換后的字母。程序的三種基本結(jié)構(gòu)輸入正整數(shù)n,判斷n是否素?cái)?shù)。數(shù)據(jù)輸入字符輸入函數(shù)(getchar)從輸入設(shè)備輸入一個(gè)字符。調(diào)用形式為:getchar()例如:charch; ch=getchar(); putchar(ch);數(shù)據(jù)輸入格式輸入輸入任意類型的多個(gè)數(shù)據(jù)。調(diào)用形式為:scanf(格式控制字符串,地址列表)其中,格式控制字符串是用雙引號(hào)括起來(lái)的字符串,用來(lái)指定輸入格式,地址列表是用來(lái)接收輸入數(shù)據(jù)的變量的地址,多個(gè)地址之間用逗號(hào)分隔。數(shù)據(jù)輸入格式控制字符串里面包含兩種字符:(1)格式字符,指定輸入的數(shù)據(jù)類型以及格式由“%”和格式字符組成,如%c,%f等。在%和格式字符之間可以有格式說(shuō)明符,如%3d等。(2)普通字符,普通字符在輸入的時(shí)候要原樣輸入。字符串“%d,%f”包含一個(gè)普通字符“,”數(shù)據(jù)輸入格式字符作用d輸入十進(jìn)制整數(shù)o輸入八進(jìn)制整數(shù)x輸入十六進(jìn)制整數(shù)f輸入float型實(shí)數(shù),可以指數(shù)形式或小數(shù)形式輸入e與f相同g與f相同c輸入一個(gè)字符s輸入一個(gè)字符串?dāng)?shù)據(jù)輸入格式說(shuō)明符作用l用于輸入長(zhǎng)整型以及double型數(shù)據(jù)h用于輸入短整型數(shù)據(jù)整數(shù)用于指定輸入數(shù)據(jù)所占寬度*跳過(guò)本輸入項(xiàng)數(shù)據(jù)輸入(1)格式字符d,輸入一個(gè)整數(shù),用法:%d,輸入一個(gè)整數(shù);%ld,輸入一個(gè)長(zhǎng)整型數(shù);%hd,輸入一個(gè)短整型數(shù);%md(m為一個(gè)正整數(shù)),輸入一個(gè)整數(shù),寬度為m(包括符號(hào))。longk;

scanf(“%ld”,&k);數(shù)據(jù)輸入intj;scanf(“%3d”,&j);輸入12345回車(chē),則變量j的值為123輸入-12345回車(chē),則變量j的值為-12指定輸入寬度負(fù)號(hào)占一位寬度數(shù)據(jù)輸入(2)格式字符o,指定輸入一個(gè)八進(jìn)制整數(shù),基本用法為%o,。(3)格式字符x,指定輸入一個(gè)十六進(jìn)制整數(shù),基本用法為%x。帶格式說(shuō)明符的用法與格式字符d相同。數(shù)據(jù)輸入(4)格式字符f、e或g的作用相同,指定輸入一個(gè)float型實(shí)數(shù),用法為%f。變量為double型,則需加上格式說(shuō)明符l:doubleg;scanf(“%lf”,&g);輸入實(shí)型數(shù)據(jù)時(shí)也可以指定寬度,如:doubleg;scanf(“%4lf”,&g);運(yùn)行時(shí)輸入-3.14回車(chē),變量g的值是-3.1。數(shù)據(jù)輸入(5)格式字符c,指定輸入一個(gè)字符,用法為,格式說(shuō)明符不起作用charch;scanf(“%c”,&ch);輸入字符時(shí),空格和轉(zhuǎn)義字符都可以作為有效字符輸入。輸入空格,則變量ch的值為空格符;如直接按回車(chē),則變量ch的值為回車(chē)符。數(shù)據(jù)輸入(6)格式字符s,指定輸入字符串,保存字符串需要用到數(shù)組的概念,所以格式字符s留到數(shù)組的章節(jié)再講。數(shù)據(jù)輸入可以給多個(gè)不同類型的變量輸入值,地址列表中的各地址項(xiàng)用逗號(hào)分開(kāi)。如:intk;doubleg;intp;scanf(“%d%lf%x”,&k,&g,&p);數(shù)據(jù)輸入當(dāng)輸入多個(gè)數(shù)據(jù)時(shí),一個(gè)數(shù)據(jù)的輸入什么時(shí)候結(jié)束呢?分兩種情況:第一、只輸入數(shù)值型(整數(shù)或?qū)崝?shù))數(shù)據(jù),遇到以(1)遇空格、跳格(TAB鍵)或者回車(chē)鍵inti;doubleg;scanf(“%d%lf”,&i,&g);輸入23.14回車(chē)或者2TAB3.14回車(chē)或者2回車(chē)3.14回車(chē)數(shù)據(jù)輸入(2)遇寬度結(jié)束;如:inti;doubleg;scanf(“%3d%4lf”,&i,&g);輸入-123.14156,則i的值為-12,g的值為3.14數(shù)據(jù)輸入(3)遇非法輸入;如intk;doubleg;scanf("%d%lf",&k,&g);輸入12-3.14因?yàn)?2后面的符號(hào)無(wú)法解釋成整數(shù),所以結(jié)束第一個(gè)整數(shù)的輸入,故k的值為12,g的值為-3.14。數(shù)據(jù)輸入第二、輸入中包含字符型數(shù)據(jù),因?yàn)榭崭?、跳格(TAB鍵)或者回車(chē)鍵也是字符數(shù)據(jù)的有效輸入,所以空格、跳格(TAB鍵)或者回車(chē)鍵不能作為分隔輸入項(xiàng)的標(biāo)志。數(shù)據(jù)輸入chara;charb;scanf(”%c%c”,&a,&b);輸入x空格y回車(chē),則變量a的值為字符x,變量b的值為空格字符;輸入xTABy回車(chē),則變量a的值為字符x,變量b的值為T(mén)AB字符;輸入x回車(chē)y回車(chē),則變量a的值為字符x,變量b的值為回車(chē)符;輸入xy回車(chē),則a的值為字符x,b的值為字符y數(shù)據(jù)輸入inti;chara;scanf(“%d%c”,&i,&a);輸入12空格y回車(chē),則i的值為12,a的值為空格字符。輸入12y,則i的值為12,a的值為字符y。數(shù)據(jù)輸入格式控制字符串中有普通字符,則輸入的時(shí)候要原樣輸入,否則會(huì)出錯(cuò)。如:chara;charb;scanf(“%ck%c”,&a,&b);輸入xky回車(chē),則變量a的值為字符x,變量b的值為字符y;輸入xry回車(chē),則變量a的值為字符x,變量b的值為一個(gè)隨機(jī)值;輸入xk回車(chē),則變量a的值為字符x,變量b的值為回車(chē)符。數(shù)據(jù)輸入格式字符前面的說(shuō)明符*,用來(lái)表示跳過(guò)該輸入項(xiàng)。如:inta;intb;scanf("%2d%*3d%2d",&a,&b);第二個(gè)格式字符有一個(gè)*說(shuō)明符,表示相應(yīng)輸入的三位寬度的整數(shù)不賦給變量。運(yùn)行時(shí),如輸入123456789回車(chē),則變量a的值為12,變量b的值為67。數(shù)據(jù)輸出字符輸出函數(shù)(putchar)向終端輸出一個(gè)字符,調(diào)用形式為:putchar(ch)函數(shù)參數(shù)ch可以是字符常量、字符變量或者值為字符的表達(dá)式。charch='B'; putchar('A'); putchar(ch); putchar(ch+1);數(shù)據(jù)輸出格式輸出函數(shù)(printf)輸出多個(gè)不同類型的數(shù)據(jù)。調(diào)用形式為printf(格式控制字符串,輸出列表);其中,格式控制字符串是用雙引號(hào)括起來(lái)的字符串,用來(lái)規(guī)定輸出格式輸出列表是所有需要輸出的數(shù)據(jù)列表,多個(gè)輸出項(xiàng)之間用逗號(hào)分隔。數(shù)據(jù)輸出格式字符作用d以有符號(hào)十進(jìn)制形式輸出整數(shù)u以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù)o以無(wú)符號(hào)八進(jìn)制形式輸出整數(shù)x以無(wú)符號(hào)十六進(jìn)制形式輸出整數(shù)f以小數(shù)形式輸出實(shí)數(shù)(float和double),默認(rèn)輸出6位小數(shù)e以指數(shù)形式輸出實(shí)數(shù)(float和double),數(shù)字部分輸出6位小數(shù)g選擇f和e輸出寬度較短的一種,不輸出無(wú)意義的0c輸出一個(gè)字符s輸出一個(gè)字符串?dāng)?shù)據(jù)輸出格式說(shuō)明符作用l用于輸出長(zhǎng)整型,可以用在格式符d、u、o、x前面m(正整數(shù))輸出的最小寬度.n(正整數(shù)或0)對(duì)實(shí)數(shù),表示輸出的小數(shù)位數(shù);對(duì)字符串,表示輸出的字符個(gè)數(shù)-輸出的數(shù)字或字符在域內(nèi)向左對(duì)齊數(shù)據(jù)輸出(1)格式字符d,以有符號(hào)十進(jìn)制形式輸出整數(shù),有以下幾種用法:%d,輸出一個(gè)整型;%ld,輸出一個(gè)長(zhǎng)整型%md,輸出一個(gè)整型,總寬度為m,右對(duì)齊%-md,輸出一個(gè)整型,總寬度為m,左對(duì)齊數(shù)據(jù)輸出一個(gè)整數(shù),無(wú)論是八進(jìn)制、十進(jìn)制還是十六進(jìn)制都可以以十進(jìn)制形式輸出。如:inta=10;intb=010;intc=0x10;printf("%d,%d,%d\n",a,b,c);數(shù)據(jù)輸出整數(shù)的位數(shù)超過(guò)了指定的寬度,則按實(shí)際位數(shù)輸出;整數(shù)的位數(shù)小于指定的寬度,補(bǔ)空格。inta=1234;printf("%3d%8d%-8d%d\n",a,a,a,a);輸出結(jié)果為:1234123412341234數(shù)據(jù)輸出(2)格式字符u,以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù),基本用法為%u,格式說(shuō)明符同d無(wú)符號(hào)整數(shù)也可以用格式字符d輸出,但是如果要輸出的數(shù)超出了有符號(hào)整數(shù)類型的取值范圍,結(jié)果就將發(fā)生改變。unsigneda=4294967294;printf("%d,%u\n",a,a);輸出結(jié)果為:-2,4294967294按整型輸出,出錯(cuò)數(shù)據(jù)輸出負(fù)數(shù)也可以用格式字符u輸出,但是結(jié)果會(huì)發(fā)生改變。如:inta=-100;printf("%d,%u\n",a,a);輸出結(jié)果為:-100,4294967196數(shù)據(jù)輸出(3)格式字符o,以無(wú)符號(hào)八進(jìn)制形式輸出整數(shù)(不輸出前導(dǎo)符0),基本用法為%o。(4)格式字符x,以無(wú)符號(hào)十六進(jìn)制形式輸出整數(shù)(不輸出前導(dǎo)符0x),基本用法為%x,o和x的格式說(shuō)明符的用法與d相同數(shù)據(jù)輸出(5)格式字符f,以小數(shù)形式輸出實(shí)數(shù),默認(rèn)輸出6位小數(shù),有以下幾種用法:%f,輸出實(shí)數(shù),小數(shù)位保留6位,不足補(bǔ)0;%m.nf,輸出實(shí)數(shù),總寬度為m位(小數(shù)點(diǎn)占1位),小數(shù)位保留n位,不足補(bǔ)0,右對(duì)齊;%.nf,輸出實(shí)數(shù),不指定總寬度,只指定小數(shù)位保留n位,不足n位則補(bǔ)0,右對(duì)齊;%-m.nf,與%m.nf相同,只是向左對(duì)齊;%-.nf,與%.nf相同,只是向左對(duì)齊。數(shù)據(jù)輸出floata=2.718;doubleb=3.1415926;printf("%f,%f\n",a,b);輸出結(jié)果為:2.718000,3.141593數(shù)據(jù)輸出(6)格式說(shuō)明符e,以指數(shù)形式輸出。數(shù)值部分小數(shù)點(diǎn)前有且僅有一位非0數(shù)字,保留6位小數(shù);指數(shù)部分寬度固定為5位(e+003)%e,以默認(rèn)方式輸出實(shí)數(shù);%m.ne,輸出實(shí)數(shù),總寬度為m位(包括數(shù)值和指數(shù)部分),小數(shù)位保留n位,右對(duì)齊;%.ne,輸出實(shí)數(shù),不指定總寬度,只指定小數(shù)位保留n位,不足n位則補(bǔ)0,右對(duì)齊;%-m.ne,與%m.ne相同,只是向左對(duì)齊;%-.ne,與%.ne相同,只是向左對(duì)齊。數(shù)據(jù)輸出doublea=-27.1828;floatb=0.31415926;printf("%e,%e\n",a,b);輸出結(jié)果為:-2.718280e+001,3.141593e-001數(shù)據(jù)輸出(7)格式字符g,自動(dòng)選擇f和e輸出寬度較短的一種,不輸出無(wú)意義的0,使用方式為%g。doublea=271.828;printf("%f,%e,%g\n",a,a,a);輸出結(jié)果為:271.828000,2.718280e+002,271.828數(shù)據(jù)輸出(8)格式字符c,輸出一個(gè)字符:%c,輸出一

溫馨提示

  • 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)論