您好,歡迎進(jìn)入深圳市穎特新科技有限公司官方網(wǎng)站!
知識(shí)點(diǎn):C語(yǔ)言的注釋;關(guān)鍵字;書(shū)寫(xiě)風(fēng)格;常量和變量
重要程度:★★★★
1、C語(yǔ)言的良好風(fēng)格
用C語(yǔ)言編寫(xiě)的程序,稱為C語(yǔ)言源程序,簡(jiǎn)稱C程序。
本節(jié)將通過(guò)一個(gè)簡(jiǎn)單的C程序例子,向大家介紹C語(yǔ)言的一些基本構(gòu)成和如何寫(xiě)出風(fēng)格良好的程序,使讀者對(duì)C語(yǔ)言有一個(gè)初步的認(rèn)識(shí)。
例1:計(jì)算兩個(gè)整數(shù)之和的C程序
#include "stdio.h"
main( ) /*求兩數(shù)之和*/
{
int a,b,sum; /*變量說(shuō)明*/
a=10; /*把整數(shù)10賦值給變量a */
b=20; /*把整數(shù)20賦值給變量b */
sum=a+b; /*把兩數(shù)之和賦值給變量sum */
printf("a=%d,b=%d,sum=%d\n",a,b,sum); /*把計(jì)算結(jié)果輸出到用戶屏幕上*/
}
好的風(fēng)格: 1. 花括號(hào)獨(dú)占一行,有對(duì)應(yīng)關(guān)系的花括號(hào)在同一列;
2. 有層次關(guān)系的代碼有必要的縮進(jìn);
3. 一條語(yǔ)句獨(dú)占一行
4. 有適當(dāng)?shù)淖⑨?/p>
2、關(guān)于注釋的說(shuō)明(考點(diǎn)一)
2 程序中以“/*”開(kāi)頭并且以“*/”結(jié)尾的部分表示程序的注釋部分。
2 注釋可以加在程序的任何位置。
2 注釋是為了提高程序的可讀性而增加的,不屬于C語(yǔ)言。
2 /*/*ddddddd*/*/ 這樣的注釋不是合法的。注釋是從“/*“開(kāi)始到”*/“結(jié)束的。以該例為準(zhǔn),屬于注釋的就是/* */兩個(gè)之間的/*ddddddd,所以最后剩下的*/就是多余了。
例1: 閱讀以下程序,想一想結(jié)果是多少?
main( )
{ int a=0,b=0;
a =10; /*給a賦值
b=20; 給b賦值 */
printf("a+b=%d\n",a+b); /*輸出計(jì)算結(jié)果*/
}
這是2006年9月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)考試的第19題。需要特別注意的是,程序第三行“/*”開(kāi)始的注釋部分,直到第四行末尾才結(jié)束。因此上面的程序等價(jià)于以下的程序:
main( )
{ int a=0,b=0;
a =10;
printf("a+b=%d\n",a+b);
}
3、標(biāo)識(shí)符(考試重點(diǎn))
在C語(yǔ)言中用于標(biāo)識(shí)名字的有效字符序列稱為標(biāo)識(shí)符。標(biāo)識(shí)符可以用作常量名、變量名、符號(hào)名、函數(shù)名和后面要學(xué)到的指針名、數(shù)組名等。C語(yǔ)言中標(biāo)識(shí)符的命名規(guī)則如下:
1)標(biāo)識(shí)符只能由字母、數(shù)字和下劃線組成;
2)標(biāo)識(shí)符的第一個(gè)字符必須是字母或下劃線。
3)標(biāo)識(shí)符區(qū)分大小寫(xiě)字母。如int與Int是兩個(gè)完全不同的標(biāo)識(shí)符。
合法的標(biāo)識(shí)符:
a x sum spels program ab1 _to file_5 a1b2c3 _2 B3
非法的標(biāo)識(shí)符:
ab12# (含有不合法的字符“#”)
a1-c (含有不合法的字符“-”)
ab c (空格不是合法標(biāo)識(shí)符)
pr (“p”不是字母,為不合法標(biāo)識(shí)符字符)
23ab (第一個(gè)字符不能為數(shù)字)
C語(yǔ)言的標(biāo)識(shí)符分為如下三類:
1)關(guān)鍵字
關(guān)鍵字是具有特定含義的、專門(mén)用來(lái)說(shuō)明C語(yǔ)言特定成分的一類標(biāo)識(shí)符。關(guān)鍵字均由小寫(xiě)字母構(gòu)成。Int 就不是關(guān)鍵字。
2)預(yù)定義標(biāo)識(shí)符
預(yù)定義標(biāo)識(shí)符(如printf,scanf,sin,isalum等)和編譯預(yù)處理命令名(如define,include等)。注意,預(yù)定義標(biāo)識(shí)符可以作為“用戶標(biāo)識(shí)符”使用。
3)用戶標(biāo)識(shí)符(考試重點(diǎn))
不能是關(guān)鍵字;只能由字母、數(shù)字和下劃線組成;第一個(gè)字符必須是字母或下劃線。
Int可以作為用戶標(biāo)識(shí)符,int就不可以作為用戶標(biāo)識(shí)符。
考點(diǎn):1. 識(shí)別哪些是(或不是)標(biāo)識(shí)符
2. 識(shí)別哪些是(或不是)用戶標(biāo)識(shí)符
例2: 以下不能定義為用戶標(biāo)識(shí)符的是
A) scanf B) Void C) _3com_ D) int
分析:本題答案選D。因?yàn)閕nt是關(guān)鍵字,關(guān)鍵字不能作為用戶標(biāo)識(shí)符。答案(A)的scanf雖然是預(yù)定義標(biāo)識(shí)符,但是預(yù)定義標(biāo)識(shí)符可以作為用戶標(biāo)識(shí)符使用。(B)中Void的第一個(gè)字符V大寫(xiě),它與關(guān)鍵字void是兩個(gè)不同的標(biāo)識(shí)符,故它可以作為用戶標(biāo)識(shí)符。(C)中的_3com_符合標(biāo)識(shí)符的命名規(guī)則,且不是關(guān)鍵字,故可以定義為用戶標(biāo)識(shí)符。
例3:以下不合法的用戶標(biāo)識(shí)符是
A) j2_KEY B) Double C) 4d D)_8_
分析:本題答案選C。答案(A)是一個(gè)用戶標(biāo)識(shí)符,符合標(biāo)識(shí)符的命名規(guī)則。答案(B)也是用戶標(biāo)識(shí)符,需要注意的是,它與關(guān)鍵字double是兩個(gè)不同的標(biāo)識(shí)符。答案(D)是用戶標(biāo)識(shí)符,由數(shù)字和下劃線組成,且第一個(gè)字符為下劃線。只有答案(C)是不合法的用戶標(biāo)識(shí)符,因?yàn)樗牡谝粋(gè)字符是數(shù)字,不符合標(biāo)識(shí)符的命名規(guī)則。
1. 數(shù)字開(kāi)頭
2. 包含減號(hào)“-”
3. 用戶標(biāo)識(shí)符使用的是關(guān)鍵字
4、常量。
C語(yǔ)言中,還有另外一種常量是用標(biāo)識(shí)符命名的,稱為符號(hào)常量。下面程序的PI就是符號(hào)常量。
例4: 計(jì)算圓面積的C語(yǔ)言程序
#define PI 3.14159
main( )
{ float r,area;
r=12.5;
area=PI*r*r;
printf("area=%f\n",area);
}
程序的第一行是宏定義,以后遇到PI就用其后的內(nèi)容——3.14159來(lái)原樣替換。這里的PI就是一個(gè)符號(hào)常量。通常,符號(hào)常量用大寫(xiě)字母表示,但這并不是語(yǔ)法上的要求,只不過(guò)用大寫(xiě)字母書(shū)寫(xiě)符號(hào)常量,便于辨認(rèn)。當(dāng)進(jìn)行宏定義后,程序中只要用到相應(yīng)的數(shù)值常量都可以用符號(hào)常量代替,這就給程序的修改提供了方便。例如,如果需要進(jìn)一步提高圓周率的精度,可以直接修改宏定義中的數(shù)值常量:
#define PI 3.1415926
這樣,程序中只要用到PI的地方,其值都自動(dòng)變?yōu)?.1415926。
5、變量
與常量對(duì)應(yīng)的是變量。顧名思義,變量就是在程序的運(yùn)行過(guò)程中其值可以改變的量。例1中的a,b都是變量,它們是由用戶定義的標(biāo)識(shí)符,變量的命名必須遵循標(biāo)識(shí)符的命名規(guī)則。
用盒子的理論來(lái)描述:
1) 變量就是盒子,里面裝的內(nèi)容可以改變。
2) 通過(guò)賦值語(yǔ)句就可以改變盒子里的內(nèi)容。
3) 每次使用盒子時(shí),盒子里都應(yīng)該有確切的內(nèi)容而不能是不確定的值。
4) 每次使用盒子時(shí),都是用的現(xiàn)在盒子里裝的內(nèi)容。以前裝過(guò)什么內(nèi)容沒(méi)有任何影響。
掃碼關(guān)注我們
傳真:0755-82591176
郵箱:vicky@yingtexin.net
地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08