首頁考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級(jí)
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托福考試
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級(jí)
零起點(diǎn)德語
等級(jí)考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報(bào) 關(guān) 員
外 銷 員
價(jià)格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報(bào)檢員
法律顧問
管理咨詢
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務(wù)
期貨考試
國際商務(wù)
心理咨詢
營 銷 師
司法考試
國際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格
基金從業(yè)資格
統(tǒng)計(jì)從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計(jì)師
會(huì)計(jì)職稱
法律顧問
ACCA考試
注冊(cè)會(huì)計(jì)師
資產(chǎn)評(píng)估師
審計(jì)師考試
高級(jí)會(huì)計(jì)師
注冊(cè)稅務(wù)師
國際內(nèi)審師
理財(cái)規(guī)劃師
美國注冊(cè)會(huì)計(jì)師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊(cè)測繪師
質(zhì)量工程師
巖土工程師
造價(jià)員考試
注冊(cè)計(jì)量師
環(huán)保工程師
化工工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評(píng)價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評(píng)價(jià)師
土地登記代理人
繽紛校園 實(shí)用文檔 英語學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
計(jì)算機(jī)等級(jí)考試

2013年計(jì)算機(jī)等考二級(jí)《C語言》復(fù)習(xí)筆記第二章第3節(jié)

  字符型量

  字符型量包括字符常量和字符變量。

  字符常量

  字符常量是用單引號(hào)括起來的一個(gè)字符。例如'a','b','=','+','?'都是合法字符常量。在C語言中,字符常量有以下特點(diǎn):

  1.字符常量只能用單引號(hào)括起來,不能用雙引號(hào)或其它括號(hào)。

  2.字符常量只能是單個(gè)字符,不能是字符串。

  3.字符可以是字符集中任意字符。但數(shù)字被定義為字符型之后就

  不能參與數(shù)值運(yùn)算。如'5'和5 是不同的。'5'是字符常量,不能參與運(yùn)算。

  轉(zhuǎn)義字符

  轉(zhuǎn)義字符是一種特殊的字符常量。轉(zhuǎn)義字符以反斜線“\”開頭,后跟一個(gè)或幾個(gè)字符。轉(zhuǎn)義字符具有特定的含義,不同于字符原有的意義,故稱“轉(zhuǎn)義”字符。例如,在前面各例題printf函數(shù)的格式串中用到的“\n”就是一個(gè)轉(zhuǎn)義字符,其意義是“回車換行”。轉(zhuǎn)義字符主要用來表示那些用一般字符不便于表示的控制代碼。

  常用的轉(zhuǎn)義字符及其含義

  轉(zhuǎn)義字符 轉(zhuǎn)義字符的意義

  \n 回車換行

  \t 橫向跳到下一制表位置

  \v 豎向跳格

  \b 退格

  \r 回車

  \f 走紙換頁

  \\ 反斜線符"\"

  \' 單引號(hào)符

  \a 鳴鈴

  \ddd 1~3位八進(jìn)制數(shù)所代表的字符

  \xhh 1~2位十六進(jìn)制數(shù)所代表的字符

  廣義地講,C語言字符集中的任何一個(gè)字符均可用轉(zhuǎn)義字符來表示。表2.2中的\ddd和\xhh正是為此而提出的。ddd和hh分別為八進(jìn)制和十六進(jìn)制的ASCII代碼。如\101表示字“quot;A”,\102表示字母“B”,\134表示反斜線,\XOA表示換行等。轉(zhuǎn)義字符的使用

  void main()

  {

  int a,b,c;

  a=5; b=6; c=7;

  printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);

  }

  此程序練習(xí)轉(zhuǎn)義字符的使用

  a、b、c為整數(shù) 5->a,6->b,7->c

  調(diào)用printf顯示程序運(yùn)行結(jié)果

  printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);

  程序在第一列輸出a值5之后就是“\n”,故回車換行;接著又是“\t”,于是跳到下一制表位置(設(shè)制表位置間隔為8),再輸出b值6;空二格再輸出c 值7后又是“\n”,因此再回車換行;再空二格之后又輸出a值5;再空三格又輸出b的值6;再次后“\t”跳到下一制表位置(與上一行的6 對(duì)齊),但下一轉(zhuǎn)義字符“\b”又使退回一格,故緊挨著6再輸出c值7。

  字符變量

  字符變量的取值是字符常量,即單個(gè)字符。字符變量的類型說明符是char.字符變量類型說明的格式和書寫規(guī)則都與整型變量相同。

  例如:

  char a,b; 每個(gè)字符變量被分配一個(gè)字節(jié)的內(nèi)存空間,因此只能存放一個(gè)字符。字符值是以ASCII碼的形式存放在變量的內(nèi)存單元之中的。如x的十進(jìn)制ASCII碼是120,y的十進(jìn)制ASCII碼是121。對(duì)字符變量a,b賦予'x'和'y'值: a='x';b='y';實(shí)際上是在a,b兩個(gè)單元內(nèi)存放120和121的二進(jìn)制代碼: a 0 1 1 1 1 0 0 0

  b 0 1 1 1 1 0 0 1

  所以也可以把它們看成是整型量。 C語言允許對(duì)整型變量賦以字符值,也允許對(duì)字符變量賦以整型值。在輸出時(shí), 允許把字符變量按整型量輸出,也允許把整型量按字符量輸出。 整型量為二字節(jié)量,字符量為單字節(jié)量,當(dāng)整型量按字符型量處理時(shí), 只有低八位字節(jié)參與處理。

  main()

  {

  char a,b;

  a=120;

  b=121;

  printf("%c,%c\n%d,%d\n",a,b,a,b);

  }

  a ■ b ■

  a <-- 120

  b <--- 121

  顯示程序結(jié)果

  本程序中說明a,b為字符型,但在賦值語句中賦以整型值。從結(jié)果看,a,b值的輸出形式取決于printf函數(shù)格式串中的格式符,當(dāng)格式符為“c”時(shí),對(duì)應(yīng)輸出的變量值為字符,當(dāng)格式符為“d”時(shí),對(duì)應(yīng)輸出的變量值為整數(shù)。

  void main()

  {

  char a,b;

  a='x';

  b='y';

  a=a-32;

  b=b-32;

  printf("%c,%c\n%d,%d\n",a,b,a,b);

  }

  a,b被說明為字符變量并賦予字符值

  把小寫字母換成大寫字母

  以整型和字符型輸出

  本例中,a,b被說明為字符變量并賦予字符值,C語言允許字符變量參與數(shù)值運(yùn)算,即用字符的ASCII 碼參與運(yùn)算。由于大小寫字母的ASCII 碼相差32,因此運(yùn)算后把小寫字母換成大寫字母。然后分別以整型和字符型輸出。

  [Practice] //charint a=49;

  char b;

  char d;

  b=a+10;

  d=a+b;'Vtable

  a,2,49

  b,1,隨機(jī)

  d,1,隨機(jī)

  of Vtable

  'Vupdate

  1,49

  2,隨機(jī)

  3,隨機(jī)

  2,';'

  3,'l'

  of Vupdate

  of Practice

  [Practice] //char c1,c2;

  c1='a';c2='b';

  c1=c1-32;c2=c2-32;'Vtable

  c1,1,隨機(jī)

  c2,1,隨機(jī)

  of Vtable

  'Vupdate

  1,隨機(jī);2,隨機(jī)

  1,'a';2,'b'

  1,'A';2,'B'

  of Vupdate

  of Practice

  字符串常量是由一對(duì)雙引號(hào)括起的字符序列。例如: “CHINA”,“C program:”, “$12.5”等都是合法的字符串常量。字符串常量和字符常量是不同的量。它們之間主要有以下區(qū)別:

  1.字符常量由單引號(hào)括起來,字符串常量由雙引號(hào)括起來。

  2.字符常量只能是單個(gè)字符,字符串常量則可以含一個(gè)或多個(gè)字符。

  3.可以把一個(gè)字符常量賦予一個(gè)字符變量,但不能把一個(gè)字符串常量賦予一個(gè)字符變量。在C語言中沒有相應(yīng)的字符串變量。

  這是與BASIC 語言不同的。但是可以用一個(gè)字符數(shù)組來存放一個(gè)字符串常量。在數(shù)組一章內(nèi)予以介紹。

  4.字符常量占一個(gè)字節(jié)的內(nèi)存空間。字符串常量占的內(nèi)存字節(jié)數(shù)等于字符串中字節(jié)數(shù)加1.增加的一個(gè)字節(jié)中存放字符“\0”(ASCII碼為0)。這是字符串結(jié)束的標(biāo)志。例如,字符串 “C program”在內(nèi)存中所占的字節(jié)為:C program\0.字符常量'a'和字符串常量“a”雖然都只有一個(gè)字符,但在內(nèi)存中的情況是不同的。

  'a'在內(nèi)存中占一個(gè)字節(jié),可表示為:a

  "a"在內(nèi)存中占二個(gè)字節(jié),可表示為:a\0符號(hào)常量

  符號(hào)常量

  在C語言中,可以用一個(gè)標(biāo)識(shí)符來表示一個(gè)常量,稱之為符號(hào)常量。符號(hào)常量在使用之前必須先定義,其一般形式為:

  #define 標(biāo)識(shí)符 常量

  其中#define也是一條預(yù)處理命令(預(yù)處理命令都“quot;#”開頭),稱為宏定義命令(在第九章預(yù)處理程序中將進(jìn)一步介紹),其功能是把該標(biāo)識(shí)符定義為其后的常量值。一經(jīng)定義,以后在程序中所有出現(xiàn)該標(biāo)識(shí)符的地方均代之以該常量值。習(xí)慣上符號(hào)常量的標(biāo)識(shí)符用大寫字母,變量標(biāo)識(shí)符用小寫字母,以示區(qū)別。

  #define PI 3.14159

  void main()

  {

  float s,r;

  r=5;

  s=PI*r*r;

  printf("s=%f\n",s);

  }

  由宏定義命令定義PI 為3.14159 s,r定義為實(shí)數(shù) 5->r PI*r*r->s

  顯示程序結(jié)果 float s,r; r=5; s=PI*r*r;本程序在主函數(shù)之前由宏定義命令定義PI 為3.14159,在程序中即以該值代替PI .s=PI*r*r等效于s=3.14159*r*r。應(yīng)該注意的是,符號(hào)常量不是變量,它所代表的值在整個(gè)作用域內(nèi)不能再改變。也就是說,在程序中,不能再用賦值語句對(duì)它重新賦值。

1 2  下一頁

  編輯推薦:

  2012年9月計(jì)算機(jī)等級(jí)考試成績查詢短信提醒

  2013年上半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間預(yù)測

  2012年計(jì)算機(jī)等級(jí)考試二級(jí)VB重點(diǎn)知識(shí)匯總

文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。