版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
順序程序設計注意:聲明部分的內(nèi)容不產(chǎn)生機器操作,因此不是語句源程序文件1數(shù)據(jù)聲明函數(shù)首部函數(shù)體函數(shù)1源程序文件i源程序文件nC程序數(shù)據(jù)聲明執(zhí)行語句預處理命令函數(shù)n4.1C語句概述C程序結構2023/1/132語句的作用C的函數(shù)包括聲明部分和執(zhí)行部分,執(zhí)行部分由語句構成語句的作用是經(jīng)編譯后產(chǎn)生若干條機器指令,指揮機器執(zhí)行相應的操作2023/1/133語句的分類(P57-59)控制語句函數(shù)調(diào)用語句表達式語句空語句復合語句(又稱語句塊)2023/1/134復合語句例 if(x>y){ z=x+y;
t=z/100;
printf(“%f”,t); }注意:復合語句中最后一個語句后面的分號不能省略2023/1/1354.2賦值語句賦值語句是由賦值表達式加一個分號構成注意區(qū)別賦值表達式和賦值語句 一個表達式中可以包含一個或多個賦值表達式,但不能包含賦值語句 例: if((a=b)>0)t=a; √if((a=b;)>0)t=a; × if的條件中是表達式,不能包含賦值語句2023/1/1364.3數(shù)據(jù)的輸入輸出所謂輸入輸出是以計算機為主體而言C語言不提供輸入輸出語句,輸入和輸出操作是由函數(shù)來實現(xiàn)的C不提供輸入輸出語句的原因(P67)標準輸入輸出函數(shù):printf(),scanf(),putchar(),getchar(),puts(),gets()等在使用系統(tǒng)庫函數(shù)時,要用到預處理命令“#include”將有關的頭文件包括到源文件中
#include<stdio.h>或#include“stdio.h”2023/1/1374.3.1用printf函數(shù)輸出數(shù)據(jù)作用:向標準終端設備以指定格式輸出數(shù)據(jù)形式:printf(格式控制,輸出表列)
例:printf(“%d,%c\n”,i,c)格式控制:是用雙引號括起來的字符串,包含兩種信息格式聲明,由“%”和格式字符組成,格式聲明總是由“%”字符開始普通字符,即需要原樣輸出的字符輸出表列:是需要輸出的一些數(shù)據(jù),可以是常量、變量或表達式一般形式:printf(參數(shù)1,參數(shù)2,…參數(shù)n)2023/1/138格式字符(P74表)d格式符
o格式符
x格式符
u格式符
c格式符
s格式符
f格式符
e格式符
g格式符2023/1/139d格式符%d 以十進制有符號形式輸出整型數(shù)據(jù)%md m為指定的輸出字段的寬度 例:a=123;d=12345;printf(“%4d,%4d”,a,b);%ld 輸出長整型數(shù)據(jù)
例:longa=135790;printf(“%ld”,a);
對長整型數(shù)據(jù)也可以制定字段寬度 例:printf(“%8ld”,a);2023/1/1310o格式符和x格式符%o 以八進制無符號形式輸出整數(shù)(不輸出前導符0) 例:inta=-1;printf(“%d,%o”,a,a);
輸出結果為:-1,37777777777%lo 輸出長整型數(shù)據(jù),同樣可以加字段寬度%x(與%o類似)以十六進制無符號形式輸出整數(shù)(不輸出前導符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;}運行結果:a=-1,37777777777,ffffffff,4294967295
b=-1,37777777777,ffffffff,4294967295u格式符%u 以十進制無符號形式輸出整數(shù)一個有符號整數(shù)也可以用%u格式輸出;反之,一個unsigned也可以用%d、%o、%x格式輸出2023/1/1312%c 輸出一個字符可以指定輸出域寬整數(shù)也可以用%c格式輸出,系統(tǒng)自動取最后一個字節(jié)的信息以字符形式輸出(P71圖3.18);反之,一個字符數(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 輸出一個字符串%ms%-ms%m.ns%-m.ns輸出如下:china,□□□□□ch,chin,chi□□s格式符2023/1/1314以小數(shù)形式輸出實數(shù)(包括單、雙精度數(shù))%f 整數(shù)部分全部輸出,并輸出6位小數(shù)(并非全部數(shù)據(jù)都是有效數(shù)字)%m.nf 指定域寬及小數(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;}//當小數(shù)部分被指定為0時,小數(shù)和小數(shù)點都不輸出2023/1/1316e格式符以標準化指數(shù)形式輸出實數(shù)(小數(shù)點前必須有而且只有1位非零數(shù)字)%e TC給出5位小數(shù),指數(shù)部分4位(“e”占1位,指數(shù)符號占1位,指數(shù)占2位);VC給定6位小數(shù),指數(shù)部分占5位,指數(shù)占3位%m.ne和%-m.ne n的含義VC和TC不同,VC中n代表小數(shù)點后面的小數(shù)位數(shù),而TC中n包括小數(shù)點在內(nèi)的小數(shù)位數(shù)2023/1/1317輸出:123.400002,1.234000e+002,123.4g格式符自動選擇f格式或e格式中較短的一種來輸出實數(shù),且不輸出無意義的0
例:floatf=123.4;printf("%f,%e,%g",f,f,f);2023/1/1318注意事項輸出對象的類型應與格式控制字符匹配除X,E,G外,其他格式字符必須用小寫字母可以在printf()函數(shù)中的“格式控制”字符串內(nèi)包含“轉義字符”,如:”\n”,”\t”等一個格式聲明以“%”開頭,以d、o、x、u、c、s、f、e、g等字符之一結束,中間可以插入附加格式字符,如:字符”l”等(P74表3.7)如果想輸出字符“%”,則應該在“格式控制”字符串中用連續(xù)兩個%表示,例
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注意事項“格式控制”后面應是變量地址,而不是變量名 上例若改為scanf(“%d%d%d”,a,b,c);則會出錯連續(xù)輸入多個數(shù)據(jù)時,數(shù)值之間的分隔符應是一個或多個空白字符(空格,<Tab>鍵和<Enter>鍵),輸入結束時按<Enter>鍵2023/1/1322注意事項當輸入格式控制字符串中有非格式控制字符做分隔時,應將這些字符照原樣輸入(系統(tǒng)會做對照檢查),否則會出錯#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ù)據(jù)時,何時認為結束輸入最后數(shù)據(jù)并遇到<Enter>鍵非法輸入并遇到<Enter>鍵(P77-78例)scanf(“%c%c%c”,&c1,&c2,&c3);若輸入a□b□c則’a’->c1,□->c2,’b’->c3正確的方法是輸入abc注意事項2023/1/1324注意事項輸入:123456789結果:123=>a 456=>b ’7’=>ch可以指定輸入數(shù)據(jù)所占列數(shù),系統(tǒng)自動截取所需數(shù)據(jù)
scanf(“%3d%3d”,&a,&b);scanf(“%3c”,&ch);2023/1/1325注意事項輸入:12□345□67
結果:12=>a67=>b%后的“*”附加說明符被稱為抑制符,用來表示跳過它相應的數(shù)據(jù)
scanf(“%2d%*3d%2d”,&a,&b);輸入數(shù)據(jù)時,不能規(guī)定精度
例:scanf(“%7.2f”,&a);是不合法的2023/1/13264.3.3字符數(shù)據(jù)的輸入輸出putchar函數(shù):字符輸出函數(shù)
putchar(c)/*c可以是字符型或整型數(shù)據(jù)*/getchar函數(shù):字符輸入函數(shù)
此函數(shù)沒有參數(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; }
運行結果是:BOY
A\a2023/1/1328字符輸入例#include<stdio.h>intmain() //注意P80說明{ 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順序程序設計舉例例1輸入三角形邊長,求面積例2從鍵盤輸入大寫字母,用小寫字母輸出例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輸入三角形邊長,求面積文件包含預處理命令變量定義輸入數(shù)據(jù)輸出數(shù)據(jù)運行情況如下:
3,4,6
a=□□□3.00,b=□□□4.00,c=□□□6.00,l=□□□6.50
area=□□□5.332023/1/1331例2從鍵盤輸入大寫字母,用小寫字母輸出#include<stdio.h>intmain(){charc1,c2;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度白酒原料種植與加工合作合同3篇
- 2025年蔬菜包裝設計居間服務合作協(xié)議3篇
- 二零二五年度木門安裝與室內(nèi)設計一體化服務協(xié)議3篇
- 2025年桶裝水配送綠色環(huán)保標準合作協(xié)議3篇
- 二零二五年度國際旅行社服務外包合同4篇
- 2025年度跨境電商進口商品買賣合同范本4篇
- 二零二五年高端商業(yè)區(qū)停車場投資運營合同3篇
- 臨時職位安全要求協(xié)議(2024年)
- 二零二五年度股權抵押貸款擔保機構管理合同示范3篇
- 2025年度虛擬現(xiàn)實游戲平臺授權運營合同4篇
- GB/T 12914-2008紙和紙板抗張強度的測定
- GB/T 1185-2006光學零件表面疵病
- ps6000自動化系統(tǒng)用戶操作及問題處理培訓
- 家庭教養(yǎng)方式問卷(含評分標準)
- 城市軌道交通安全管理課件(完整版)
- 線纜包覆擠塑模設計和原理
- TSG ZF001-2006 安全閥安全技術監(jiān)察規(guī)程
- 部編版二年級語文下冊《蜘蛛開店》
- 鍋爐升降平臺管理
- 200m3╱h凈化水處理站設計方案
- 個體化健康教育記錄表格模板1
評論
0/150
提交評論