版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)2022-3-192022-3-19計(jì)算機(jī)與信息工程分院第第5 5講講 數(shù)組(數(shù)組(2 2)-字符數(shù)組字符數(shù)組主講教師:劉莉E_mail: Phone: 888906922022-3-19計(jì)算機(jī)與信息工程分院2 2主要內(nèi)容主要內(nèi)容字符數(shù)組字符數(shù)組1字符數(shù)組應(yīng)用舉例字符數(shù)組應(yīng)用舉例2數(shù)組應(yīng)用實(shí)例數(shù)組應(yīng)用實(shí)例3字符數(shù)組的定義、字符數(shù)組的輸入和輸出數(shù)組元素的使用2022-3-19計(jì)算機(jī)與信息工程分院3 31.1.字符數(shù)組(字符數(shù)組(1 1)v字符數(shù)組的定義v字符數(shù)組的初始化v字符數(shù)組的引用v字符和字符串結(jié)束標(biāo)志v字符數(shù)組的輸入輸出v字符串處理函數(shù)2022-3-19計(jì)算機(jī)與信
2、息工程分院4 41.1.字符數(shù)組(字符數(shù)組(2 2)1.11.1字符數(shù)組的定義字符數(shù)組的定義 類(lèi)型說(shuō)明符類(lèi)型說(shuō)明符 數(shù)組名數(shù)組名 常量表達(dá)式常量表達(dá)式 ; 定義:定義:例如:例如:char c10; =int c10;2022-3-19計(jì)算機(jī)與信息工程分院5 51.1.字符數(shù)組(字符數(shù)組(3 3)1.21.2字符數(shù)組的初始化字符數(shù)組的初始化1 1)逐個(gè)字符賦給數(shù)組中各元素。)逐個(gè)字符賦給數(shù)組中各元素。2)如果花括號(hào)中提供的初值個(gè)數(shù)大于數(shù)組長(zhǎng)度如果花括號(hào)中提供的初值個(gè)數(shù)大于數(shù)組長(zhǎng)度, ,則語(yǔ)法錯(cuò)則語(yǔ)法錯(cuò)誤;如果初值個(gè)數(shù)小于數(shù)組長(zhǎng)度誤;如果初值個(gè)數(shù)小于數(shù)組長(zhǎng)度, ,只將這些字符賦給數(shù)組中只將這些字
3、符賦給數(shù)組中前面那些元素前面那些元素, ,其余為其余為00。3 3)如果提供的初值個(gè)數(shù)與預(yù)定的數(shù)組長(zhǎng)度相同)如果提供的初值個(gè)數(shù)與預(yù)定的數(shù)組長(zhǎng)度相同, ,在定義時(shí)在定義時(shí)可以省略各數(shù)組長(zhǎng)度可以省略各數(shù)組長(zhǎng)度, ,系統(tǒng)會(huì)自動(dòng)根據(jù)初值個(gè)數(shù)確定數(shù)組系統(tǒng)會(huì)自動(dòng)根據(jù)初值個(gè)數(shù)確定數(shù)組長(zhǎng)度。長(zhǎng)度。4 4)可以定義二維數(shù)組。)可以定義二維數(shù)組。例如:例如:char c10=I, , a, m, , h, a, p, p, y例如:例如:char c10=c, , p, r, o , g, r, a, m ;則;則c0=c; c1= ; c2=p; c3=r; c4=o; c5=g; c6=r; c7=a; c8
4、=m; c9=0; char c=c, , p, r, o , g, r, a, mchar diamond55= , , *, , *, , *,*, , , *, , *, , *, , , *;2022-3-19計(jì)算機(jī)與信息工程分院6 61.1.字符數(shù)組(字符數(shù)組(4 4)1.31.3字符數(shù)組的引用字符數(shù)組的引用2022-3-19計(jì)算機(jī)與信息工程分院7 71.1.字符數(shù)組(字符數(shù)組(5 5)1.4 1.4 字符串和字符串結(jié)束標(biāo)志字符串和字符串結(jié)束標(biāo)志字符串用字符數(shù)組來(lái)處理,結(jié)束標(biāo)志符字符串用字符數(shù)組來(lái)處理,結(jié)束標(biāo)志符00char c=“I am happy”;= char c=I, ,
5、a, m, , h, a, p, p, y, 0;用字符串常量使字符用字符串常量使字符數(shù)組初始化數(shù)組初始化2022-3-19計(jì)算機(jī)與信息工程分院8 81.1.字符數(shù)組(字符數(shù)組(6 6)1.5 1.5 字符數(shù)組的輸入輸出字符數(shù)組的輸入輸出1)逐個(gè)字符輸入輸出逐個(gè)字符輸入輸出, ,用格式符用格式符% %c c輸入或輸出一個(gè)字符。輸入或輸出一個(gè)字符。2 2)將整個(gè)字符串一次輸入輸出,用)將整個(gè)字符串一次輸入輸出,用% %s s格式符。格式符。3 3)如果數(shù)組長(zhǎng)度大于字符串實(shí)際長(zhǎng)度,只輸出到遇)如果數(shù)組長(zhǎng)度大于字符串實(shí)際長(zhǎng)度,只輸出到遇00結(jié)束。結(jié)束。4 4)如果一個(gè)字符數(shù)組中包含一個(gè)以上)如果一個(gè)
6、字符數(shù)組中包含一個(gè)以上00,則遇第一個(gè),則遇第一個(gè)00時(shí)輸出就結(jié)束。時(shí)輸出就結(jié)束。例如例如: : char c=“China”; printf(“%s”,c);例如例如:char c10=“China”printf(“%s”,c只輸出只輸出“China”5China”5個(gè)字符個(gè)字符例如:例如:char str13; scanf(“%s”,str);如輸入以下如輸入以下1212個(gè)字符:個(gè)字符:How are youHow are you?則則strstr數(shù)組狀態(tài)為數(shù)組狀態(tài)為How00000000002022-3-19計(jì)算機(jī)與信息工程分院9 91.1.字符數(shù)組(字符數(shù)組(7 7)1.5 1.5 字
7、符串處理函數(shù)(字符串處理函數(shù)(1 1)puts(字符數(shù)組字符數(shù)組)gets(字符數(shù)組字符數(shù)組)strcpy(字符數(shù)組字符數(shù)組1,1,字符串字符串2 2)例如:例如: char str=“Chinan Beijing”; puts(str); 輸出結(jié)果為輸出結(jié)果為China Beijing例如:例如:gets(str)從鍵盤(pán)輸入:從鍵盤(pán)輸入:Computer則將則將“Computer”送給字符數(shù)組送給字符數(shù)組str字符串拷貝函數(shù),將字符串字符串拷貝函數(shù),將字符串2 2拷貝到字拷貝到字符數(shù)組符數(shù)組1 1中。中。 char str110,str2=“China”; strcpy(str1,str2)
8、;2022-3-19計(jì)算機(jī)與信息工程分院10101.1.字符數(shù)組(字符數(shù)組(8 8)1.5 1.5 字符串處理函數(shù)(字符串處理函數(shù)(2 2)連接兩個(gè)字符數(shù)組中的字符串連接兩個(gè)字符數(shù)組中的字符串, ,把字符串把字符串2 2接到字接到字符串符串1 1的后面的后面, ,結(jié)果放在字符數(shù)組結(jié)果放在字符數(shù)組1 1中中, ,函數(shù)調(diào)用后函數(shù)調(diào)用后得到一個(gè)函數(shù)值得到一個(gè)函數(shù)值-字符數(shù)組字符數(shù)組1 1的地址的地址. . char str130=“Peoples Republic of ”; char str2=“China”; printf(“%s”,strcat(str1,str2); 輸出輸出: People
9、s Republic of Chinastrcat(字符數(shù)組字符數(shù)組1,1,字符數(shù)組字符數(shù)組2 2)2022-3-19計(jì)算機(jī)與信息工程分院11111.1.字符數(shù)組(字符數(shù)組(9 9)1.5 1.5 字符串處理函數(shù)(字符串處理函數(shù)(3 3)strcpy(字符數(shù)組字符數(shù)組1,1,字符串字符串2)字符串拷貝函數(shù),將字符串字符串拷貝函數(shù),將字符串2 2拷貝到字拷貝到字符數(shù)組符數(shù)組1 1中。中。 char str110,str2=“China”; strcpy(str1,str2);2022-3-19計(jì)算機(jī)與信息工程分院12121.1.字符數(shù)組(字符數(shù)組(1010)1.5 1.5 字符串處理函數(shù)(字符串
10、處理函數(shù)(4 4)對(duì)兩個(gè)字符串自左到右逐個(gè)字符比較對(duì)兩個(gè)字符串自左到右逐個(gè)字符比較( (按按ASCIIASCII碼大小碼大小比較比較),),直到出現(xiàn)不同的字符或遇直到出現(xiàn)不同的字符或遇00為止為止 比較結(jié)果比較結(jié)果: : 串串1=1=串串2 2 函數(shù)值為函數(shù)值為0 0 串串11串串2 2 函數(shù)值為正整數(shù)函數(shù)值為正整數(shù) 串串11串串2 2 函數(shù)值為負(fù)整數(shù)函數(shù)值為負(fù)整數(shù) if (str1=str2) printf(“yes”); if (strcmp(str1,str2)=0) printf(“yes”); strcmp(字符串字符串1,1,字符串字符串2 2)2022-3-19計(jì)算機(jī)與信息工程分
11、院13131.1.字符數(shù)組(字符數(shù)組(1111)1.5 1.5 字符串處理函數(shù)(字符串處理函數(shù)(5 5)strlen(字符數(shù)組字符數(shù)組)strlwr(字符串字符串)strupr(字符串字符串)測(cè)試字符串長(zhǎng)度的函數(shù)。函數(shù)值為字符串中實(shí)際長(zhǎng)度測(cè)試字符串長(zhǎng)度的函數(shù)。函數(shù)值為字符串中實(shí)際長(zhǎng)度, ,不包不包括括00在內(nèi)在內(nèi) char str10=“China”; printf(“%d”,strlen(str); 結(jié)果為結(jié)果為5將大寫(xiě)字母轉(zhuǎn)換為小寫(xiě)字母將大寫(xiě)字母轉(zhuǎn)換為小寫(xiě)字母將小寫(xiě)字母轉(zhuǎn)換為大將小寫(xiě)字母轉(zhuǎn)換為大寫(xiě)字母寫(xiě)字母2022-3-19計(jì)算機(jī)與信息工程分院14142.2.字符數(shù)組應(yīng)用舉例字符數(shù)組應(yīng)用舉
12、例2022-3-19計(jì)算機(jī)與信息工程分院15153.3.數(shù)組應(yīng)用實(shí)例數(shù)組應(yīng)用實(shí)例2022-3-19計(jì)算機(jī)與信息工程分院1616作業(yè)作業(yè)v思考題思考題 字符串與字符數(shù)組的含義字符串與字符數(shù)組的含義v上機(jī)實(shí)驗(yàn)上機(jī)實(shí)驗(yàn)4 4 7.87.8,7.107.10,7.137.132022-3-19計(jì)算機(jī)與信息工程分院1717The end2022-3-19計(jì)算機(jī)與信息工程分院1818例6-1 輸出一個(gè)字符串main() char c10=I, ,a,m,a,b,o,y;int i ;for(i=0;i10;i+)printf(%c,ci);printf(n);運(yùn)行結(jié)果:運(yùn)行結(jié)果:I am a boy202
13、2-3-19計(jì)算機(jī)與信息工程分院1919例6-2 輸出一個(gè)鉆石圖形main() char diamond5=,*,*,*,*,*,*,*,*; int i,j; for(i=0;i5;i+) for(j=0;j5;j+) printf(%c,diamondij); printf(n); 運(yùn)行結(jié)果:運(yùn)行結(jié)果: * * * * * * *2022-3-19計(jì)算機(jī)與信息工程分院2020例6-3#include stdio.hmain() char string81; int i,nu=0,word=0; char c; gets(string); for(i=0;(c=stringi!=0;i+) if(c=)word=0; else if(word=0) word=1; num+; printf(there are %d words in the line.n,num); 運(yùn)行結(jié)果:運(yùn)行結(jié)果: I am a boy. There are 4 words in the line.輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單詞,單詞之間用空格分隔開(kāi)2022-3-19計(jì)算機(jī)與信息工程分院2121例6-4main() char string20; char str320; int i; for(i=0;i0)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度電氣設(shè)備安裝與維修合同
- 總經(jīng)理聘請(qǐng)合同模板
- 房地產(chǎn)代理合同范文:委托與代理
- 代理合同:房地產(chǎn)估價(jià)委托協(xié)議書(shū)
- 廣告業(yè)務(wù)經(jīng)營(yíng)權(quán)轉(zhuǎn)讓合同
- 產(chǎn)品責(zé)任保險(xiǎn)合同專(zhuān)業(yè)版解析
- 自動(dòng)化機(jī)器租賃協(xié)議
- 2024裝修工程轉(zhuǎn)包合同范本
- 年度長(zhǎng)期合作協(xié)議范例
- 全面購(gòu)銷(xiāo)合同模板珍藏
- 君子自強(qiáng)不息課件
- 2022人教版高二英語(yǔ)新教材選擇性必修全四冊(cè)課文原文及翻譯(英漢對(duì)照)
- WDZANYJY23低壓電力電纜技術(shù)規(guī)格書(shū)
- 抗高血壓藥物基因檢測(cè)課件
- 醫(yī)院管理醫(yī)院應(yīng)急調(diào)配機(jī)制
- (公開(kāi)課)文言文斷句-完整版課件
- 小學(xué)生性教育調(diào)查問(wèn)卷
- 醫(yī)院感染管理質(zhì)量持續(xù)改進(jìn)反饋表
- 旅游行政管理第二章旅游行政管理體制課件
- 學(xué)生崗位實(shí)習(xí)家長(zhǎng)(或法定監(jiān)護(hù)人)知情同意書(shū)
- 衛(wèi)生院關(guān)于召開(kāi)基本公共衛(wèi)生服務(wù)項(xiàng)目培訓(xùn)會(huì)的通知
評(píng)論
0/150
提交評(píng)論