版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)程序的三種結(jié)構(gòu)第三章順序結(jié)構(gòu)程序設(shè)計(jì)第一節(jié)結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)一、順序結(jié)構(gòu)
順序結(jié)構(gòu)中的語(yǔ)句是按書(shū)寫(xiě)的順序執(zhí)行的,即語(yǔ)句的執(zhí)行順序與書(shū)寫(xiě)順序一致。順序結(jié)構(gòu)的基本程序框架主要由三大部分組成:輸入算法所需要的數(shù)據(jù)、進(jìn)行運(yùn)算和數(shù)據(jù)處理和輸出運(yùn)算結(jié)果數(shù)據(jù)。用流程圖和N-S圖表示
BABA二、選擇結(jié)構(gòu)
選擇結(jié)構(gòu)是當(dāng)程序執(zhí)行到某一語(yǔ)句時(shí),要進(jìn)行一下判斷,從兩種路徑中選擇一條,所以選擇結(jié)構(gòu)又稱(chēng)為分支結(jié)構(gòu)。用流程圖和N-S圖表示
PAB
TFBAPTF三、循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)是當(dāng)滿足某種循環(huán)的條件時(shí),將一條或多條語(yǔ)句重復(fù)地執(zhí)行若干遍,直到不滿足循環(huán)條件為止。循環(huán)結(jié)構(gòu)有兩種類(lèi)型:當(dāng)型循環(huán)結(jié)構(gòu)和直到型循環(huán)結(jié)構(gòu)。
用流程圖和N-S圖表示
FA當(dāng)P為真ATP
AFT直到P為真AP#include<stdio.h>main(){int
a,b,c;floatx,y;a=b=c=2;x=3.12;y=a*x+b*x*x+c*x*x*x;
printf("y=%f\n",y);}【例3.1】分析以下程序的結(jié)構(gòu)并寫(xiě)出執(zhí)行結(jié)果。根據(jù)身高與體重因素,醫(yī)務(wù)工作者經(jīng)廣泛的調(diào)查分析給出了以下按“體指數(shù)”對(duì)肥胖程度的劃分:體指數(shù)t=體重w/(身高h(yuǎn))2(w單位為千克,h單位為米)
當(dāng)t<18時(shí),為低體重;當(dāng)t介于18和25之間時(shí),為正常體重;當(dāng)t介于25和27之間時(shí),為超重體重;當(dāng)t≥27時(shí),為肥胖。試分析,利用上述劃分條件來(lái)判斷某人是否屬于肥胖,程序應(yīng)該采用哪種控制結(jié)構(gòu)是合理的?!纠?.2】判斷某人是否屬于肥胖體型。標(biāo)準(zhǔn)函數(shù):指可以在各種計(jì)算機(jī)系統(tǒng)中都能使用的函數(shù)。標(biāo)準(zhǔn)輸入輸出函數(shù):在標(biāo)準(zhǔn)函數(shù)中有一些用來(lái)實(shí)現(xiàn)輸入輸出功能的函數(shù)。C語(yǔ)言提供了六種標(biāo)準(zhǔn)輸入輸出函數(shù):
printf、scanf、putchar、
getchar、puts、gets儲(chǔ)備知識(shí):第二節(jié)數(shù)據(jù)的輸入與輸出#include<stdio.h>或#include"stdio.h"作用:將輸入輸出函數(shù)的頭文件stdio.h包含到用戶源文件中。其中,h為head
之意,std為standard之意,i為
input之意,o為output之意。預(yù)處理命令一、格式輸出函數(shù)(printf)一般形式:printf(格式控制,輸出項(xiàng)列表);由“%”和格式字符組成。作用:將輸出的數(shù)據(jù)轉(zhuǎn)換為指定的格式輸出指需要原樣輸出的字符,如逗號(hào)、空格等。用雙引號(hào)括起來(lái)并以字符串的形式描述包括:格式說(shuō)明和普通字符。舉例:printf(“%d,%f”,a,b);用于規(guī)定相應(yīng)輸出項(xiàng)內(nèi)容的輸出格式。它由%和格式字符組成。格式說(shuō)明格式字符輸出形式舉例輸出結(jié)果d或icse或Efg或G
inta=65;printf("%d",a);65
chara=65;printf("%c",a);
chara[6];a[6]="abcde";printf("%s",a);Aabcdefloata=12.345;printf("%e",a);1.23450e+01floata=12.345;printf("%f",a);12.345000floata=12.345;printf("%g",a);12.345十進(jìn)制整數(shù)單個(gè)字符字符串指數(shù)形式小數(shù)形式e和f中較短的一種,不印無(wú)效0附加符號(hào)(修飾符)字符說(shuō)明lmn-注意:這些字符的位置在‘%’和格式字符的中間。字符說(shuō)明lmn-對(duì)于整型:指long型,如%ld等;對(duì)于實(shí)型:指double型,如%lf。指域?qū)?,即輸出?shù)據(jù)所輸出的最小寬度;且在域內(nèi)向右對(duì)齊。printf(“%4d”,12);輸出結(jié)果為:12字符說(shuō)明lmn-對(duì)于整型:指long型,如%ld等;對(duì)于實(shí)型:指double型,如%lf。指域?qū)?,即輸出?shù)據(jù)所輸出的最小寬度;且在域內(nèi)向右對(duì)齊。指精度,對(duì)于實(shí)數(shù),表示輸出n位小數(shù)對(duì)于字符串,表示截取的字符個(gè)數(shù)。m,n的格式為%m.nf字符說(shuō)明lmn-對(duì)于整型:指long型,如%ld等;對(duì)于實(shí)型:指double型,如%lf。指域?qū)?,即輸出?shù)據(jù)所輸出的最小寬度;且在域內(nèi)向右對(duì)齊。指精度,對(duì)于實(shí)數(shù),表示輸出n位小數(shù)對(duì)于字符串,表示截取的字符個(gè)數(shù)。輸出結(jié)果為:123.46
CHprintf(“%10.2f\n”,123.462);printf(“%7.2s\n”,“CHINA”);字符說(shuō)明lmn-指域?qū)挘摧敵鰯?shù)據(jù)所輸出的最小寬度;且在域內(nèi)向右對(duì)齊。指精度,對(duì)于實(shí)數(shù),表示輸出n位小數(shù)對(duì)于字符串,表示截取的字符個(gè)數(shù)。對(duì)于整型:指long型,如%ld等;對(duì)于實(shí)型:指double型,如%lf。m、n、-常用的格式為%-m.nf指輸出的數(shù)字或字符在域內(nèi)向左對(duì)齊。完整的格式
(1)指定輸出類(lèi)型(2)輸出長(zhǎng)度修正(3)指定輸出域?qū)捈熬龋?)指定空位填0
(5)指定左對(duì)齊輸出
(6)格式說(shuō)明的起始符號(hào)%
-
0
m.n
l或h
格式字符以下問(wèn)題如何處理:域?qū)捫∮趯?shí)際寬度時(shí)如何處理?缺省的域?qū)捙c精度各是多少?精度說(shuō)明大于、小于實(shí)際精度時(shí),如何處理?float與double的最大精度是多少?多于的小數(shù)是被截?cái)??還是舍入?#include<stdio.h>main(){inta=10;floatb=23.4567;printf("%d:%o(8進(jìn)制)%x(16進(jìn)制)\n",a,a,a);printf("%.4f:%8.3f%12e\n",b,b,b);}【例3.3】寫(xiě)出以下程序的執(zhí)行結(jié)果。
printf(“%7s\n”,“CHINA”);
printf(“%3s\n”,“CHINA”);
printf(“%7.2s\n”,“CHINA”);
printf(“%.2s\n”,“CHINA”);
printf(“%-5.3s\n”,“CHINA”);練習(xí):對(duì)于s格式例題練習(xí):對(duì)于f格式例題main(){floata=1.2345;
printf(“%f%10f\n”,a,a);printf(“%8.2f%.2f\n”,a,a);printf(“%-8.2f\n”,a);}二、字符輸出函數(shù)(putchar)說(shuō)明:該函數(shù)將指定的表達(dá)式的值所對(duì)應(yīng)的字符輸出到標(biāo)準(zhǔn)設(shè)備上。表達(dá)式可以是字符型或整型,它每次只能輸出一個(gè)字符。例如,putchar('#');輸出字符'#'。形式:putchar(表達(dá)式);
#include<stdio.h>main(){chara=‘B’,b=‘O’,c=‘Y’;
putchar(a);
putchar(b);
putchar(c);}討論:putchar(‘\n’);和putchar(‘\101’);的輸出結(jié)果。舉例:寫(xiě)出下面程序的運(yùn)行結(jié)果。三、格式輸入函數(shù)(scanf)
說(shuō)明:該函數(shù)從標(biāo)準(zhǔn)輸入設(shè)備上讀入字符序列,并將它們按指定格式進(jìn)行轉(zhuǎn)換后,存儲(chǔ)于地址表所指定的對(duì)應(yīng)的變量中。一般形式:scanf(格式控制,地址項(xiàng)列表);一般形式:scanf(格式控制,地址項(xiàng)列表);三、格式輸入函數(shù)(scanf)
同printf函數(shù)有相似之處,由雙引號(hào)括起來(lái),包括:格式說(shuō)明(同printf)和輸入分隔符。這些地址項(xiàng)是通過(guò)求地址運(yùn)算符&對(duì)變量名運(yùn)算得到的。所以,該位置的書(shū)寫(xiě)形式為:&變量名——表示該變量的地址。舉例:scanf(“%d,%f”,&a,&b);(1)輸入數(shù)據(jù)類(lèi)型和格式(2)長(zhǎng)度修正說(shuō)明符(3)域?qū)捳f(shuō)明符(4)賦值抑制符(5)格式說(shuō)明的起始符號(hào)
%
*
m
l或h
格式字符scanf()提供的格式字符基本組成如下:當(dāng)輸入流中的數(shù)據(jù)類(lèi)型與格式字符不符時(shí),就認(rèn)為這一數(shù)據(jù)項(xiàng)輸入結(jié)束?!纠?.4】寫(xiě)出以下程序的執(zhí)行結(jié)果。#include<stdio.h>main(){inta;charb;floatc;
printf("inputabc:");
scanf("%d%c%f",&a,&b,&c);
printf("a=%d,b=%c,c=%.3f",a,b,c);}從鍵盤(pán)輸入:1234r1234.56789【例3.5】寫(xiě)出以下程序的執(zhí)行結(jié)果。
main(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);
printf("a=%d,b=%f,c=%f",a,b,c)}根據(jù)格式項(xiàng)中指定的域?qū)挿指舫鰯?shù)據(jù)項(xiàng)。當(dāng)從鍵盤(pán)輸入:12345678987654321【例3.6】寫(xiě)出以下程序的執(zhí)行結(jié)果。
main(){inta;floatb,c;
scanf("%d%f%f",&a,&b,&c);
printf("a=%d,b=%f,c=%f",a,b,c)}用分隔符??崭瘛⑻穹?、換行符都是C語(yǔ)言認(rèn)定的數(shù)據(jù)分隔符。從鍵盤(pán)輸入:123說(shuō)明:該函數(shù)從標(biāo)準(zhǔn)輸入設(shè)備(一般為鍵盤(pán))上輸入一個(gè)可打印字符,并將該字符返回為函數(shù)的值。四、字符輸入函數(shù)(getchar)形式:getchar();#include<stdio.h>main(){charc1,c2,c3;c1=getchar();c2=getchar();c3=getchar();if(c1>='a'&&c1<='z')c1-=32;if(c2>='a'&&c2<='z')c2-=32;if(c3>='a'&&c1<='z')c3-=32;putchar(c1);putchar(c2);putchar(c3);}【例3.7】輸入三個(gè)字母,如果其中有小寫(xiě)字母就轉(zhuǎn)換成大寫(xiě)字母。#include<stdio.h>main(){charc1,c2,c3,c4,c5,c6,c7;
intn;
scanf("%d",&n);c1='c';c2='h';c3='i';c4='n';c5='e';c6='s';c7='e';
printf("源碼
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 自然博物館單元課程設(shè)計(jì)
- 軸承座課程設(shè)計(jì)夾具設(shè)計(jì)
- 2025年外聯(lián)部工作計(jì)劃書(shū)范例(3篇)
- 2025年度架子工崗位外包合同2篇
- 網(wǎng)絡(luò)課程設(shè)計(jì)校園局域網(wǎng)
- 2025年酒類(lèi)產(chǎn)品定制加工合同模板2篇
- 倉(cāng)庫(kù)保管員崗位責(zé)任制模版(2篇)
- 二零二五年度房屋租賃合同范本包含家具損壞賠償3篇
- 2025年度水利工程勞務(wù)分包與施工圖審核合同3篇
- 2025年度新能源汽車(chē)充電設(shè)施租賃認(rèn)籌協(xié)議書(shū)(綠色出行)3篇
- 代縣雁門(mén)光伏升壓站~寧遠(yuǎn)220kV線路工程環(huán)評(píng)報(bào)告
- 承諾函(支付寶)
- 危險(xiǎn)化學(xué)品目錄2023
- FZ/T 81024-2022機(jī)織披風(fēng)
- GB/T 24123-2009電容器用金屬化薄膜
- 艾滋病梅毒乙肝實(shí)驗(yàn)室檢測(cè)
- 國(guó)鐵橋梁人行道支架制作及安裝施工要點(diǎn)課件
- 領(lǐng)導(dǎo)科學(xué)全套精講課件
- 粵教版地理七年級(jí)下冊(cè)全冊(cè)課件
- 小學(xué)科學(xué)蘇教版六年級(jí)上冊(cè)全冊(cè)精華知識(shí)點(diǎn)(2022新版)
- 萎縮性胃炎共識(shí)解讀
評(píng)論
0/150
提交評(píng)論