版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、主講:王廣正wgz80930C 語言程序設(shè)計(jì)第3章 簡單C程序設(shè)計(jì) 程序的三種基本結(jié)構(gòu)順序結(jié)構(gòu)AB選擇結(jié)構(gòu)YNABP成立?循環(huán)結(jié)構(gòu)NYP成立?AYNAP成立?直到型循環(huán)當(dāng)型循環(huán)第三章 簡單的C程序設(shè)計(jì)C語言的語句類型數(shù)據(jù)輸出數(shù)據(jù)輸入順序結(jié)構(gòu)程序設(shè)計(jì)要求:重點(diǎn)掌握數(shù)據(jù)的輸入輸出函數(shù)3.1 C語言的語句類型主要內(nèi)容:說明性語句表達(dá)式語句控制語句復(fù)合語句說明性語句對程序中使用的變量、數(shù)組、函數(shù)等操作對象進(jìn)行定義、聲明的描述語句只起說明作用,不產(chǎn)生可執(zhí)行的機(jī)器指令代碼。 例如:int a,b; float function( int, int);C程序由函數(shù)組成。函數(shù)的格式:函數(shù)名(參數(shù)表) 說明部分
2、; 執(zhí)行部分;數(shù)據(jù)類型說明語句可執(zhí)行語句表達(dá)式后面加一個(gè)分號,構(gòu)成表達(dá)式語句x=3; y=y+5; x=a-b & c | d ; printf(x=%d, y=%dn,x,y); sort(a,10); 3.2表達(dá)式語句 賦值語句函數(shù)調(diào)用語句注意: 分號是語句必不可少的一部分 單獨(dú)的一個(gè)分號“;” 構(gòu)成一個(gè)空語句例如: ; (空語句,是最簡單的C語句)控制語句1選擇分支控制語句 if ( ) else switch ( ) 2循環(huán)控制語句 for ( ) while ( ) do while ( )3其他控制語句 break、continue、gotoreturn3.3復(fù)合語句 用一對花括號
3、“”括起來的若干條語句 花括號中可以是說明語句、表達(dá)式語句、控制語句,也可以是復(fù)合語句例如: if (ab) max=a; min=b; for(n=1; n= 100 ) printf(“dn”, p); break; 復(fù)合語句(續(xù))復(fù)合語句中如果有說明性語句,應(yīng)該寫在可執(zhí)行語句的前面例如: main( ) int a=3,b=5; if(ab) int max; max=a; printf(“max=%dn,max); else 要特別注意:花括號的配對花括號的位置C語言學(xué)習(xí)的難點(diǎn)之一3.4 字符數(shù)據(jù)的輸入輸出主要內(nèi)容:字符輸出函數(shù)(putchar)字符輸入函數(shù)(getchar)3.4.1
4、 putchar函數(shù)函數(shù)調(diào)用的一般形式: putchar(c) 功能:在標(biāo)準(zhǔn)輸出設(shè)備(即顯示器屏幕)上輸出一個(gè)字符。它輸出字符變量c的值,c可以是字符型變量或整型變量或轉(zhuǎn)義字符。例如:putchar(b); putchar(n); putchar(101);putchar(st); putchar函數(shù)說明putchar是C語言的標(biāo)準(zhǔn)庫函數(shù),使用時(shí)必須加編譯預(yù)處理命令:#include stdio.h 或 #include 【例】利用putchar函數(shù)輸出字符。#include stdio.h main( ) char c1,c2; c1=a ; c2=b ; putchar(c1);putch
5、ar(c2); putchar(n); putchar(c1-32);putchar(c2-32); putchar(n);也可改為c1=97 ; c2=98 ; 輸出結(jié)果:ab AB3.4.2 getchar函數(shù)函數(shù)調(diào)用的一般形式 getchar( ) 功能:從標(biāo)準(zhǔn)輸入設(shè)備(即鍵盤)上輸入一個(gè)字符。它沒有參數(shù),函數(shù)的值就是從輸入設(shè)備得到的字符。例如:getchar( ) ; c = getchar( ); printf(%c n,getchar( );例如:【例4.2】getchar函數(shù)的應(yīng)用。 #include stdio.hmain( ) char c; c=getchar( ); pu
6、tchar(c); putchar(n); a從鍵盤上輸入字符將字符給賦值給變量ca在屏幕上輸出getchar函數(shù)說明:getchar是C語言的標(biāo)準(zhǔn)庫函數(shù),使用時(shí)必須加編譯預(yù)處理命令:#include stdio.h 或 #include 使用getchar函數(shù),接收到輸入字符之后才繼續(xù)執(zhí)行程序。 連續(xù)使用getchar函數(shù)時(shí),要注意字符的輸入形式 ,例如執(zhí)行如下程序段:char ch1,ch2;ch1=getchar( );ch2=getchar( );必須連續(xù)輸入兩個(gè)字符,中間不能有其他字符3.5 格式輸入與輸出主要內(nèi)容:格式輸出函數(shù)(printf)格式輸入函數(shù)(scanf)3.5.1 p
7、rintf函數(shù)函數(shù)調(diào)用的一般形式 printf(格式控制, 輸出列表) 功能:按格式控制所指定的格式,在標(biāo)準(zhǔn)輸出設(shè)備上輸出“輸出列表”指定的數(shù)據(jù)的值。例如有程序段 :int a=123,b=100; printf(%d %d %dn,a,b,a+b); printf (c = %d + %d = %dn,a,b,a+b ); 格式控制 用雙引號括起的字符串,用于指定輸出數(shù)據(jù)的類型、格式、個(gè)數(shù)包括:普通字符和格式說明符照原樣輸出 printf (c=%d+%d=%dn, a, b, a+b );格式說明符:指定輸出3個(gè)十進(jìn)制整型數(shù),分別為變量 a、b、ab的值輸出格式說明符整型數(shù)據(jù) %d以有符號
8、十進(jìn)制形式輸出整型數(shù)%o以無符號八進(jìn)制形式輸出整型數(shù)%x以無符號十六進(jìn)制形式輸出整型數(shù)%u以無符號十進(jìn)制形式輸出整型數(shù)實(shí)型數(shù)據(jù) %f以小數(shù)形式輸出實(shí)型數(shù)%e以指數(shù)形式輸出實(shí)型數(shù)%g按數(shù)值寬度最小的形式輸出實(shí)型數(shù)字符型數(shù)據(jù) %c輸出一個(gè)字符%s輸出字符串其他 %輸出字符 % 本身在和格式符之間可以使用附加說明符附加格式說明符 l輸出長整型數(shù)(只可與d、o、x、u結(jié)合用)及double型數(shù)據(jù)(%lf,%le)m指定數(shù)據(jù)輸出的寬度(即域?qū)挘?n對實(shí)型數(shù)據(jù),指定輸出 n 位小數(shù);對字符串,指定左端截取n 個(gè)字符輸出+使輸出的數(shù)值數(shù)據(jù)無論正負(fù)都帶符號輸出-使數(shù)據(jù)在輸出域內(nèi)按左對齊方式輸出整數(shù)位數(shù)+小數(shù)位
9、數(shù)+小數(shù)點(diǎn) 自動(dòng)對n位后小數(shù)四舍五入 例如:%ld 輸出十進(jìn)制長整型數(shù) %m.nf 右對齊,m位域?qū)挘琻位小數(shù)或n個(gè)字符%-m.nf 左對齊 格式輸出舉例例3.3 無符號數(shù)據(jù)的輸出#include main()unsigned int a=65535;int b=-2;printf(“a=%d,%o,%x,%un”,a,a,a,a);printf(“b=%d,%o,%x,%un”,b,b,b,b);格式輸出舉例(續(xù))例3.4 字符數(shù)據(jù)的輸出#include main()char c=a;int i=97;printf(“%c,%dn”,c,c);printf(“%c,%dn”,i,i);格式輸
10、出舉例(續(xù))例3.5 字符串的輸出#include main() printf(“%3s,%7.2s,%.4s,%-5.3sn”,”CHINA”,”CHINA”,”CHINA”,”CHINA”);格式輸出舉例(續(xù))例3.8 輸出實(shí)數(shù)時(shí)指定小數(shù)位數(shù)#include main()float f=123.456;printf(“%f %10f %10.2f %.2f %-10.2fn”,f,f,f,f,f);注意:printf函數(shù)格式控制中的格式說明符與輸出參數(shù)的個(gè)數(shù)和類型必須一一對應(yīng)。 格式說明符的 % 和后面的描述符之間不能有空格。除 %X、%E、%G外類型描述符必須是小寫字母。 長整型數(shù)應(yīng)該用
11、ld(或lo、lx、lu)格式輸出,否則會(huì)出現(xiàn)輸出錯(cuò)誤。 如果想輸出“”,則應(yīng)該在格式控制字符串中連續(xù)使用兩個(gè)“”。3.5.2 scanf函數(shù)函數(shù)調(diào)用的一般形式 scanf(格式控制, 地址列表); 功能:按格式控制指定的格式,從標(biāo)準(zhǔn)輸入設(shè)備(即鍵盤)輸入數(shù)據(jù),并依次存放到對應(yīng)地址列表指定的變量中(即將輸入值賦給變量)。 例如:scanf (%d%f,&a, &f); scanf (%o, %f , &b,&x); scanf (a=%d, b=%d,&a,&b); 格式控制 用雙引號括起的字符串,用于指定輸入數(shù)據(jù)的類型、格式、個(gè)數(shù)以及輸入的形式 包括:普通字符和格式說明符照原樣輸入 scan
12、f (a=%d, b=%d, &a, &b);格式說明符:指定輸入2個(gè)十進(jìn)制整型數(shù)賦給變量 a 和 b輸入格式說明符整型數(shù)據(jù) %d輸入十進(jìn)制整型數(shù)%u輸入無符號的十進(jìn)制整型數(shù)%o輸入八進(jìn)制整型數(shù)%x輸入十六進(jìn)制整型數(shù)實(shí)型數(shù)據(jù) %f輸入小數(shù)形式的單精度實(shí)型數(shù)%e輸入指數(shù)形式的單精度實(shí)型數(shù)字符型數(shù)據(jù) %c輸入單個(gè)字符%s輸入一個(gè)字符串在和格式符之間可以使用附加說明符附加格式說明符 l與d、o、x、u結(jié)合輸入長整型數(shù)與 f 結(jié)合輸入double型數(shù)m指定數(shù)據(jù)輸入的寬度(即域?qū)挘?忽略讀入的數(shù)據(jù)(即不將讀入數(shù)據(jù)賦給相應(yīng)變量)例如:%ld、%lo輸入十進(jìn)制、八進(jìn)制長整型數(shù)%lf、%le輸入雙精度實(shí)型數(shù)%
13、mf輸入m位數(shù)(域?qū)挘?*d忽略輸入的一個(gè)整型數(shù)對float和double型指整數(shù)位數(shù)+小數(shù)點(diǎn) +小數(shù)位數(shù)例如:scanf (%d%d%d, &a, &b, &c); 輸入3個(gè)整型十進(jìn)制數(shù),以空白符(空格、tab鍵或回車鍵)分隔 scanf (%d, %o, %f , &a, &b, &x); 輸入3個(gè)數(shù),以“,”分隔scanf (a=%d, b=%d, &a, &b); 輸入的形式是:a=32, b=28 (普通字符要照原樣輸入)格式輸入舉例例4.9 用scanf函數(shù)輸入數(shù)據(jù)#include main()int a,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“%
14、d,%d,%dn”,a,b,c);使用scanf函數(shù)應(yīng)注意: 要求在程序運(yùn)行中輸入數(shù)據(jù),輸入的數(shù)據(jù)個(gè)數(shù)和類型必須與格式說明符一一對應(yīng)。地址參數(shù)形式:&變量名(除數(shù)組或指針變量) 格式控制中有普通字符時(shí),必須照原樣輸入。格式控制中無普通字符時(shí),輸入的數(shù)值型數(shù)據(jù)和字符串用空白符分隔,字符型數(shù)據(jù)不必分隔。 double型數(shù)據(jù)輸入時(shí),必須用%lf或%le格式實(shí)型數(shù)輸入時(shí)域?qū)挷荒苡胢.n形式的附加說明 為了減少不必要的輸入量,除了逗號、分號、空格符以外,格式控制中盡量不要出現(xiàn)普通字符,也不要使用 n 、t 等轉(zhuǎn)義字符scanf (%c%c%c, &ch1, &ch2, &ch3);要輸入:abc不能輸入
15、:abc注意數(shù)值型數(shù)據(jù)與char型數(shù)據(jù)的混合輸入注意(續(xù)) :格式符之間若無普通字符,則:輸入的數(shù)值型數(shù)據(jù)用空白符分隔輸入的 char型數(shù)據(jù)不必分隔 例如:scanf (%d%d, &m, &n);scanf (%c, &ch); 錯(cuò)誤輸入:3228a 正確輸入:3228a 補(bǔ)充說明 如果程序中只包含printf函數(shù)和scanf函數(shù),可以不加#include 但建議在所有的程序中都加上 #include 3.6 順序結(jié)構(gòu)程序設(shè)計(jì)順序結(jié)構(gòu)程序的一般算法描述變量定義變量賦值運(yùn)算處理輸出結(jié)果可用:變量初始化賦值語句輸入函數(shù)調(diào)用語句注意各個(gè)語句的順序順序結(jié)構(gòu)程序設(shè)計(jì)舉例 【例】數(shù)據(jù)交換。從鍵盤輸入a、
16、b的值,輸出交換以后的值。 思路: 在計(jì)算機(jī)中交換變量a和b的值,不能只寫下面兩個(gè)賦值語句: a=b ; b=a ; ?正確的交換方法:c=a ; a=b ; b=c;程序:main( ) int a,b,c; printf(ninput a, b: ); scanf(%d,%d,&a,&b); printf(nbefore exchange:a=%d b=%dn,a,b); c=a; a=b; b=c; printf(after exchange: a=%d b=%dn,a,b);程序運(yùn)行情況如下:input a, b: 32, 57 before exchange: a=32 b=57 after exchange: a=57 b=32 舉例: 【例】已知三條邊a、b、c,求三角形面積。計(jì)算三角形面積的海倫公式: 其中:設(shè)定義:整型變量 a、b、c實(shí)型變量 s 、 area程序如下: #include math.hmain( ) int a,b,c; float s,area ; scanf(%d, %d, %d,&a,&b,&c);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版產(chǎn)業(yè)升級募集資金三方監(jiān)管與支持合同4篇
- 2025年企業(yè)數(shù)字化智能物聯(lián)網(wǎng)物聯(lián)網(wǎng)連接合作協(xié)議
- 2025年家族財(cái)富傳承繼承管理規(guī)劃遺產(chǎn)協(xié)議
- 2025版委托擔(dān)保合同范本:互聯(lián)網(wǎng)金融平臺風(fēng)險(xiǎn)控制協(xié)議3篇
- 《地球上生命的起源課件》
- 二零二五年度生態(tài)旅游區(qū)開發(fā)合同書4篇
- 二零二五年度退休返聘人員合同終止告知書
- 二零二五年度大學(xué)生就業(yè)實(shí)習(xí)實(shí)訓(xùn)基地合作框架協(xié)議范本
- 2025年度醫(yī)療健康管理系統(tǒng)軟件購銷合同模板
- 2025年度汽車零部件車輛質(zhì)押租賃協(xié)議
- 2025年度公務(wù)車輛私人使用管理與責(zé)任協(xié)議書3篇
- 售后工程師述職報(bào)告
- 綠化養(yǎng)護(hù)難點(diǎn)要點(diǎn)分析及技術(shù)措施
- 2024年河北省高考?xì)v史試卷(含答案解析)
- 車位款抵扣工程款合同
- 小學(xué)六年級數(shù)學(xué)奧數(shù)題100題附答案(完整版)
- 高中綜評項(xiàng)目活動(dòng)設(shè)計(jì)范文
- 英漢互譯單詞練習(xí)打印紙
- 2023湖北武漢華中科技大學(xué)招聘實(shí)驗(yàn)技術(shù)人員24人筆試參考題庫(共500題)答案詳解版
- 一氯二氟甲烷安全技術(shù)說明書MSDS
- 物流簽收回執(zhí)單
評論
0/150
提交評論