C語言程序設(shè)計(jì)
本課介紹C語言程序設(shè)計(jì)的基本方法和基本的程序語句。
從程序流程的角度來看,程序可以分為三種基本結(jié)構(gòu), 即順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。 這三種基本結(jié)構(gòu)可以組成所有的各種復(fù)雜程序。C語言提供了多種語句來實(shí)現(xiàn)這些程序結(jié)構(gòu)。 本章介紹這些基本語句及其應(yīng)用,使讀者對(duì)C程序有一個(gè)初步的認(rèn)識(shí), 為后面各章的學(xué)習(xí)打下基礎(chǔ)。
C程序的語句
C程序的執(zhí)行部分是由語句組成的。 程序的功能也是由執(zhí)行語句實(shí)現(xiàn)的。
C語句可分為以下五類:
1.表達(dá)式語句
2.函數(shù)調(diào)用語句
3.控制語句
4.復(fù)合語句
5.空語句
1.表達(dá)式語句
表達(dá)式語句由表達(dá)式加上分號(hào)“;”組成。其一般形式為: 表達(dá)式; 執(zhí)行表達(dá)式語句就是計(jì)算表達(dá)式的值。例如: x=y+z;賦值語句y+z;加法運(yùn)算語句,但計(jì)算結(jié)果不能保留,無實(shí)際意義i++;自增1語句,i值增1。
2.函數(shù)調(diào)用語句
由函數(shù)名、實(shí)際參數(shù)加上分號(hào)“;”組成。其一般形式為: 函數(shù)名(實(shí)際參數(shù)表); 執(zhí)行函數(shù)語句就是調(diào)用函數(shù)體并把實(shí)際參數(shù)賦予函數(shù)定義中的形式參數(shù),然后執(zhí)行被調(diào)函數(shù)體中的語句,求取函數(shù)值。(在第五章函數(shù)中再詳細(xì)介紹)例如printf(“C Program”);調(diào)用庫函數(shù),輸出字符串。
3.控制語句
控制語句用于控制程序的流程, 以實(shí)現(xiàn)程序的各種結(jié)構(gòu)方式。
它們由特定的語句定義符組成。C語言有九種控制語句。 可分成以下三類:
(1) 條件判斷語句
if語句,switch語句。
(2) 循環(huán)執(zhí)行語句
do while語句,while語句,for語句。
(3) 轉(zhuǎn)向語句
break語句,goto語句,continue語句,return語句。
4.復(fù)合語句
把多個(gè)語句用括號(hào){}括起來組成的一個(gè)語句稱復(fù)合語句。 在程序中應(yīng)把復(fù)合語句看成是單條語句,而不是多條語句,例如
{
x=y+z;
a=b+c;
printf("%d%d",x,a);
}
是一條復(fù)合語句。復(fù)合語句內(nèi)的各條語句都必須以分號(hào)“;”結(jié)尾,在括號(hào)“}”外不能加分號(hào)。
5.空語句
只有分號(hào)“;”組成的語句稱為空語句。 空語句是什么也不執(zhí)行的語句。在程序中空語句可用來作空循環(huán)體。例如 while(getchar()!='\n'); 本語句的功能是,只要從鍵盤輸入的字符不是回車則重新輸入。這里的循環(huán)體為空語句。
賦值語句
賦值語句是由賦值表達(dá)式再加上分號(hào)構(gòu)成的表達(dá)式語句。 其一般形式為: 變量=表達(dá)式; 賦值語句的功能和特點(diǎn)都與賦值表達(dá)式相同。 它是程序中使用最多的語句之一。 在賦值語句的使用中需要注意以下幾點(diǎn):
1.由于在賦值符“=”右邊的表達(dá)式也可以又是一個(gè)賦值表達(dá)式,因此,下述形式 變量=(變量=表達(dá)式); 是成立的,從而形成嵌套的情形。其展開之后的一般形式為: 變量=變量=…=表達(dá)式;
例如:
a=b=c=d=e=5;按照賦值運(yùn)算符的右接合性,因此實(shí)際上等效于:
e=5;
d=e;
c=d;
b=c;
a=b;
2.注意在變量說明中給變量賦初值和賦值語句的區(qū)別。給變量賦初值是變量說明的一部分,賦初值后的變量與其后的其它同類變量之間仍必須用逗號(hào)間隔,而賦值語句則必須用分號(hào)結(jié)尾。
3.在變量說明中,不允許連續(xù)給多個(gè)變量賦初值。 如下述說明是錯(cuò)誤的: int a=b=c=5 必須寫為 int a=5,b=5,c=5; 而賦值語句允許連續(xù)賦值
4.注意賦值表達(dá)式和賦值語句的區(qū)別。賦值表達(dá)式是一種表達(dá)式,它可以出現(xiàn)在任何允許表達(dá)式出現(xiàn)的地方,而賦值語句則不能。
下述語句是合法的: if((x=y+5)>0) z=x;語句的功能是,若表達(dá)式x=y+5大于0則z=x。下述語句是非法的: if((x=y+5;)>0) z=x;因?yàn)?y+5;是語句,不能出現(xiàn)在表達(dá)式中。
編輯推薦:
2012年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢短信提醒
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |