C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù).ppt_第1頁
C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù).ppt_第2頁
C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù).ppt_第3頁
C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù).ppt_第4頁
C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù).ppt_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、12 C語言的標識符和字符數(shù)據(jù)、字符串數(shù)據(jù),本節(jié)的任務(wù)是掌握用printf()函數(shù)在屏幕的任意位置打印字符組成的圖案,121 C語言的字符串數(shù)據(jù)、字符數(shù)據(jù)和轉(zhuǎn)義字符,例1_1_2 用printf()輸出字符串和轉(zhuǎn)義字符 /* 1_1L2.C */ #include:stdio.h main() printf(*n); printf(* 我們立志成為祖國需要的高技術(shù)工人! *n); printf(*n); 請學生在機上錄入并運行上述程序,創(chuàng)新練習,將程序體當中printf里右邊雙引號前的“n”都刪掉,再存盤并編譯運行??纯辞昂髢蓚€程序的運行結(jié)果有什么不同? 請同學們運行后討論,并下結(jié)論,字符串、

2、字符、轉(zhuǎn)義字符,這些用英文中的雙引號括起來的英文、數(shù)碼、漢字以及可以由鍵盤輸入的一切字符,以及它們的混合字符,在C語言中統(tǒng)統(tǒng)稱作字符串,因為它們是用英文雙引號串起來的一串字符或數(shù)字。 比如,“12Aca”、“1”、“a”都叫做字符串。在C語言中大寫的英文字母與小寫的英文字母被規(guī)定為不同的字符。而且,字符是指單個的、用英文單引號括起來的。如a、A、2等等。這里有必要注意:“a”與a是兩種不同類型的數(shù)據(jù),前一個稱為字符串;后一個稱為普通字符(也簡稱為字符)。也可以這樣認為:僅僅是用雙引號括起來的就是字符串、用單引號括起來的就是普通字符;這是兩種不同的數(shù)據(jù)。用單引號是不能括起多于一個字符的! 在程序

3、1_1L2.C 的printf語句里面的字符串末尾都有一個n(反斜杠和n)這種用反斜杠開頭后跟一個或多個字符組成的復合字符,在C語言中稱為轉(zhuǎn)義字符(即在一些普通字符前加一個反斜杠,使普通字符的含意轉(zhuǎn)變了)。如轉(zhuǎn)義字符n表示換行(實際執(zhí)行時變成回車并換行),r表示回車但不換行。轉(zhuǎn)義字符大都表示操作動作的控制字符。見第一章附錄二,122 C語言的字符集、標識符,由英文字母、數(shù)碼、規(guī)定的一些符號(見下表-1)組成的字符集合,稱為C語言的字符集。 由C語言字符集里的字符組成的,在程序中使用的,標識(表達)某種意思的短語、縮略語、詞匯,這種標識編程者思想的符號,在C語言中稱為標識符。在C語言里,規(guī)定了任

4、何一個標識符都要先定義再使用,Turbo C規(guī)定標識符定義時要求必須以字母或下劃線開頭,后跟字母、數(shù)字或下劃線,長度最多32個字符,符 號 名 稱 符號列表 數(shù)量運 算 符+ - * / % 5標 點 符 , . : ; ? “ 7空 白 符(空格)、制表符 2括 號 ( ) 6關(guān)系運算符 3其它符號 $ | # printf(“* *n”); /*2個*號中間有13個空隔*/ printf(“* *n”); /* 同上 */ printf(* * * * * * * *n); printf(nr);,上面這個平面圖形是非常簡單的,特別是中間兩行左右兩個字符*相隔很近,中間的空格只有13個。

5、如果中間的空格有六、七十個,難道我們也照打六、七十個空格?怎么辦? 可不可以不用照打那么多個空格?(由學生討論回答,例1_1_3解法2,* 1_1L3_2.C */ #includestdio.h main( ) printf(* * * * * * * *n); printf(“%c%14cn”,*,*); /*為什么是14C? */ printf(%c%14cn,*,*); printf(%sn,* * * * * * * *);,格式聲明符,第一個printf()是直接打印字符串常量,字符串常量和轉(zhuǎn)義字符是printf()函數(shù)可以直接打印的數(shù)據(jù)。第四個printf()是以字符串量的格式打

6、印字符串量。字符串在英文中寫成string,取其首字符s,前面再加一個%,構(gòu)成printf()的指定輸出字符串量的格式聲明符。%s是指定輸出字符串量的格式聲明符,那么對于第二、第三行的%c,同學們猜一猜應(yīng)該是指定輸出什么量的格式聲明符,printf()使用格式聲明符輸出指定的量時,括號里面的規(guī)律是什么,用雙引號把格式聲明符包括起來, 如果后面的輸出量打印完后,希望下一個量在另一行打印,則在雙引號里的字符串最后,也可以寫上轉(zhuǎn)義字符n。這對雙引號的后面,用英文逗號和后面的輸出量隔開,雙引號里面一個格式聲明符,就對應(yīng)后面的一個輸出量,它們是一一對應(yīng)的!如果后面的輸出量有多個,輸出量之間,也要用英文的

7、逗號間隔,域 寬,還有一個:%14c表示什么意思?其實這是在格式聲明符中間插入了一個整數(shù),大家可以從程序的運行結(jié)果看到,它使得后面的字符*共占據(jù)了14格的寬度,我們稱這個14為域?qū)挕?14c表示它對應(yīng)的打印字符共占14格的寬度,打印字符本身只占1格,不夠14格那么長,就在它的前面自動加上13個空格,補到共占14格的寬度。 現(xiàn)在請同學們想一想:對于字符串量的格式聲明符,會不會也有域?qū)?創(chuàng)新練習,例1_1_3解法1、2所生成的正方形圖案,其每一行的首位置都是在屏幕最左邊第一列上的。現(xiàn)在,我們想將其每一行的首位置打印在屏幕左邊數(shù)起的第11列上(即是把圖案整個向右移動10列)如何修改這個例題,使這個想

8、法得以實現(xiàn)? 請同學們在機上練習,124 源程序書寫規(guī)范,程序體中,每行縮進2個空格,不要以制表符來縮進。每個模塊寫成鋸齒型;模塊之間空一行。 每行右邊最多到80列,超過的應(yīng)該換行,換行后應(yīng)縮進。 大括號、分別占1行,成對的大括號應(yīng)該位于同一列上。 小括號(、)前后都不要留空格。 所有的注釋都用中文書寫,使用/*/包括。凡是整個模塊的注釋寫在整個模塊的前面,并獨占一行;凡是某句的注釋寫在該句的后面同一行上,超過80列也要換行并縮進到/*的后面。 所有標識符的命名遵照匈牙利符號表示法:前面用表示數(shù)據(jù)類型的指定的前綴、后跟表示數(shù)據(jù)用途的英文單詞,課堂練習,打印如下的字符圖形,開始可以不用域?qū)挘詈?/p>

9、要求一定使用域?qū)捄喕绦颉?OOO OO OO OO OO OO OO OO OO OO OO OO OO,例1_1_4 使用域?qū)挻蛴∩蠄D平面圖形,分析:假設(shè)上述圖形的第一行的三個大寫字母O在它們所在行共占20格(即域?qū)挒?0,其實,這是可以任由程序員自己設(shè)置的)。圖形的第二行的第一對OO,其最后一個O從第一行的設(shè)定可以推出在第18格,所以第二行的第一對OO其域?qū)捠?8;第二對OO共占有3格的寬度,其域?qū)捠?。如下圖: 圖形的第一行: OOO 它在第20格 第二行: OO OO 在第18格 共占3格 第三行: OO OO 在第17格 共占5格 第四行: OO OO 在第16格 共占7格,很容易推出以后各行的第一對OO總要靠前一格,即域?qū)挶壬弦恍猩?;而各行的第二對OO,要往后靠一格,它的前面與第一對OO又多了一個空格,因此,域?qū)捒偙壬弦恍械牡诙O多了2;這樣以下各行就很容易寫出來了。圖形共有7行,寫7個printf()語句即可。程序如下: /* 1_1L4.C */ #include main() printf(%20sn,OOO); printf(%18s%3sn,OO,OO); printf(%17s%5sn,OO,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論