版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、12 C語(yǔ)言的標(biāo)識(shí)符和字符數(shù)據(jù)、字符串?dāng)?shù)據(jù),本節(jié)的任務(wù)是掌握用printf()函數(shù)在屏幕的任意位置打印字符組成的圖案,121 C語(yǔ)言的字符串?dāng)?shù)據(jù)、字符數(shù)據(jù)和轉(zhuǎn)義字符,例1_1_2 用printf()輸出字符串和轉(zhuǎn)義字符 /* 1_1L2.C */ #include:stdio.h main() printf(*n); printf(* 我們立志成為祖國(guó)需要的高技術(shù)工人! *n); printf(*n); 請(qǐng)學(xué)生在機(jī)上錄入并運(yùn)行上述程序,創(chuàng)新練習(xí),將程序體當(dāng)中printf里右邊雙引號(hào)前的“n”都刪掉,再存盤并編譯運(yùn)行??纯辞昂髢蓚€(gè)程序的運(yùn)行結(jié)果有什么不同? 請(qǐng)同學(xué)們運(yùn)行后討論,并下結(jié)論,字符串、
2、字符、轉(zhuǎn)義字符,這些用英文中的雙引號(hào)括起來(lái)的英文、數(shù)碼、漢字以及可以由鍵盤輸入的一切字符,以及它們的混合字符,在C語(yǔ)言中統(tǒng)統(tǒng)稱作字符串,因?yàn)樗鼈兪怯糜⑽碾p引號(hào)串起來(lái)的一串字符或數(shù)字。 比如,“12Aca”、“1”、“a”都叫做字符串。在C語(yǔ)言中大寫的英文字母與小寫的英文字母被規(guī)定為不同的字符。而且,字符是指單個(gè)的、用英文單引號(hào)括起來(lái)的。如a、A、2等等。這里有必要注意:“a”與a是兩種不同類型的數(shù)據(jù),前一個(gè)稱為字符串;后一個(gè)稱為普通字符(也簡(jiǎn)稱為字符)。也可以這樣認(rèn)為:僅僅是用雙引號(hào)括起來(lái)的就是字符串、用單引號(hào)括起來(lái)的就是普通字符;這是兩種不同的數(shù)據(jù)。用單引號(hào)是不能括起多于一個(gè)字符的! 在程序
3、1_1L2.C 的printf語(yǔ)句里面的字符串末尾都有一個(gè)n(反斜杠和n)這種用反斜杠開(kāi)頭后跟一個(gè)或多個(gè)字符組成的復(fù)合字符,在C語(yǔ)言中稱為轉(zhuǎn)義字符(即在一些普通字符前加一個(gè)反斜杠,使普通字符的含意轉(zhuǎn)變了)。如轉(zhuǎn)義字符n表示換行(實(shí)際執(zhí)行時(shí)變成回車并換行),r表示回車但不換行。轉(zhuǎn)義字符大都表示操作動(dòng)作的控制字符。見(jiàn)第一章附錄二,122 C語(yǔ)言的字符集、標(biāo)識(shí)符,由英文字母、數(shù)碼、規(guī)定的一些符號(hào)(見(jiàn)下表-1)組成的字符集合,稱為C語(yǔ)言的字符集。 由C語(yǔ)言字符集里的字符組成的,在程序中使用的,標(biāo)識(shí)(表達(dá))某種意思的短語(yǔ)、縮略語(yǔ)、詞匯,這種標(biāo)識(shí)編程者思想的符號(hào),在C語(yǔ)言中稱為標(biāo)識(shí)符。在C語(yǔ)言里,規(guī)定了任
4、何一個(gè)標(biāo)識(shí)符都要先定義再使用,Turbo C規(guī)定標(biāo)識(shí)符定義時(shí)要求必須以字母或下劃線開(kāi)頭,后跟字母、數(shù)字或下劃線,長(zhǎng)度最多32個(gè)字符,符 號(hào) 名 稱 符號(hào)列表 數(shù)量運(yùn) 算 符+ - * / % 5標(biāo) 點(diǎn) 符 , . : ; ? “ 7空 白 符(空格)、制表符 2括 號(hào) ( ) 6關(guān)系運(yùn)算符 3其它符號(hào) $ | # printf(“* *n”); /*2個(gè)*號(hào)中間有13個(gè)空隔*/ printf(“* *n”); /* 同上 */ printf(* * * * * * * *n); printf(nr);,上面這個(gè)平面圖形是非常簡(jiǎn)單的,特別是中間兩行左右兩個(gè)字符*相隔很近,中間的空格只有13個(gè)。
5、如果中間的空格有六、七十個(gè),難道我們也照打六、七十個(gè)空格?怎么辦? 可不可以不用照打那么多個(gè)空格?(由學(xué)生討論回答,例1_1_3解法2,* 1_1L3_2.C */ #includestdio.h main( ) printf(* * * * * * * *n); printf(“%c%14cn”,*,*); /*為什么是14C? */ printf(%c%14cn,*,*); printf(%sn,* * * * * * * *);,格式聲明符,第一個(gè)printf()是直接打印字符串常量,字符串常量和轉(zhuǎn)義字符是printf()函數(shù)可以直接打印的數(shù)據(jù)。第四個(gè)printf()是以字符串量的格式打
6、印字符串量。字符串在英文中寫成string,取其首字符s,前面再加一個(gè)%,構(gòu)成printf()的指定輸出字符串量的格式聲明符。%s是指定輸出字符串量的格式聲明符,那么對(duì)于第二、第三行的%c,同學(xué)們猜一猜應(yīng)該是指定輸出什么量的格式聲明符,printf()使用格式聲明符輸出指定的量時(shí),括號(hào)里面的規(guī)律是什么,用雙引號(hào)把格式聲明符包括起來(lái), 如果后面的輸出量打印完后,希望下一個(gè)量在另一行打印,則在雙引號(hào)里的字符串最后,也可以寫上轉(zhuǎn)義字符n。這對(duì)雙引號(hào)的后面,用英文逗號(hào)和后面的輸出量隔開(kāi),雙引號(hào)里面一個(gè)格式聲明符,就對(duì)應(yīng)后面的一個(gè)輸出量,它們是一一對(duì)應(yīng)的!如果后面的輸出量有多個(gè),輸出量之間,也要用英文的
7、逗號(hào)間隔,域 寬,還有一個(gè):%14c表示什么意思?其實(shí)這是在格式聲明符中間插入了一個(gè)整數(shù),大家可以從程序的運(yùn)行結(jié)果看到,它使得后面的字符*共占據(jù)了14格的寬度,我們稱這個(gè)14為域?qū)挕?14c表示它對(duì)應(yīng)的打印字符共占14格的寬度,打印字符本身只占1格,不夠14格那么長(zhǎng),就在它的前面自動(dòng)加上13個(gè)空格,補(bǔ)到共占14格的寬度。 現(xiàn)在請(qǐng)同學(xué)們想一想:對(duì)于字符串量的格式聲明符,會(huì)不會(huì)也有域?qū)?創(chuàng)新練習(xí),例1_1_3解法1、2所生成的正方形圖案,其每一行的首位置都是在屏幕最左邊第一列上的?,F(xiàn)在,我們想將其每一行的首位置打印在屏幕左邊數(shù)起的第11列上(即是把圖案整個(gè)向右移動(dòng)10列)如何修改這個(gè)例題,使這個(gè)想
8、法得以實(shí)現(xiàn)? 請(qǐng)同學(xué)們?cè)跈C(jī)上練習(xí),124 源程序書(shū)寫規(guī)范,程序體中,每行縮進(jìn)2個(gè)空格,不要以制表符來(lái)縮進(jìn)。每個(gè)模塊寫成鋸齒型;模塊之間空一行。 每行右邊最多到80列,超過(guò)的應(yīng)該換行,換行后應(yīng)縮進(jìn)。 大括號(hào)、分別占1行,成對(duì)的大括號(hào)應(yīng)該位于同一列上。 小括號(hào)(、)前后都不要留空格。 所有的注釋都用中文書(shū)寫,使用/*/包括。凡是整個(gè)模塊的注釋寫在整個(gè)模塊的前面,并獨(dú)占一行;凡是某句的注釋寫在該句的后面同一行上,超過(guò)80列也要換行并縮進(jìn)到/*的后面。 所有標(biāo)識(shí)符的命名遵照匈牙利符號(hào)表示法:前面用表示數(shù)據(jù)類型的指定的前綴、后跟表示數(shù)據(jù)用途的英文單詞,課堂練習(xí),打印如下的字符圖形,開(kāi)始可以不用域?qū)?,最?/p>
9、要求一定使用域?qū)捄?jiǎn)化程序。 OOO OO OO OO OO OO OO OO OO OO OO OO OO,例1_1_4 使用域?qū)挻蛴∩蠄D平面圖形,分析:假設(shè)上述圖形的第一行的三個(gè)大寫字母O在它們所在行共占20格(即域?qū)挒?0,其實(shí),這是可以任由程序員自己設(shè)置的)。圖形的第二行的第一對(duì)OO,其最后一個(gè)O從第一行的設(shè)定可以推出在第18格,所以第二行的第一對(duì)OO其域?qū)捠?8;第二對(duì)OO共占有3格的寬度,其域?qū)捠?。如下圖: 圖形的第一行: OOO 它在第20格 第二行: OO OO 在第18格 共占3格 第三行: OO OO 在第17格 共占5格 第四行: OO OO 在第16格 共占7格,很容易推出以后各行的第一對(duì)OO總要靠前一格,即域?qū)挶壬弦恍猩?;而各行的第二對(duì)OO,要往后靠一格,它的前面與第一對(duì)OO又多了一個(gè)空格,因此,域?qū)捒偙壬弦恍械牡诙?duì)OO多了2;這樣以下各行就很容易寫出來(lái)了。圖形共有7行,寫7個(gè)printf()語(yǔ)句即可。程序如下: /* 1_1L4.C */ #include main() printf(%20sn,OOO); printf(%18s%3sn,OO,OO); printf(%17s%5sn,OO,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)業(yè)投資信托協(xié)議書(shū)(2篇)
- 2024年草船借箭教學(xué)設(shè)計(jì)(53篇)
- 2024年福建省莆田市涵江區(qū)三江口鎮(zhèn)招聘社區(qū)工作者考前自測(cè)高頻考點(diǎn)模擬試題(共500題)含答案
- 2024年福建省《消防員資格證之一級(jí)防火考試》必刷500題標(biāo)準(zhǔn)卷
- 黃金卷3-【贏在中考·黃金八卷】(原卷版)
- 2024屆四川省綿陽(yáng)市高三上學(xué)期第二次診斷性考試(二模)文綜試題
- 2025屆南開(kāi)中學(xué)初中考生物押題試卷含解析
- 互補(bǔ)發(fā)電系統(tǒng)行業(yè)深度研究報(bào)告
- 2025公司質(zhì)押借款合同范本
- 2024年度天津市公共營(yíng)養(yǎng)師之二級(jí)營(yíng)養(yǎng)師綜合檢測(cè)試卷A卷含答案
- 調(diào)休單、加班申請(qǐng)單
- 肉制品生產(chǎn)企業(yè)名錄296家
- 小學(xué)-英語(yǔ)-湘少版-01-Unit1-What-does-she-look-like課件
- 單證管理崗工作總結(jié)與計(jì)劃
- 規(guī)劃設(shè)計(jì)收費(fèi)標(biāo)準(zhǔn)
- 安全安全隱患整改通知單及回復(fù)
- 國(guó)有檢驗(yàn)檢測(cè)機(jī)構(gòu)員工激勵(lì)模式探索
- 采購(gòu)部年終總結(jié)計(jì)劃PPT模板
- CDI-EM60系列變頻調(diào)速器使用說(shuō)明書(shū)
- 【匯總】高二政治選擇性必修三(統(tǒng)編版) 重點(diǎn)知識(shí)點(diǎn)匯總
- 材料表面與界面考試必備
評(píng)論
0/150
提交評(píng)論