第3章-順序結(jié)構(gòu)的程序設(shè)計_第1頁
第3章-順序結(jié)構(gòu)的程序設(shè)計_第2頁
第3章-順序結(jié)構(gòu)的程序設(shè)計_第3頁
第3章-順序結(jié)構(gòu)的程序設(shè)計_第4頁
第3章-順序結(jié)構(gòu)的程序設(shè)計_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

C語言程序設(shè)計第3章順序結(jié)構(gòu)的程序設(shè)計主要內(nèi)容1.C語句概述2.字符數(shù)據(jù)的輸入輸出3.格式化輸入與輸出4.順序結(jié)構(gòu)程序設(shè)計舉例

3.1C語句概述C程序源程序文件1源程序文件2源程序文件n預(yù)處理命令函數(shù)n函數(shù)1數(shù)據(jù)聲明函數(shù)首部函數(shù)體數(shù)據(jù)聲明執(zhí)行語句C語句分為6類說明語句表達式語句函數(shù)調(diào)用語句控制語句復(fù)合語句空語句

3.1C語句概述(一)說明語句

用來申請變量或聲明將要使用的函數(shù) 例:intx,y,z;floatmax(floatx,floaty);

3.1C語句概述(二)表達式語句由一個表達式加一個分號構(gòu)成一個語句

a=3;z=x+y;例:分號賦值表達式表達式語句+=

3.1C語句概述(三)函數(shù)調(diào)用語句由一個函數(shù)調(diào)用加一個分號構(gòu)成一個語句

printf(“ThisisaCstatement.”);例:

3.1C語句概述(四)控制語句完成一定的控制功能

1if()~else條件語句6break間斷語句

2for()~循環(huán)語句7switch()開關(guān)語句

3while()~循環(huán)語句8goto轉(zhuǎn)向語句

4do~while();循環(huán)語句9return返回語句

5continue繼續(xù)語句

3.1C語句概述(五)復(fù)合語句用一對{}括起來的語句

{ z=x+y; t=z/100; printf(“%f”,t); }例:復(fù)合語句{}后面無分號;注意:

3.1C語句概述(六)空語句只有一個分號的語句

(什么也不做)用來作為循環(huán)語句中的循環(huán)體留待以后對程序進行擴充時使用,對未設(shè)計完成的模塊,用空語句作為函數(shù)體;;

3.1C語句概述C語言本身不提供輸入輸出語句,輸入和輸出操作是由C函數(shù)庫中的函數(shù)來實現(xiàn)的例如:字符輸入函數(shù):getchar字符輸出函數(shù):putchar格式輸入函數(shù):scanf格式輸出函數(shù):printf字符串輸入函數(shù):gets字數(shù)串輸出函數(shù):puts

3.2字符數(shù)據(jù)的輸入輸出在使用系統(tǒng)庫函數(shù)時,要用預(yù)編譯命令“#include”將有關(guān)的“頭文件”包括到用戶源文件中.例如:在調(diào)用標準輸入輸出庫函數(shù)時,文件開頭應(yīng)該有:

#include“stdio.h”

或:

#include<stdio.h>頭文件

3.2字符數(shù)據(jù)的輸入輸出3.2字符數(shù)據(jù)的輸入輸出一、字符輸出函數(shù)一般形式:putchar(c)

函數(shù)作用:

向終端(顯示器)輸出一個字符

字符型變量、整型變量例1輸出單個字符。

#include<stdio.h>

voidmain()

{

chara,b,c;

a=‘B’;b=‘O’;c=‘Y’;

putchar(a);putchar(b);putchar(c);putchar(‘\n’);

}

運行結(jié)果:BOYputchar(a);putchar(‘\n’);putchar(b);putchar(‘\n’);putchar(c);putchar(‘\n’);運行結(jié)果:BOY4.2字符數(shù)據(jù)的輸入輸出二、字符輸入函數(shù)一般形式:getchar()

函數(shù)作用:從標準輸入設(shè)備輸入一個字符。函數(shù)值:從輸入設(shè)備獲取的字符。4.2字符數(shù)據(jù)的輸入輸出例2輸入單個字符。

#include<stdio.h>

voidmain()

{

charc;

c=getchar();

putchar(c);

putchar(‘\n’);

}

運行程序:

從鍵盤輸入字符‘a(chǎn)’

按Enter鍵

屏幕上將顯示輸出的字符‘a(chǎn)’

a

a4.2字符數(shù)據(jù)的輸入輸出

#include"stdio.h"main(){charc;c=getchar();

putchar(c);}接受一個字符=>c輸出該字符c開始結(jié)束運行程序,如果從鍵盤輸入: a[ENTER]

則輸出為: a

如果從鍵盤輸入: abc[ENTER]

則輸出也為:

a注意:調(diào)用函數(shù)getchar時,程序執(zhí)行被中斷,等待用戶從鍵盤輸入數(shù)據(jù)。當用戶鍵入字符并敲回車鍵以后,程序繼續(xù)運行。若用戶輸入字符后未按回車,則鍵入的內(nèi)容一直保留在鍵盤緩沖區(qū)中,只有用戶鍵入回車鍵后,字符輸入函數(shù)getchar才進行處理。函數(shù)getchar將回車鍵作為一個字符讀入,若程序中有兩個以上函數(shù)getchar時,應(yīng)該一次性輸入所有字符,最后再按回車。無論輸入的是英文字母還是標點符號還是數(shù)字,都是作為字符輸入。例:從鍵盤輸入三個英文字母a,b和c,并依次同行內(nèi)輸出。

參考程序:#include<stdio.h>voidmain(){charch1,ch2,ch3;ch1=getchar();ch2=getchar();ch3=getchar();printf("%c%c%c\n",ch1,ch2,ch3);}4.3格式輸入與輸出一、格式輸出函數(shù)函數(shù)作用:向終端輸出若干個任意類型數(shù)據(jù)。一般格式:printf(格式控制參數(shù),輸出表列)%d:以帶符號的十進制形式輸出整數(shù)%c:以字符形式輸出,只輸出一個字符%s:輸出字符串%f:以小數(shù)形式輸出單精度浮點數(shù),隱含輸出六位小數(shù)printf(”格式控制字符串”,參數(shù)1,參數(shù)2,…,參數(shù)n)必須用英文的雙引號括起來作用是控制輸出項的格式和輸出一些提示信息要輸出的表達式常量、變量、運算符表達式、函數(shù)返回值等,每個輸出項之間用(,)分隔4.3格式輸入與輸出格式控制字符的組成:普通字符:按原樣輸出,主要用于輸出提示信息。轉(zhuǎn)義字符:指明特定操作。格式說明:由“%”和“格式字符串”組成:“%格式字符串”表示按規(guī)定的格式輸出數(shù)據(jù)。4.3格式輸入與輸出#include<stdio.h>voidmain(){inta=97,b=98;printf(“1:%d%d\n”,a,b);printf(“2:%d,%d\n”,a,b);printf(“3:%c,%c\n”,a,b);printf(“4:a=%d,b=%d\n”,a,b);}程序運行結(jié)果:1:97982:97,983:a,b4:a=97,b=984.3格式輸入與輸出d,ix,Xoucse,Efg,G%%格式字符:十六進制無符號整數(shù)不帶符號十進制整數(shù)

帶符號十進制整數(shù)指數(shù)形式浮點小數(shù)單一字符字符串八進制無符號整數(shù)小數(shù)形式浮點小數(shù)

實際位數(shù)浮點數(shù)百分號本身inta=567;printf(“%d”,a);inta=255;printf(“%x”,a);inta=65;printf(“%o”,a);inta=567;printf(“%u”,a);chara=65;printf(“%c”,a);printf(“%s”,“ABC”);floata=567.789;printf(“%e”,a);floata=567.789;printf(“%f”,a);floata=567.789;printf(“%g”,a);printf(“%%”);567ff101567AABC5.67789e+02567.789000567.789%4.3格式輸入與輸出說明:除了X,E,G外,其他各式字符必須用小寫??梢栽趐rintf函數(shù)中的“格式控制”字符串中包含轉(zhuǎn)義字符。一個格式說明必須以“%”開頭,以9個格式字符之一為結(jié)束,中間可以插入附加格式字符。想輸出%,則應(yīng)該在格式控制字符串中用連續(xù)兩個%表示4.3格式輸入與輸出附加說明符說明

l

輸出長整型數(shù)據(jù),可加在格式轉(zhuǎn)換符d,o,x,u前面

m(正整數(shù))輸出數(shù)據(jù)的寬度指定寬度>實際寬度,補空格指定寬度<=實際寬度,按實際輸出不指定寬度,按實際輸出

.n(正整數(shù))對實數(shù),表示輸出n位小數(shù)。不足補0;多出則舍入處理。對字符串,表示截取的字符個數(shù)。不足補空格,多出則丟棄。

-

輸出的數(shù)據(jù)在輸出域內(nèi)向左對齊實例:

#include<stdio.h>voidmain(){charc='a';charch[]="Good-bye.";printf("%c,%3c,%3d\n",c,c,c);printf("%s,%10s,%-8s,%-12s,%6.4s\n",ch,ch,ch,ch,ch);}答案:

a,__a,_97Good-bye.,_Good-bye.,Good-bye.,Good-bye.___,__Good例3字符數(shù)據(jù)的輸出。

#include<stdio.h>

voidmain()

{

charc=‘a(chǎn)’;

inti=97;

printf(“%c,%d\n”,c,c);

printf(“%c,%d\n”,i,i);

}

運行結(jié)果:

a,97

a,97指定輸出字數(shù)的寬度,

printf(“%3c”,c);

則輸出:

aa4.3格式輸入與輸出二、格式輸入函數(shù)函數(shù)作用:按照變量在內(nèi)存的地址將變量值存進去。一般格式:scanf(格式控制參數(shù),地址表列)同printf函數(shù)是由若干個地址組成的表列,可以是變量的地址,或字符串的首地址4.3格式輸入與輸出scanf(”格式控制字符串”,地址列表)必須用英文的雙引號括起來由普通字符和格式說明符組成由若干地址組成的列表變量的地址、字符串的首地址、指針變量等,以逗號(,)間隔4.3格式輸入與輸出例4用scanf函數(shù)輸入數(shù)據(jù)。

#include<stdio.h>voidmain(){ inta,b,c; scanf("%d%d%d",&a,&b,&c); printf("%d,%d,%d\n",a,b,c);}運行情況:

345(輸入a,b,c的值)

3,4,5(輸出a,b,c的值)a在內(nèi)存中的地址&是地址運算符4.3格式輸入與輸出

使用scanf函數(shù)時應(yīng)注意的問題:(1)scanf函數(shù)中的“格式控制字符串”后面應(yīng)當是變量地址,而不應(yīng)是變量名。(2)如果在“格式控制”字符串中除了格式說明以外還有其他字符,則在輸入數(shù)據(jù)時在對應(yīng)位置應(yīng)輸入與這些字符相同的字符。scanf("%d,%d:%f",&x,&y,&z);

輸入序列:1,2:3.5[ENTER]

結(jié)果:x=1,y=2,z=3.54.3格式輸入與輸出scanf("%c%c%c",&c1,&c2,&c3);

輸入:a□b□c↙

結(jié)果:a→c1,□→c2,b→c3(其余被丟棄)(3)在用“%c”格式輸入字符時,空格字符和“轉(zhuǎn)義字符”都作為有效字符輸入(4)在輸入數(shù)據(jù)時,可以使用空格,或“回車”或“跳格”(Tab)鍵作為數(shù)據(jù)之間的分隔符。4.3格式輸入與輸出scanf("%d%d%d",&x,&y,&z);

輸入序列一:1

2

3[ENTER]

結(jié)果:x=1,y=2,z=3

輸入序列二:1[TAB]23[ENTER]

輸入序列三:1[ENTER] 23[ENTER]

結(jié)果與輸入序列一的結(jié)果一樣。scanf("x=%d",&x);

要使x的值等于12,從鍵盤應(yīng)怎樣輸入?

正確的輸入序列:x=12[ENTER]

4.4順序結(jié)構(gòu)程序設(shè)計舉例例5輸入三角形的三邊長,求三角形面積。假設(shè):三個邊長a,b,c能構(gòu)成三角形。已知面積公式:area=s=(a+b+c)*0.5結(jié)束輸入三邊長計算s計算面積開始輸出面積#include<stdio.h>

#include<math.h>

voidmain()

{floata,b,c,s,area;

scanf(“%f,%f,%f”,&a,&b,&c);

s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);

printf(“area=%7.2f\n”,area);}

數(shù)學(xué)函數(shù)庫因為要用到其中的sqrt函數(shù)運行情況:

3,4,6

a=3.00,b=4.00,c=6.00,s=6.50

area=5.334.4順序結(jié)構(gòu)程序設(shè)計舉例例6從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。#include<

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論