版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第1頁第3章 程序設(shè)計初步本章概述 本章的學(xué)習(xí)目的主要內(nèi)容第2頁本章概述本章主要引見以下內(nèi)容:常用的輸入輸出函數(shù)簡單順序構(gòu)造程序設(shè)計舉例第3頁本章的學(xué)習(xí)目的本章教學(xué)目的: 掌握賦值語句的運用方法,掌握putchar、getchar、printf、scanf函數(shù)的運用方法,能編寫簡單的程序。本章教學(xué)重點:printf、scanf函數(shù)的運用方法本章教學(xué)難點:printf、scanf函數(shù)的運用方法第4頁主要內(nèi)容3.1 C語句概述 3.2 順序構(gòu)造程序設(shè)計 3.3 數(shù)據(jù)的輸入與輸出 3.4 程序設(shè)計舉例第5頁3.1 C語句概述3.1.1 C語句的種類 在C程序中,共有如下五種C語句組成: 1表達(dá)式語句
2、由一個表達(dá)式的后面加上一個分號構(gòu)成的語句2函數(shù)調(diào)用語句由函數(shù)名、實踐參數(shù)加上“;組成。其普通方式為:“函數(shù)名(實踐參數(shù)表);。第6頁3控制語句控制語句用于控制程序的流程,以實現(xiàn)程序的各種構(gòu)造方式。它們由特定的語句定義符組成。C言語有九種控制語句??煞殖梢韵氯悾?1) 條件判別語句: if語句、switch語句(2) 循環(huán)執(zhí)行語句: do while語句、while語句、for語句(3) 轉(zhuǎn)向語句:break語句、continue語句、goto語句、return語句 4復(fù)合語句把多個語句用括號括起來組成的語句稱為復(fù)合語句。在程序中應(yīng)把復(fù)合語句看成是單條語句,而不是多條語句,例如 5空語句只需“
3、;組成的語句稱為空語句第7頁3.1 C語句概述3.1.2 C程序的賦值語句闡明:1.由于在賦值符“=右邊的表達(dá)式可以是另一個賦值表達(dá)式,因此,下述方式“變量=(變量=表達(dá)式);是成立的,從而構(gòu)成嵌套的方式。其展開之后的普通方式為:“變量=變量=表達(dá)式; 2.留意在變量闡明中給變量賦初值和賦值語句的區(qū)別。給變量賦初值是變量闡明的一部分,賦初值后的變量與其后的其它同類型變量之間仍必需用逗號間隔,而賦值語句那么必需用分號結(jié)尾。 第8頁3.1 C語句概述3.在變量闡明中,不允許延續(xù)給多個變量賦初值。 如下述闡明是錯誤的:“int a=b=c=5;,必需寫成“int a=5,b=5,c=5;,而賦值語句
4、允許延續(xù)賦值。4.留意賦值表達(dá)式和賦值語句的區(qū)別,賦值表達(dá)式是一種表達(dá)式,它可以出如今任何允許表達(dá)式出現(xiàn)的地方,而賦值語句那么不能。語句“if(x=y+5)0) z=x;是合法的,它的功能是,假設(shè)表達(dá)式“x=y+5大于0那么z=x。語句“if(x=y+5;)0) z=x;是非法的,由于“x=y+5;是語句,不能出如今表達(dá)式中。第9頁3.2 順序構(gòu)造程序設(shè)計 通常,構(gòu)造化程序設(shè)計包括以下三種根本構(gòu)造,即順序構(gòu)造、選擇構(gòu)造和循環(huán)構(gòu)造。它們的構(gòu)造流程圖如以下圖所示:第10頁例3.1 知長方形的長和寬,計算其周長和面積。流程圖如圖3.2所示,程序如下。#include int main() float
5、 x, y,c,area; printf(輸入長和寬:); scanf(%f, %f, &x,&y); c=2*(x+y); area=x*y; printf(周長是: %fn, c); printf(面積是: %fn, area); return 0;運轉(zhuǎn)情況如下:輸入長和寬:3.0,4.0周長是:14.000000面積是:12.000000 圖3.2 計算周長和面積的流程圖 第11頁3.3 數(shù)據(jù)的輸入與輸出 在言語中,一切的數(shù)據(jù)輸入輸出都是由庫函數(shù)完成的,因此都是函數(shù)調(diào)用語句。本節(jié)主要引見常用的格式輸出函數(shù)printf()、格式輸入函數(shù)scanf()及字符輸入函數(shù)getchar()、get
6、ch()和字符輸出函數(shù)putchar()。 第12頁3.3 數(shù)據(jù)的輸入與輸出 3.3.1 printf函數(shù)1 printf( )函數(shù)的普通方式 printf函數(shù)的調(diào)用格式為: printf(“格式控制串,輸出表列); “格式控制串用于指定輸出格式。它必需用雙引號括起來,由格式闡明符、普通字符和本義字符組成。第13頁3.3 數(shù)據(jù)的輸入與輸出 例3.2 寫出下面程序的輸出結(jié)果。程序代碼如下:#include int main() int a=65,b=97; printf(%d %dn,a,b); printf(%d,%dn,a,b); printf(%c,%cn,a,b); printf(a=%
7、d,b=%d,a,b); return 0;程序的輸出結(jié)果如下:65 9765,97A,aa=65,b=97 第14頁3.3 數(shù)據(jù)的輸入與輸出 2.printf函數(shù) 格式闡明(1) 整型數(shù)據(jù)輸出的格式字符 整型的輸出方式有四種:帶符號的十進(jìn)制整型方式、無符號的十進(jìn)制整型方式、無符號的十六進(jìn)制方式和無符號的八進(jìn)制方式。分別運用格式字符d、u、x或X和o。其中x表示以小寫方式輸出十六進(jìn)的af,X表示以大寫方式輸出。(2) 字符型數(shù)據(jù)輸出的格式字符 在輸出字符型數(shù)據(jù)時,假設(shè)要輸出一個字符,那么運用格式字符c;假設(shè)要輸出一串字符,那么要運用格式字符s。 第15頁3.3 數(shù)據(jù)的輸入與輸出 (3) 實型數(shù)
8、據(jù)輸出的格式字符 實型數(shù)據(jù)輸出的格式字符有f、e或E、g或G幾種方式。其中格式字符f表示以小數(shù)方式輸出實數(shù);格式字符e或E表示以指數(shù)方式輸出實數(shù);格式字符g或G表示輸出時自動選擇運用格式字符f或e。第16頁例3.3 寫出下面程序的輸出結(jié)果。#include int main() int a,b; char c; float s1,s2,sum; a=65; b=-3; s1=123.4; s2=56.75; sum=s1+s2; c=A; printf(%d %c%d %o %f %c %d,a,a,b,b,sum,c,c); return 0;程序運轉(zhuǎn)結(jié)果如下:65 A 3 177775 1
9、80.150002 A 65 第17頁3.3 數(shù)據(jù)的輸入與輸出 3本義字符 在printf()函數(shù)中,也可以運用本義字符(在第二章中曾經(jīng)引見),本義字符是一個以“開頭的字符序列。在表2.2中已列出常用的本義字符。4修飾字符 在printf( )函數(shù)中,一切的輸出格式都是以“%開場,再接一組有意義的字母。假想象使數(shù)據(jù)按固定的字段長度輸出,可以在“%后面加上輸出長度的數(shù)值。如“%3d,表示輸出十進(jìn)制整數(shù)時,長度共占3列;“%6.3f那么表示輸出浮點數(shù)時,長度包括小數(shù)點共有6列,小數(shù)點前占2列,小數(shù)占3列。第18頁例3.4 寫出如下程序的執(zhí)行結(jié)果。#include int main( ) print
10、f(what do you like? ); return 0; 程序輸出結(jié)果如下:What do you like? 第19頁printf函數(shù)的修飾符第20頁例3.5 寫出下面程序的輸出結(jié)果。#include int main( ) int i = 56, j=13; float f=12.3456; printf(i=%-4d, i); printf(j=%4dn,j); printf(f=%6.2fn,f); return 0;輸出結(jié)果如下:i=56 j= 13f= 12.35第21頁例3.6 寫出下面程序的輸出結(jié)果。#include int main() int a=2,b=8; fl
11、oat x=123.4567, y=-567.123; char c=A; long d=1234567; unsigned long e=65535; printf(%3d%3dn,a,b); printf(%-12f,%-12fn,x,y); printf(%7.2f,%7.2fn,x,y); printf(%e,%10.2en,x,y); printf(%c,%d,%o,%xn,c,c,c,c); printf(%ld,%lo,%lxn,d,d,d); printf(%u,%o,%xn,e,e,e); printf(%s,%5.3sn,computer, computer); retur
12、n 0;程序的運轉(zhuǎn)結(jié)果如下: 2 8123.456703 ,567.122986 (計算機(jī)表示實數(shù)不準(zhǔn)確, 所以顯示結(jié)果有誤差)123.46,-567.12 (列寬為7,小數(shù)點后取兩位)1.234567e+002, -5.67e+002A,65,101,411234567,4553207,12d68765535,177777,ffffcomputer, com (按%5.3s格式輸出“computer, 取“computer前3個字符, 列寬為5) 第22頁3.3 數(shù)據(jù)的輸入與輸出 3.3.2 scanf函數(shù)格式輸入函數(shù)scanf( )的作用是在終端設(shè)備上,以指定的格式輸入一個或多個恣意類型的
13、數(shù)據(jù)。第23頁3.3 數(shù)據(jù)的輸入與輸出1scanf()函數(shù)的普通格式scanf( )函數(shù)的調(diào)用格式scanf“格式控制串,&變量1,&變量2,;“格式控制串用于指定輸入格式,它必需用雙引號括起來,由格式闡明符、普通字符組成。格式闡明符由%和格式字符組成,用于闡明輸入數(shù)據(jù)的格式。如“%d表示按十進(jìn)制整型輸入,“%c表示按字符型輸入。普通字符是指在輸入數(shù)據(jù)時按原樣輸入的字符。而“&變量1、“&變量2等那么是當(dāng)用戶由鍵盤上輸入數(shù)據(jù)并按下回車鍵后,數(shù)據(jù)內(nèi)容就會傳送到相應(yīng)變量的內(nèi)存單元中。運用scanf()函數(shù)時要留意的是,在變量名前面必需加上地址運算符“&第24頁3.3 數(shù)據(jù)的輸入與輸出例3.7 由鍵
14、盤輸入兩個整數(shù)并求其平均值及總和。# include int main ( )int a,b;scanf(“%d %d, &a,&b); /*由鍵盤輸入兩個數(shù)并賦給變量a、b*/printf(“a+b=%dn,a+b); /*計算總和并輸出內(nèi)容*/printf(“(a+b)/2=%1f n,(float) (a+b)/2); /*輸出平均值*/return 0;第25頁3.3 數(shù)據(jù)的輸入與輸出第26頁3.3 數(shù)據(jù)的輸入與輸出3. 運用scanf()函數(shù)必需留意的問題(1)在scanf()函數(shù)“格式控制串部分中的每個格式闡明符,都必需有一個變量與之對應(yīng)。而且,格式闡明符必需求與相應(yīng)變量的類型一致
15、。(2)scanf()中要求給出變量地址,如只給出變量名那么會出錯。如語句“scanf(“%d,a);是非法的,應(yīng)改為“scanf(“%d,&a);才是合法的。(3)當(dāng)格式闡明符之間沒有任何字符時,在輸入數(shù)據(jù)時,兩個數(shù)據(jù)之間運用“空格、“tab或“回車鍵作間隔;假設(shè)格式闡明符之間包含其他字符,那么輸入數(shù)據(jù)時,應(yīng)輸入與這些字符一樣的字符作間隔。第27頁3.3 數(shù)據(jù)的輸入與輸出(4)可以在格式闡明符的前面指定輸入數(shù)據(jù)所占的列數(shù),系統(tǒng)將自動按此列數(shù)截取所需的數(shù)據(jù),如:scanf (“%2d%3d,&x,&y);當(dāng)用戶輸入12345時,系統(tǒng)將自動地把12賦給變量x,將345賦給變量y。這種方式也可用于
16、字符型數(shù)據(jù)的輸入。第28頁3.3 數(shù)據(jù)的輸入與輸出3.3.3 getchar、putchar及getch函數(shù)除了可以運用scanf()函數(shù)和printf()函數(shù)進(jìn)展輸入輸出外,還可以運用另外一些輸入與輸出字符的函數(shù)進(jìn)展輸入輸出字符。如getchar()、putchar()、getch()函數(shù)。第29頁3.3 數(shù)據(jù)的輸入與輸出1getchar()和putchar()函數(shù)利用getchar()函數(shù)可以從鍵盤上輸入一個字符,使所輸入的字符會立刻顯示出來,并且當(dāng)按下回車鍵后,這個字符才會被變量接納。假設(shè)是同時輸入數(shù)個字符,getchar()函數(shù)會把第一個讀取的字符放到指定的變量中,假設(shè)是程序中運用到其
17、它的getchar()函數(shù),這些剩余的字符那么會被其它的getchar()函數(shù)陸續(xù)傳送到其指定的變量中。第30頁3.3 數(shù)據(jù)的輸入與輸出getchar()函數(shù)的格式如下: ch=getchar( );假設(shè)要將字符變量的內(nèi)容輸出在屏幕上,可以運用前面引見過的printf()函數(shù),也可以利用putchar()函數(shù)來實現(xiàn)。putchar()函數(shù)會把字符變量、常量等當(dāng)成參數(shù)傳送到函數(shù)后再輸出。putchar()函數(shù)的格式如下: putchar(ch);第31頁3.3 數(shù)據(jù)的輸入與輸出例3.8 闡明getchar()函數(shù)和putchar()函數(shù)的運用方法。#include int main( )char
18、 ch;printf(“Input a character:);ch=getchar( ); /*輸入一個字符,并賦給變量ch*/printf(“nThe character you input is:);putchar(ch); return 0; 第32頁3.3 數(shù)據(jù)的輸入與輸出2getch()函數(shù)利用getch()函數(shù),可以從鍵盤上輸入一個字符,而不需求按下回車鍵,變量會馬上接納這個字符,屏幕上也看不到這個被輸入的字符。getch()函數(shù)經(jīng)常用于用戶不希望看到所輸入的內(nèi)容的時候,如輸入密碼等。getch()函數(shù)的格式如下: ch=getch();第33頁3.3 數(shù)據(jù)的輸入與輸出例3.9 闡明getch()函數(shù)的運用方法。#include int main( ) char ch;printf(“Input a character:);ch=getch(); /*輸入一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年帶家私家電房產(chǎn)買賣合同(三篇)
- 2024年大學(xué)學(xué)習(xí)部工作計劃樣本(三篇)
- 2024年小學(xué)教師個人總結(jié)樣本(二篇)
- 2024年各種公共場所的衛(wèi)生管理制度樣本(二篇)
- 2024年工廠質(zhì)檢員崗位職責(zé)說明范本(二篇)
- 2024年半年工作總結(jié)(四篇)
- 2024年員工入股協(xié)議范本(二篇)
- 2024年學(xué)校美術(shù)教學(xué)工作計劃模版(四篇)
- 2024年衛(wèi)生管理制度制度(四篇)
- 【《房建工程施工管理中精細(xì)化管理運用探析》3200字】
- 電臺主持人合作協(xié)議
- 2024年秋新滬科版物理八年級上冊 實踐 創(chuàng)作七彩夢幻般的彩虹 教學(xué)課件
- 2024年中國汽車低壓電線市場調(diào)查研究報告
- 上海工藝美術(shù)職業(yè)學(xué)院公開招聘高頻500題難、易錯點模擬試題附帶答案詳解
- 2024湖南大學(xué)研究生院校內(nèi)招聘管理人員1人歷年高頻500題難、易錯點模擬試題附帶答案詳解
- 《野望》(王績)理解性默寫(帶答案)
- 一年級下冊科學(xué)教學(xué)論文
- 《2024年 宅基地使用權(quán)繼承問題研究》范文
- 2024至2030年中國氣管插管市場前景及融資戰(zhàn)略咨詢報告
- 2022-2023學(xué)年北京市海淀區(qū)七年級(上)期中數(shù)學(xué)試卷【含解析】
- 北師大版小學(xué)三年級數(shù)學(xué)上冊各單元測試題(全冊)
評論
0/150
提交評論