版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1第第 3 3章章 C C語(yǔ)言程序設(shè)計(jì)初步語(yǔ)言程序設(shè)計(jì)初步 3.1 C 3.1 C語(yǔ)句的作用與分類(lèi)語(yǔ)句的作用與分類(lèi) 3.2 3.2 數(shù)據(jù)的輸入和輸出數(shù)據(jù)的輸入和輸出 3.3 3.3 常用的數(shù)學(xué)函數(shù)常用的數(shù)學(xué)函數(shù) 3.4 3.4 順序結(jié)構(gòu)和序示例順序結(jié)構(gòu)和序示例 3.5 3.5 程序設(shè)計(jì)中注意的問(wèn)題程序設(shè)計(jì)中注意的問(wèn)題23.1 C語(yǔ)句的作用與分類(lèi) 函數(shù)是函數(shù)是C C程序的基本構(gòu)成單位,一個(gè)函數(shù)包括聲明部分和程序的基本構(gòu)成單位,一個(gè)函數(shù)包括聲明部分和執(zhí)行部分。執(zhí)行部分是由一條或多條執(zhí)行部分。執(zhí)行部分是由一條或多條C C語(yǔ)句組成的,語(yǔ)句語(yǔ)句組成的,語(yǔ)句的作用是向計(jì)算機(jī)系統(tǒng)發(fā)出操作和運(yùn)算指令,要求執(zhí)行
2、相的作用是向計(jì)算機(jī)系統(tǒng)發(fā)出操作和運(yùn)算指令,要求執(zhí)行相應(yīng)的操作。一條應(yīng)的操作。一條C C語(yǔ)句編譯后會(huì)產(chǎn)生多條機(jī)器指令。語(yǔ)句編譯后會(huì)產(chǎn)生多條機(jī)器指令。 C C語(yǔ)言的語(yǔ)句按照其功能可以分為兩類(lèi):用于描述計(jì)算機(jī)語(yǔ)言的語(yǔ)句按照其功能可以分為兩類(lèi):用于描述計(jì)算機(jī)操作和運(yùn)算的操作運(yùn)算語(yǔ)句和用于控制操作執(zhí)行順序的流操作和運(yùn)算的操作運(yùn)算語(yǔ)句和用于控制操作執(zhí)行順序的流程控制語(yǔ)句。程控制語(yǔ)句。31. 1. 表達(dá)式語(yǔ)句表達(dá)式語(yǔ)句C C語(yǔ)言中的操作和運(yùn)算是通過(guò)表達(dá)式實(shí)現(xiàn)的,表達(dá)式語(yǔ)句是程序中使用廣泛的一種語(yǔ)句。語(yǔ)言中的操作和運(yùn)算是通過(guò)表達(dá)式實(shí)現(xiàn)的,表達(dá)式語(yǔ)句是程序中使用廣泛的一種語(yǔ)句。例如:例如:i i+ /+ /這是
3、一個(gè)表達(dá)式,不是語(yǔ)句這是一個(gè)表達(dá)式,不是語(yǔ)句i i+; /+; /語(yǔ)句,執(zhí)行后使語(yǔ)句,執(zhí)行后使i i的值加的值加1 1x+yx+y; /; /語(yǔ)句,但沒(méi)有任何意義,執(zhí)行后運(yùn)算結(jié)果沒(méi)有保存,且語(yǔ)句,但沒(méi)有任何意義,執(zhí)行后運(yùn)算結(jié)果沒(méi)有保存,且x x和和y y的值也沒(méi)有變化的值也沒(méi)有變化(1) (1) 賦值語(yǔ)句賦值語(yǔ)句賦值語(yǔ)句是在賦值表達(dá)式后面加上分號(hào)組成,其作用是改變變量的值。例如:賦值語(yǔ)句是在賦值表達(dá)式后面加上分號(hào)組成,其作用是改變變量的值。例如:i i= =x+yx+y; ;(2) (2) 函數(shù)調(diào)用語(yǔ)句函數(shù)調(diào)用語(yǔ)句函數(shù)調(diào)用語(yǔ)句是在函數(shù)調(diào)用表達(dá)式后面加分號(hào)組成,其作用是使被調(diào)用的函數(shù)得到執(zhí)行。函
4、數(shù)調(diào)用語(yǔ)句是在函數(shù)調(diào)用表達(dá)式后面加分號(hào)組成,其作用是使被調(diào)用的函數(shù)得到執(zhí)行。例如:例如:printfprintf(hello world.n);(hello world.n);(3) (3) 空語(yǔ)句空語(yǔ)句空語(yǔ)句由有一個(gè)分號(hào)組成。空語(yǔ)句由有一個(gè)分號(hào)組成。2. 2. 流程控制語(yǔ)句流程控制語(yǔ)句C C語(yǔ)言一種提供了語(yǔ)言一種提供了9 9種流程控制語(yǔ)句,它們大致可以分為以下幾類(lèi):種流程控制語(yǔ)句,它們大致可以分為以下幾類(lèi):選擇結(jié)構(gòu)控制語(yǔ)句:選擇結(jié)構(gòu)控制語(yǔ)句:ifelseifelse和和switchswitch循環(huán)結(jié)構(gòu)控制語(yǔ)句:循環(huán)結(jié)構(gòu)控制語(yǔ)句:forfor、whilewhile和和dowhiledowhil
5、e結(jié)束本次循環(huán)語(yǔ)句:結(jié)束本次循環(huán)語(yǔ)句:continuecontinue終止循環(huán)和多分支語(yǔ)句:終止循環(huán)和多分支語(yǔ)句:breakbreak無(wú)條件轉(zhuǎn)移語(yǔ)句:無(wú)條件轉(zhuǎn)移語(yǔ)句:gotogoto函數(shù)返回語(yǔ)句:函數(shù)返回語(yǔ)句:returnreturn3. 3. 復(fù)合語(yǔ)句復(fù)合語(yǔ)句C C語(yǔ)言允許將一條或多條語(yǔ)句用花括號(hào)語(yǔ)言允許將一條或多條語(yǔ)句用花括號(hào)括起來(lái)形成復(fù)合語(yǔ)句,也稱(chēng)為語(yǔ)句塊。括起來(lái)形成復(fù)合語(yǔ)句,也稱(chēng)為語(yǔ)句塊。43.2 數(shù)據(jù)的輸入和輸出 C C語(yǔ)言沒(méi)有專(zhuān)門(mén)的輸入輸出指令或語(yǔ)句,所有的數(shù)據(jù)輸語(yǔ)言沒(méi)有專(zhuān)門(mén)的輸入輸出指令或語(yǔ)句,所有的數(shù)據(jù)輸入和輸出操作都是通過(guò)對(duì)標(biāo)準(zhǔn)入和輸出操作都是通過(guò)對(duì)標(biāo)準(zhǔn)I/OI/O(輸入(輸
6、入/ /輸出)庫(kù)函數(shù)調(diào)用輸出)庫(kù)函數(shù)調(diào)用完成。頭文件完成。頭文件“stdio.hstdio.h”中聲明了這些輸入和輸出庫(kù)函數(shù)中聲明了這些輸入和輸出庫(kù)函數(shù),在程序中使用標(biāo)準(zhǔn)輸入在程序中使用標(biāo)準(zhǔn)輸入/ /輸出庫(kù)函數(shù)時(shí),在程序開(kāi)始部分使輸出庫(kù)函數(shù)時(shí),在程序開(kāi)始部分使用如下編譯預(yù)處理命令用如下編譯預(yù)處理命令: #include #include 51.1.格式輸出函數(shù)格式輸出函數(shù)printfprintfprintfprintf函數(shù)的一般形式如下:函數(shù)的一般形式如下:printf(printf(格式控制字符串格式控制字符串, , 輸出表列輸出表列););格式說(shuō)明符的作用是把輸出表列中對(duì)應(yīng)的輸出數(shù)據(jù)按照指
7、定的格式說(shuō)明符的作用是把輸出表列中對(duì)應(yīng)的輸出數(shù)據(jù)按照指定的格式進(jìn)行輸出。其語(yǔ)法形式如下:格式進(jìn)行輸出。其語(yǔ)法形式如下:%附加格式字符附加格式字符 格式字符格式字符1. printf1. printf函數(shù)的格式字符函數(shù)的格式字符附加附加格格式式含義含義l l用于用于d d、o o、x x、u u前,表示指定輸出精度為前,表示指定輸出精度為longlong用于用于e e、f f、g g前,表示指定輸出精度為前,表示指定輸出精度為doubledoubleh h用于用于d d、o o、x x、u u前,表示指定輸出精度為前,表示指定輸出精度為shortshortm mm m為正整數(shù)常量,表示輸出數(shù)據(jù)的
8、最小寬度為為正整數(shù)常量,表示輸出數(shù)據(jù)的最小寬度為m m。實(shí)際數(shù)據(jù)寬度小于。實(shí)際數(shù)據(jù)寬度小于m m時(shí),時(shí),輸出數(shù)據(jù)在寬度輸出數(shù)據(jù)在寬度m m的區(qū)域內(nèi)右對(duì)齊,左邊補(bǔ)空格;實(shí)際數(shù)據(jù)寬度大于的區(qū)域內(nèi)右對(duì)齊,左邊補(bǔ)空格;實(shí)際數(shù)據(jù)寬度大于m m時(shí),時(shí),m m不起作用不起作用.n.nn n為正整數(shù)常量,用于為正整數(shù)常量,用于f f、e e前表示輸出前表示輸出n n位小數(shù);用于位小數(shù);用于s s前表示輸出前前表示輸出前n n個(gè)字符個(gè)字符格式字符格式字符含義含義d d以有符號(hào)十進(jìn)制形式輸出整數(shù),正數(shù)不輸出符號(hào)以有符號(hào)十進(jìn)制形式輸出整數(shù),正數(shù)不輸出符號(hào)+ +o o以八進(jìn)制形式輸出整數(shù),無(wú)前導(dǎo)符以八進(jìn)制形式輸出整數(shù)
9、,無(wú)前導(dǎo)符0 0 x x 或或 X X以十六進(jìn)制形式輸出整數(shù),無(wú)前導(dǎo)符以十六進(jìn)制形式輸出整數(shù),無(wú)前導(dǎo)符0 x0 x。x x的大小寫(xiě)控制十六進(jìn)制字母的大小寫(xiě)控制十六進(jìn)制字母的大小寫(xiě)的大小寫(xiě)u u以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù)以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù)f f以小數(shù)形式輸出實(shí)數(shù),保留以小數(shù)形式輸出實(shí)數(shù),保留6 6位小數(shù)位小數(shù)e e 或或 E E以指數(shù)形式輸出實(shí)數(shù),尾數(shù)部分保留以指數(shù)形式輸出實(shí)數(shù),尾數(shù)部分保留6 6位小數(shù)。大小寫(xiě)對(duì)應(yīng)指數(shù)的位小數(shù)。大小寫(xiě)對(duì)應(yīng)指數(shù)的e e或或E Eg g 或或 G G以以f f或或e e格式符中輸出寬度較短的形式輸出實(shí)數(shù)格式符中輸出寬度較短的形式輸出實(shí)數(shù)c c以字符形式輸出一
10、個(gè)字符以字符形式輸出一個(gè)字符s s輸出一個(gè)字符串輸出一個(gè)字符串例例3-13-1:閱讀程序:閱讀程序 #include #include int main() int main() int i=-1; float f=1.234F; double d=12.3456789123; int i=-1; float f=1.234F; double d=12.3456789123; char c=A; char c=A; printf(i=%d,i=%o,i=%x,i=%un,i,i,i,i); printf(i=%d,i=%o,i=%x,i=%un,i,i,i,i); printf(f=%f,f=
11、%e,f=%gn,f,f,f); printf(f=%f,f=%e,f=%gn,f,f,f); printf(d=%f,d=%e,d=%gn,d,d,d); printf(d=%f,d=%e,d=%gn,d,d,d); printf(c=%c,c=%dn,c,c); printf(c=%c,c=%dn,c,c); return 0; return 0; i i=-1,i=37777777777,i=-1,i=37777777777,i=ffffffff,iffffffff,i=4294967295=4294967295f=1.234000,f=1.234000e+000,f=1.234f=1.
12、234000,f=1.234000e+000,f=1.234d=12.345679,d=1.234568e+001,d=12.3457d=12.345679,d=1.234568e+001,d=12.3457c=c=A,cA,c=65=65例例3-23-2:閱讀程序:閱讀程序 #include #include int main() int main() printf(%03u %-8s %c %3d %4.2fn, printf(%03u %-8s %c %3d %4.2fn, 1,John,M, 18, 88.678); 1,John,M, 18, 88.678); printf(%03u
13、 %-8s %c %3d %4.2fn, printf(%03u %-8s %c %3d %4.2fn, 2,Jimmy,M, 17, 90.0); 2,Jimmy,M, 17, 90.0); printf(%03u %-8s %c %3d %4.2fn, printf(%03u %-8s %c %3d %4.2fn, 3,Mary,F, 18, 91.25); 3,Mary,F, 18, 91.25); return 0; return 0; 001 John M 18 88.68001 John M 18 88.68002 Jimmy M 17 90.00002 Jimmy M 17 90
14、.00003 Mary F 18 91.25003 Mary F 18 91.2592.2.格式輸入函數(shù)格式輸入函數(shù)scanfscanfscanfscanf函數(shù)的一般形式如下:函數(shù)的一般形式如下:scanfscanf( (格式控制字符串格式控制字符串, , 地址表列地址表列) );scanfscanf函數(shù)的格式字符和附加格式字符的作用與函數(shù)的格式字符和附加格式字符的作用與printfprintf函數(shù)類(lèi)似,具函數(shù)類(lèi)似,具體內(nèi)容如表體內(nèi)容如表3-33-3和表和表3-43-4所示所示使用使用scanfscanf函數(shù)從鍵盤(pán)輸入數(shù)據(jù)時(shí),需要設(shè)置格式控制字符串使變量函數(shù)從鍵盤(pán)輸入數(shù)據(jù)時(shí),需要設(shè)置格式控制字
15、符串使變量得到正確的數(shù)據(jù),其中有些需要注意的問(wèn)題:得到正確的數(shù)據(jù),其中有些需要注意的問(wèn)題:(1) (1) 地址表列中出現(xiàn)的必須是變量的地址,而不是變量名。例如:地址表列中出現(xiàn)的必須是變量的地址,而不是變量名。例如:(2) (2) 一個(gè)一個(gè)scanfscanf函數(shù)同時(shí)輸入多個(gè)非字符數(shù)據(jù)時(shí),如果格式控制字符函數(shù)同時(shí)輸入多個(gè)非字符數(shù)據(jù)時(shí),如果格式控制字符串中沒(méi)有普通字符,輸入數(shù)據(jù)時(shí)可以使用串中沒(méi)有普通字符,輸入數(shù)據(jù)時(shí)可以使用“空格空格”、“回車(chē)回車(chē)”或或“制制表符表符(Tab)”(Tab)”對(duì)輸入的數(shù)據(jù)進(jìn)行分隔。對(duì)輸入的數(shù)據(jù)進(jìn)行分隔。(3) (3) 輸入中有字符型數(shù)據(jù)時(shí),輸入的字符前不要使用分隔字符
16、。輸入中有字符型數(shù)據(jù)時(shí),輸入的字符前不要使用分隔字符。(4) (4) 輸入實(shí)數(shù)類(lèi)型數(shù)據(jù)時(shí),輸入實(shí)數(shù)類(lèi)型數(shù)據(jù)時(shí),doubledouble類(lèi)型的數(shù)據(jù)的輸入必須使用附加格類(lèi)型的數(shù)據(jù)的輸入必須使用附加格式字符式字符“l(fā)”l”說(shuō)明。說(shuō)明。(5) (5) 可以使用寬度附加格式符指定輸入數(shù)據(jù)的列數(shù),系統(tǒng)自動(dòng)從輸入可以使用寬度附加格式符指定輸入數(shù)據(jù)的列數(shù),系統(tǒng)自動(dòng)從輸入數(shù)據(jù)中截取數(shù)據(jù)。數(shù)據(jù)中截取數(shù)據(jù)。10例如:例如:intint a; a;scanfscanf(%d, &a); /(%d, &a); /正確正確scanfscanf(%d, a); /(%d, a); /錯(cuò)誤錯(cuò)誤intint a
17、,b,ca,b,c; ;scanfscanf(%(%d,%d,%d,&a,&b,&bd,%d,%d,&a,&b,&b); /); /例如輸入:例如輸入:3,4,53,4,5 上面輸入語(yǔ)句執(zhí)行時(shí),輸入的上面輸入語(yǔ)句執(zhí)行時(shí),輸入的3 3個(gè)整數(shù)之間必須原樣使用逗號(hào)分隔,否則會(huì)出錯(cuò)。個(gè)整數(shù)之間必須原樣使用逗號(hào)分隔,否則會(huì)出錯(cuò)。intint a; a;char c1,c2,c3;char c1,c2,c3;scanfscanf(%d%c%c%c,&a,&c1,&c2,&c3);(%d%c%c%c,&a,&c1
18、,&c2,&c3);輸入語(yǔ)句執(zhí)行時(shí),如果輸入不使用分隔符,輸入格式為:輸入語(yǔ)句執(zhí)行時(shí),如果輸入不使用分隔符,輸入格式為:123ABC123ABC 則變量則變量a a得到整數(shù)得到整數(shù)123123,三個(gè)字符型變量依次得到字符:,三個(gè)字符型變量依次得到字符:AA、BB、CC。如果使用空格作為分隔符進(jìn)行輸入,輸入格式為:如果使用空格作為分隔符進(jìn)行輸入,輸入格式為:123 A B C123 A B C 則變量則變量a a仍然會(huì)得到整數(shù)仍然會(huì)得到整數(shù)123123,但是三個(gè)字符型變量依次得到字符是:空格、,但是三個(gè)字符型變量依次得到字符是:空格、AA、空格。、空格。這與預(yù)期的輸入結(jié)果不同。這
19、與預(yù)期的輸入結(jié)果不同。float f;float f;double d;double d;scanfscanf(%(%f%lff%lf, &f, &d); /, &f, &d); /正確,變量正確,變量d d能夠得到正確的輸入數(shù)據(jù)能夠得到正確的輸入數(shù)據(jù)scanfscanf(%(%f%ff%f, &f, &d); /, &f, &d); /錯(cuò)誤,變量錯(cuò)誤,變量d d不能得到正確的輸入數(shù)據(jù),通常得到不能得到正確的輸入數(shù)據(jù),通常得到0 0113.3.字符輸入函數(shù)字符輸入函數(shù)getchargetchar字符輸入函數(shù)的一般形式如下:字符輸入
20、函數(shù)的一般形式如下:int getchar()int getchar()其功能是從默認(rèn)輸入設(shè)備(通常是鍵盤(pán))輸入一個(gè)字符。如果其功能是從默認(rèn)輸入設(shè)備(通常是鍵盤(pán))輸入一個(gè)字符。如果成功運(yùn)行則返回值是輸入字符的成功運(yùn)行則返回值是輸入字符的ASCIIASCII碼,運(yùn)行失敗時(shí)返回值是碼,運(yùn)行失敗時(shí)返回值是-1-1。getchargetchar函數(shù)只負(fù)責(zé)輸入字符,還要通過(guò)賦值將字符放入變函數(shù)只負(fù)責(zé)輸入字符,還要通過(guò)賦值將字符放入變量。例如:量。例如:char c;char c;c=getchar(); /c=getchar(); /輸入一個(gè)字符并賦值給變量輸入一個(gè)字符并賦值給變量c c例例3-33-3
21、:閱讀程序:閱讀程序 #include #include int main() int main() char c1,c2; char c1,c2; int n; int n; c1=getchar(); / c1=getchar(); /輸入第輸入第1 1個(gè)數(shù)字字符個(gè)數(shù)字字符 c2=getchar(); /c2=getchar(); /輸入第輸入第2 2個(gè)數(shù)字字符個(gè)數(shù)字字符 n=c1-0+c2-0; /n=c1-0+c2-0; /計(jì)算兩個(gè)字符對(duì)應(yīng)數(shù)字的和計(jì)算兩個(gè)字符對(duì)應(yīng)數(shù)字的和 printf(n=%dn,n);printf(n=%dn,n); return 0; return 0; 4545
22、 n=9n=9134.4.字符輸出函數(shù)字符輸出函數(shù)putcharputchar字符輸出函數(shù)的一般形式如下:字符輸出函數(shù)的一般形式如下:int putchar(char c)int putchar(char c)其功能是將變量其功能是將變量c c保存的字符輸出到默認(rèn)的輸出設(shè)備。如果成功保存的字符輸出到默認(rèn)的輸出設(shè)備。如果成功運(yùn)行則返回輸出字符的運(yùn)行則返回輸出字符的ASCIIASCII碼,運(yùn)行失敗返回碼,運(yùn)行失敗返回-1-1。例例3-43-4:閱讀程序:閱讀程序 #include #include int main() int main() char c; char c; c=getchar();
23、 / c=getchar(); /輸入一個(gè)小寫(xiě)字母輸入一個(gè)小寫(xiě)字母 c=c-32; /c=c-32; /轉(zhuǎn)換為對(duì)應(yīng)的大寫(xiě)字母轉(zhuǎn)換為對(duì)應(yīng)的大寫(xiě)字母 putchar(c); /putchar(c); /輸出對(duì)應(yīng)的大寫(xiě)字母輸出對(duì)應(yīng)的大寫(xiě)字母 return 0;return 0; aa A A153.3 常用的數(shù)學(xué)函數(shù) 數(shù)學(xué)運(yùn)算是計(jì)算機(jī)程序中經(jīng)常使用的運(yùn)算形式,除了基數(shù)學(xué)運(yùn)算是計(jì)算機(jī)程序中經(jīng)常使用的運(yùn)算形式,除了基本的算術(shù)運(yùn)算符之外,本的算術(shù)運(yùn)算符之外,C C語(yǔ)言在其標(biāo)準(zhǔn)函數(shù)庫(kù)中提供了近百語(yǔ)言在其標(biāo)準(zhǔn)函數(shù)庫(kù)中提供了近百個(gè)常用的數(shù)學(xué)運(yùn)算的標(biāo)準(zhǔn)函數(shù),以方便編寫(xiě)程序中使用。本個(gè)常用的數(shù)學(xué)運(yùn)算的標(biāo)準(zhǔn)函數(shù),以方
24、便編寫(xiě)程序中使用。本節(jié)介紹幾個(gè)常用的數(shù)學(xué)運(yùn)算函數(shù),更多的數(shù)學(xué)函數(shù)請(qǐng)參見(jiàn)附節(jié)介紹幾個(gè)常用的數(shù)學(xué)運(yùn)算函數(shù),更多的數(shù)學(xué)函數(shù)請(qǐng)參見(jiàn)附錄和其他資料。大多數(shù)的數(shù)學(xué)函數(shù)原型在頭文件錄和其他資料。大多數(shù)的數(shù)學(xué)函數(shù)原型在頭文件math.hmath.h中聲中聲明,編程時(shí)在程序的開(kāi)始部分使用如下文件包含指令:明,編程時(shí)在程序的開(kāi)始部分使用如下文件包含指令: #include #include 161. 1. 常用的絕對(duì)值類(lèi)函數(shù)常用的絕對(duì)值類(lèi)函數(shù)int abs(int n) int abs(int n) 求求intint類(lèi)型數(shù)據(jù)的絕對(duì)值,在類(lèi)型數(shù)據(jù)的絕對(duì)值,在stdlib.hstdlib.h聲明聲明double fa
25、bs(double n) double fabs(double n) 求求doubledouble類(lèi)型數(shù)據(jù)的絕對(duì)值類(lèi)型數(shù)據(jù)的絕對(duì)值2. 2. 常用的三角函數(shù)常用的三角函數(shù)double sin(double x) double sin(double x) 求正弦函數(shù)值求正弦函數(shù)值double cos(double x) double cos(double x) 求余弦函數(shù)值求余弦函數(shù)值3. 3. 指數(shù)、對(duì)數(shù)和平方根函數(shù)指數(shù)、對(duì)數(shù)和平方根函數(shù)double pow(double x, double y) double pow(double x, double y) 求求x x的的y y次方,即次方,
26、即xyxydouble log(double x) double log(double x) 求求x x的自然對(duì)數(shù)的自然對(duì)數(shù)double log10(double x) double log10(double x) 求求x x的以的以1010為底的對(duì)數(shù)為底的對(duì)數(shù)double sqrt(double x) double sqrt(double x) 求求x x的平方根的平方根173.4 順序結(jié)構(gòu)程序示例 順序結(jié)構(gòu)是三種基本程序結(jié)構(gòu)中最簡(jiǎn)單的,它按照程序中語(yǔ)順序結(jié)構(gòu)是三種基本程序結(jié)構(gòu)中最簡(jiǎn)單的,它按照程序中語(yǔ)句排列的先后順序來(lái)執(zhí)行程序。使用句排列的先后順序來(lái)執(zhí)行程序。使用C C語(yǔ)言編寫(xiě)順序結(jié)構(gòu)的程
27、序非語(yǔ)言編寫(xiě)順序結(jié)構(gòu)的程序非常簡(jiǎn)單,只要按照預(yù)先設(shè)計(jì)的思路排列語(yǔ)句的順序即可。常簡(jiǎn)單,只要按照預(yù)先設(shè)計(jì)的思路排列語(yǔ)句的順序即可。 一般來(lái)講,能夠使用順序結(jié)構(gòu)程序解決的問(wèn)題通常都比較簡(jiǎn)一般來(lái)講,能夠使用順序結(jié)構(gòu)程序解決的問(wèn)題通常都比較簡(jiǎn)單,基本解題思路可以遵循以下步驟:?jiǎn)?,基本解題思路可以遵循以下步驟:第第1 1步,確定問(wèn)題中需要幾個(gè)數(shù)據(jù)及其數(shù)據(jù)類(lèi)型,定義相應(yīng)的變量。步,確定問(wèn)題中需要幾個(gè)數(shù)據(jù)及其數(shù)據(jù)類(lèi)型,定義相應(yīng)的變量。第第2 2步,編寫(xiě)數(shù)據(jù)輸入語(yǔ)句。步,編寫(xiě)數(shù)據(jù)輸入語(yǔ)句。第第3 3步,根據(jù)問(wèn)題要求,對(duì)數(shù)據(jù)進(jìn)行各種運(yùn)算。步,根據(jù)問(wèn)題要求,對(duì)數(shù)據(jù)進(jìn)行各種運(yùn)算。第第4 4步,編寫(xiě)結(jié)果輸出語(yǔ)句。步,
28、編寫(xiě)結(jié)果輸出語(yǔ)句。18例例3-53-5:輸入直角三角形斜邊的長(zhǎng)度和其中一個(gè)銳角的角度值,:輸入直角三角形斜邊的長(zhǎng)度和其中一個(gè)銳角的角度值,計(jì)算并輸出兩個(gè)直角邊的邊長(zhǎng)。計(jì)算并輸出兩個(gè)直角邊的邊長(zhǎng)。思路分析:該問(wèn)題編程時(shí)需要思路分析:該問(wèn)題編程時(shí)需要4 4個(gè)變量,其中個(gè)變量,其中2 2個(gè)用于存放輸入個(gè)用于存放輸入數(shù)據(jù),另外數(shù)據(jù),另外2 2個(gè)存放計(jì)算的結(jié)果,問(wèn)題中沒(méi)有具體說(shuō)明數(shù)據(jù)類(lèi)型,個(gè)存放計(jì)算的結(jié)果,問(wèn)題中沒(méi)有具體說(shuō)明數(shù)據(jù)類(lèi)型,按照常識(shí)采用按照常識(shí)采用floatfloat或或doubledouble較為合適。根據(jù)斜邊長(zhǎng)和銳角角度,較為合適。根據(jù)斜邊長(zhǎng)和銳角角度,只需調(diào)用正弦函數(shù)和余弦函數(shù)就可以計(jì)算
29、出兩個(gè)直角邊長(zhǎng)。只需調(diào)用正弦函數(shù)和余弦函數(shù)就可以計(jì)算出兩個(gè)直角邊長(zhǎng)。#include #include #include #include #define PI 3.14159 #define PI 3.14159 intint main() main() / /* *c c表示斜邊長(zhǎng),表示斜邊長(zhǎng),a a、b b表示直角邊長(zhǎng),表示直角邊長(zhǎng),angleangle表示角度值表示角度值* */ / double double a,b,c,anglea,b,c,angle; ; printfprintf(input c and angle:);(input c and angle:); scanfsc
30、anf(%(%lf%lflf%lf,&,&c,&anglec,&angle);); a=c a=c* *sin(anglesin(angle* *PI/180);PI/180); b=c b=c* *cos(anglecos(angle* *PI/180);PI/180); printfprintf(a=%.2f,b=%.2fn,(a=%.2f,b=%.2fn,a,ba,b);); return 0; return 0; input c and angle:20 30a=10.00,b=17.3220 #include #include #include #in
31、clude int main() int main() double a,b,c,s,area; double a,b,c,s,area; printf(Input a b c:); printf(Input a b c:); scanf(%lf%lf%lf,&a,&b,&c); scanf(%lf%lf%lf,&a,&b,&c); s=(a+b+c)/2; s=(a+b+c)/2; area=sqrt(s area=sqrt(s* *(s-a)(s-a)* *(s-b)(s-b)* *(s-c);(s-c); printf(area=%.2fn
32、,area); printf(area=%.2fn,area); return 0; return 0; Input a b c:7.0 8.5 9.5area=28.7222 #include #include #include #include int main() int main() double a,b,c,s,area; double a,b,c,s,area; printf(Input a b c:); printf(Input a b c:); scanf(%lf%lf%lf,&a,&b,&c); scanf(%lf%lf%lf,&a,&b,&c); s=(a+b+c)/2; s=(a+b+c)/2; area=sqrt(s area=sqrt(s* *(
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 財(cái)稅績(jī)效制度
- 象山村民說(shuō)事制度
- 論按日計(jì)罰制度
- 落實(shí)企業(yè)(職業(yè))年金制度
- 2026云南中國(guó)郵政儲(chǔ)蓄銀行股份有限公司普洱市分行招聘10人參考考試題庫(kù)附答案解析
- 桂林銀行考試試題及答案
- 2026廣東清遠(yuǎn)市陽(yáng)山縣城市管理和綜合執(zhí)法局第一次招聘城市管理監(jiān)察協(xié)管員和政府購(gòu)買(mǎi)服務(wù)人員3人參考考試題庫(kù)附答案解析
- 2026上海黃浦區(qū)中意工程創(chuàng)新學(xué)院教務(wù)崗位招聘1人參考考試題庫(kù)附答案解析
- 2026四川成都城建投資管理集團(tuán)有限責(zé)任公司所屬數(shù)智集團(tuán)招聘3人備考考試試題附答案解析
- 2026上半年黑龍江省體育局事業(yè)單位招聘13人備考考試試題附答案解析
- 《中華人民共和國(guó)危險(xiǎn)化學(xué)品安全法》全套解讀
- 推拿按摩腰背部課件
- 散養(yǎng)土雞養(yǎng)雞課件
- 戰(zhàn)略屋策略體系roadmapPP T模板(101 頁(yè))
- 2025年醫(yī)療輔助崗面試題及答案
- T-CI 1078-2025 堿性電解水復(fù)合隔膜測(cè)試方法
- 新入職小學(xué)教師如何快速成長(zhǎng)個(gè)人專(zhuān)業(yè)發(fā)展計(jì)劃
- 門(mén)診導(dǎo)診工作流程
- 2025云南保山電力股份有限公司招聘(100人)筆試歷年參考題庫(kù)附帶答案詳解
- 寫(xiě)字樓物業(yè)安全管理實(shí)務(wù)操作手冊(cè)
- 2025年及未來(lái)5年中國(guó)飲料工業(yè)行業(yè)競(jìng)爭(zhēng)格局分析及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
評(píng)論
0/150
提交評(píng)論