版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
順序程序設(shè)計(jì)注意:聲明部分的內(nèi)容不產(chǎn)生機(jī)器操作,因此不是語(yǔ)句源程序文件1數(shù)據(jù)聲明函數(shù)首部函數(shù)體函數(shù)1源程序文件i源程序文件nC程序數(shù)據(jù)聲明執(zhí)行語(yǔ)句預(yù)處理命令函數(shù)n4.1C語(yǔ)句概述C程序結(jié)構(gòu)2023/1/132語(yǔ)句的作用C的函數(shù)包括聲明部分和執(zhí)行部分,執(zhí)行部分由語(yǔ)句構(gòu)成語(yǔ)句的作用是經(jīng)編譯后產(chǎn)生若干條機(jī)器指令,指揮機(jī)器執(zhí)行相應(yīng)的操作2023/1/133語(yǔ)句的分類(lèi)(P57-59)控制語(yǔ)句函數(shù)調(diào)用語(yǔ)句表達(dá)式語(yǔ)句空語(yǔ)句復(fù)合語(yǔ)句(又稱(chēng)語(yǔ)句塊)2023/1/134復(fù)合語(yǔ)句例 if(x>y){ z=x+y;
t=z/100;
printf(“%f”,t); }注意:復(fù)合語(yǔ)句中最后一個(gè)語(yǔ)句后面的分號(hào)不能省略2023/1/1354.2賦值語(yǔ)句賦值語(yǔ)句是由賦值表達(dá)式加一個(gè)分號(hào)構(gòu)成注意區(qū)別賦值表達(dá)式和賦值語(yǔ)句 一個(gè)表達(dá)式中可以包含一個(gè)或多個(gè)賦值表達(dá)式,但不能包含賦值語(yǔ)句 例: if((a=b)>0)t=a; √if((a=b;)>0)t=a; × if的條件中是表達(dá)式,不能包含賦值語(yǔ)句2023/1/1364.3數(shù)據(jù)的輸入輸出所謂輸入輸出是以計(jì)算機(jī)為主體而言C語(yǔ)言不提供輸入輸出語(yǔ)句,輸入和輸出操作是由函數(shù)來(lái)實(shí)現(xiàn)的C不提供輸入輸出語(yǔ)句的原因(P67)標(biāo)準(zhǔn)輸入輸出函數(shù):printf(),scanf(),putchar(),getchar(),puts(),gets()等在使用系統(tǒng)庫(kù)函數(shù)時(shí),要用到預(yù)處理命令“#include”將有關(guān)的頭文件包括到源文件中
#include<stdio.h>或#include“stdio.h”2023/1/1374.3.1用printf函數(shù)輸出數(shù)據(jù)作用:向標(biāo)準(zhǔn)終端設(shè)備以指定格式輸出數(shù)據(jù)形式:printf(格式控制,輸出表列)
例:printf(“%d,%c\n”,i,c)格式控制:是用雙引號(hào)括起來(lái)的字符串,包含兩種信息格式聲明,由“%”和格式字符組成,格式聲明總是由“%”字符開(kāi)始普通字符,即需要原樣輸出的字符輸出表列:是需要輸出的一些數(shù)據(jù),可以是常量、變量或表達(dá)式一般形式:printf(參數(shù)1,參數(shù)2,…參數(shù)n)2023/1/138格式字符(P74表)d格式符
o格式符
x格式符
u格式符
c格式符
s格式符
f格式符
e格式符
g格式符2023/1/139d格式符%d 以十進(jìn)制有符號(hào)形式輸出整型數(shù)據(jù)%md m為指定的輸出字段的寬度 例:a=123;d=12345;printf(“%4d,%4d”,a,b);%ld 輸出長(zhǎng)整型數(shù)據(jù)
例:longa=135790;printf(“%ld”,a);
對(duì)長(zhǎng)整型數(shù)據(jù)也可以制定字段寬度 例:printf(“%8ld”,a);2023/1/1310o格式符和x格式符%o 以八進(jìn)制無(wú)符號(hào)形式輸出整數(shù)(不輸出前導(dǎo)符0) 例:inta=-1;printf(“%d,%o”,a,a);
輸出結(jié)果為:-1,37777777777%lo 輸出長(zhǎng)整型數(shù)據(jù),同樣可以加字段寬度%x(與%o類(lèi)似)以十六進(jìn)制無(wú)符號(hào)形式輸出整數(shù)(不輸出前導(dǎo)符0x) 例:inta=-1;printf(“%x,%d,%o”,a,a,a);
輸出:-1,37777777777,ffffffff2023/1/1311#include<stdio.h>intmain()
{ inta=-1; unsignedintb=4294967295;
printf("a=%d,%o,%x,%u\n",a,a,a,a);
printf("b=%d,%o,%x,%u\n",b,b,b,b);
return0;}運(yùn)行結(jié)果:a=-1,37777777777,ffffffff,4294967295
b=-1,37777777777,ffffffff,4294967295u格式符%u 以十進(jìn)制無(wú)符號(hào)形式輸出整數(shù)一個(gè)有符號(hào)整數(shù)也可以用%u格式輸出;反之,一個(gè)unsigned也可以用%d、%o、%x格式輸出2023/1/1312%c 輸出一個(gè)字符可以指定輸出域?qū)捳麛?shù)也可以用%c格式輸出,系統(tǒng)自動(dòng)取最后一個(gè)字節(jié)的信息以字符形式輸出(P71圖3.18);反之,一個(gè)字符數(shù)據(jù)也可以用整數(shù)格式(%d、%o、%x)輸出c格式符2023/1/1313#include<stdio.h>intmain()
{printf("%3s,%7.2s,%.4s,%-5.3s\n","china","china","china","china");return0;}%s 輸出一個(gè)字符串%ms%-ms%m.ns%-m.ns輸出如下:china,□□□□□ch,chin,chi□□s格式符2023/1/1314以小數(shù)形式輸出實(shí)數(shù)(包括單、雙精度數(shù))%f 整數(shù)部分全部輸出,并輸出6位小數(shù)(并非全部數(shù)據(jù)都是有效數(shù)字)%m.nf 指定域?qū)捈靶?shù)位數(shù)%-m.nf#include<stdio.h>intmain()
{floatf=123.456;
printf("%f,%10f,%10.2f,%.2f,%-10.2f\n",f,f,f,f,f);return0;}輸出如下:
123.456001,123.456001,□□□□123.46,123.46,123.46□□□□f格式符2023/1/1315輸出double型數(shù)據(jù)例#include<stdio.h>intmain(){ doublea=1.0;
printf("%f,%20.15f,%55.50f\n",a/3,a/3,a/3); printf("%8.0f\n",a/3); return0;}//當(dāng)小數(shù)部分被指定為0時(shí),小數(shù)和小數(shù)點(diǎn)都不輸出2023/1/1316e格式符以標(biāo)準(zhǔn)化指數(shù)形式輸出實(shí)數(shù)(小數(shù)點(diǎn)前必須有而且只有1位非零數(shù)字)%e TC給出5位小數(shù),指數(shù)部分4位(“e”占1位,指數(shù)符號(hào)占1位,指數(shù)占2位);VC給定6位小數(shù),指數(shù)部分占5位,指數(shù)占3位%m.ne和%-m.ne n的含義VC和TC不同,VC中n代表小數(shù)點(diǎn)后面的小數(shù)位數(shù),而TC中n包括小數(shù)點(diǎn)在內(nèi)的小數(shù)位數(shù)2023/1/1317輸出:123.400002,1.234000e+002,123.4g格式符自動(dòng)選擇f格式或e格式中較短的一種來(lái)輸出實(shí)數(shù),且不輸出無(wú)意義的0
例:floatf=123.4;printf("%f,%e,%g",f,f,f);2023/1/1318注意事項(xiàng)輸出對(duì)象的類(lèi)型應(yīng)與格式控制字符匹配除X,E,G外,其他格式字符必須用小寫(xiě)字母可以在printf()函數(shù)中的“格式控制”字符串內(nèi)包含“轉(zhuǎn)義字符”,如:”\n”,”\t”等一個(gè)格式聲明以“%”開(kāi)頭,以d、o、x、u、c、s、f、e、g等字符之一結(jié)束,中間可以插入附加格式字符,如:字符”l”等(P74表3.7)如果想輸出字符“%”,則應(yīng)該在“格式控制”字符串中用連續(xù)兩個(gè)%表示,例
printf("%f%%",1.0/3);2023/1/13194.3.2用scanf函數(shù)輸入數(shù)據(jù)形式:scanf(格式控制,地址列表)格式控制:含義同printf函數(shù)(P76)地址列表:是由若干地址組成的列表,可以是變量的地址,或字符串的首地址2023/1/1320scanf函數(shù)例#include<stdio.h>intmain(){ inta,b,c;scanf("%d%d%d",&a,&b,&c);printf("%d,%d,%d\n",a,b,c); return0;}2023/1/1321注意事項(xiàng)“格式控制”后面應(yīng)是變量地址,而不是變量名 上例若改為scanf(“%d%d%d”,a,b,c);則會(huì)出錯(cuò)連續(xù)輸入多個(gè)數(shù)據(jù)時(shí),數(shù)值之間的分隔符應(yīng)是一個(gè)或多個(gè)空白字符(空格,<Tab>鍵和<Enter>鍵),輸入結(jié)束時(shí)按<Enter>鍵2023/1/1322注意事項(xiàng)當(dāng)輸入格式控制字符串中有非格式控制字符做分隔時(shí),應(yīng)將這些字符照原樣輸入(系統(tǒng)會(huì)做對(duì)照檢查),否則會(huì)出錯(cuò)#include<stdio.h>intmain(){ inti,j; scanf("i=%d,j=%d",&i,&j); printf("ii=%d,jj=%d\n",i,j); return0; }2023/1/1323輸入字符型數(shù)據(jù)時(shí),字符之間不需要分隔符,空白字符及轉(zhuǎn)義字符都被作為有效字符輸入輸入數(shù)據(jù)時(shí),何時(shí)認(rèn)為結(jié)束輸入最后數(shù)據(jù)并遇到<Enter>鍵非法輸入并遇到<Enter>鍵(P77-78例)scanf(“%c%c%c”,&c1,&c2,&c3);若輸入a□b□c則’a’->c1,□->c2,’b’->c3正確的方法是輸入abc注意事項(xiàng)2023/1/1324注意事項(xiàng)輸入:123456789結(jié)果:123=>a 456=>b ’7’=>ch可以指定輸入數(shù)據(jù)所占列數(shù),系統(tǒng)自動(dòng)截取所需數(shù)據(jù)
scanf(“%3d%3d”,&a,&b);scanf(“%3c”,&ch);2023/1/1325注意事項(xiàng)輸入:12□345□67
結(jié)果:12=>a67=>b%后的“*”附加說(shuō)明符被稱(chēng)為抑制符,用來(lái)表示跳過(guò)它相應(yīng)的數(shù)據(jù)
scanf(“%2d%*3d%2d”,&a,&b);輸入數(shù)據(jù)時(shí),不能規(guī)定精度
例:scanf(“%7.2f”,&a);是不合法的2023/1/13264.3.3字符數(shù)據(jù)的輸入輸出putchar函數(shù):字符輸出函數(shù)
putchar(c)/*c可以是字符型或整型數(shù)據(jù)*/getchar函數(shù):字符輸入函數(shù)
此函數(shù)沒(méi)有參數(shù),其一般形式為:getchar()2023/1/1327字符輸出例 #include<stdio.h>
intmain()
{ chara,b,c;
a=‘B’;b=‘O’;c=‘Y’;
putchar(a);putchar(b);putchar(c);
putchar(‘\n’);
putchar(‘\101’);putchar(‘\\’); putchar(‘\x61’); return0; }
運(yùn)行結(jié)果是:BOY
A\a2023/1/1328字符輸入例#include<stdio.h>intmain() //注意P80說(shuō)明{ chara,b,c; a=getchar(); b=getchar(); c=getchar(); putchar(a); //putchar(getchar()); putchar(b);//printf(“%c”,getchar()); putchar(c); return0;}2023/1/13294.4順序程序設(shè)計(jì)舉例例1輸入三角形邊長(zhǎng),求面積例2從鍵盤(pán)輸入大寫(xiě)字母,用小寫(xiě)字母輸出例3求ax2+bx+c=0方程的根2023/1/1330#include<math.h>#include<stdio.h>intmain(){floata,b,c,l,area;scanf("%f,%f,%f",&a,&b,&c);l=1.0/2*(a+b+c);area=sqrt(l*(l-a)*(l-b)*(l-c));printf("a=%7.2f,b=%7.2f,c=%7.2f,l=%7.2f\n",a,b,c,l);printf("area=%7.2f\n",area);return0;}例1輸入三角形邊長(zhǎng),求面積文件包含預(yù)處理命令變量定義輸入數(shù)據(jù)輸出數(shù)據(jù)運(yùn)行情況如下:
3,4,6
a=□□□3.00,b=□□□4.00,c=□□□6.00,l=□□□6.50
area=□□□5.332023/1/1331例2從鍵盤(pán)輸入大寫(xiě)字母,用小寫(xiě)字母輸出#include<stdio.h>intmain(){charc1,c2;
溫馨提示
- 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河北廊坊大廠回族自治縣殯儀館招聘2人參考考試試題及答案解析
- 2025民航上海醫(yī)院(瑞金醫(yī)院古北分院)事業(yè)編制招聘62人備考筆試試題及答案解析
- 2026江蘇連云港東海縣部分事業(yè)單位赴高校招聘高層次人才8人備考筆試試題及答案解析
- 2025保山市隆陽(yáng)區(qū)蒲縹鎮(zhèn)中心衛(wèi)生院公開(kāi)招聘見(jiàn)習(xí)人員、鄉(xiāng)村醫(yī)生(9人)參考筆試題庫(kù)附答案解析
- 2023河北省事業(yè)單位考試《公共基礎(chǔ)知識(shí)》考前訓(xùn)練題
- 網(wǎng)字體版權(quán)協(xié)議書(shū)
- 網(wǎng)點(diǎn)墻打通協(xié)議書(shū)
- 聯(lián)合體內(nèi)部協(xié)議書(shū)
- 聯(lián)建協(xié)議屬于合同
- 聯(lián)營(yíng)轉(zhuǎn)直營(yíng)協(xié)議書(shū)
- 國(guó)家預(yù)算實(shí)驗(yàn)報(bào)告
- 工業(yè)園區(qū)綜合能源智能管理平臺(tái)建設(shè)方案合集
- 附件1:中國(guó)聯(lián)通動(dòng)環(huán)監(jiān)控系統(tǒng)B接口技術(shù)規(guī)范(V3.0)
- 正弦函數(shù)、余弦函數(shù)的圖象 說(shuō)課課件
- 閉合性顱腦損傷病人護(hù)理查房
- 《立血康軟膠囊研究6400字(論文)》
- GB/T 19216.21-2003在火焰條件下電纜或光纜的線路完整性試驗(yàn)第21部分:試驗(yàn)步驟和要求-額定電壓0.6/1.0kV及以下電纜
- 《你看起來(lái)好像很好吃》繪本課件
- 囊袋皺縮綜合征課件
- 硬件原理圖設(shè)計(jì)規(guī)范
- 2023版北京協(xié)和醫(yī)院重癥醫(yī)學(xué)科診療常規(guī)
評(píng)論
0/150
提交評(píng)論