![C語言程序設計數組_第1頁](http://file4.renrendoc.com/view/2450dc02f3e84af3bcd5f714882ae826/2450dc02f3e84af3bcd5f714882ae8261.gif)
![C語言程序設計數組_第2頁](http://file4.renrendoc.com/view/2450dc02f3e84af3bcd5f714882ae826/2450dc02f3e84af3bcd5f714882ae8262.gif)
![C語言程序設計數組_第3頁](http://file4.renrendoc.com/view/2450dc02f3e84af3bcd5f714882ae826/2450dc02f3e84af3bcd5f714882ae8263.gif)
![C語言程序設計數組_第4頁](http://file4.renrendoc.com/view/2450dc02f3e84af3bcd5f714882ae826/2450dc02f3e84af3bcd5f714882ae8264.gif)
![C語言程序設計數組_第5頁](http://file4.renrendoc.com/view/2450dc02f3e84af3bcd5f714882ae826/2450dc02f3e84af3bcd5f714882ae8265.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C語言程序設計
第6章數組
--字符數組及字符串第六章數組之字符數組及字符串字符數組的定義、初始化及引用字符串的結束標志字符數組的輸入和輸出字符串處理函數教學目標課程回顧
1.以下對一維數組a的定義中正確的是()。A.chara(10);B.inta[0..100];C.inta[5];D.intk=10;inta[k];2.以下對二維數組的定義中正確的是()。A.chara[4][]={1,2,3,4,5,6};B.inta[][3];C.inta[][3]={1,2,3,4,5,6};D.inta[][]={1,2,3},{4,5,6};
6.3字符數組
字符數組:存放字符數據的數組。一維字符數組:存放一個字符串(每個數組元素存放一個字符)二組字符數組:存放多個字符串(行數是字符串的個數)形式:char數組名[常量表達式]char數組名[常量表達式]
[
常量表達式]常量表達式:整數、字符、符號常量6.3.1字符數組的定義6.3.2字符數組的初始化對字符數組初始化,最容易理解的方式是逐個字符賦給數組中的各元素。如:chara[10]={‘i’,’,’a’,’m’,’’,’h’,’a’,’p’,
’p’,’y’};如果在定義字符數組時不進行初始化,則數組中各元素的值是不可預料的。如果花括弧中提供的初值個數(即字符個數)大于數組長度,則按語法錯誤處理。如果初值個數小于數組長度,則只將這些字符賦給數組中前面那些元素,其余的元素自動定為空字符(即‘\0’)。例如:如果提供的初值個數與預定的數組長度相同,在定義時可以省略數組長度,系統(tǒng)會自動根據初值個數確定數組長度。也可以定義和初始化一個二維字符數組。6.3.3字符數組的引用例:輸出一個字符串輸出一個鉆石圖形6.3.4字符串和字符串結束標志為了測定字符串的實際長度,c語言規(guī)定了一個“字符串結束標志”,以字符’\0’作為標志。如果有一個字符串,前面9個字符都不是空字符(即‘\0’),而第10個字符是‘\0’,則此字符串的有效字符為9個。系統(tǒng)對字符串常量也自動加一個‘\0’,作為結束符。字符串的長度:第一個‘\0’以前字符的個數??梢杂米址A縼硎棺址麛到M初始化。
例如charc[]={“Iamhappy”};
也可以省略花括弧,直接寫成charc[]=“Iamhappy”;
它與下面的數組初始化等價charc[]={‘I’,’’,’a’,’m’,’’,’h’,’a’,’p’,’p’,’y’,’\0’};例:charc[10]={“China”};數組c的前5個元素為’C’,’h’,’i’,’n’,’a’,第6個元素為’\0’,后4個元素也設定為空字符。練習:寫出下列二維字符數且初始化的形式。charfruit[][7]={“Apple”,”O(jiān)range”,”Grape”,”Peach”};例:定義了以下的字符數組:charc[]={“Pascalprogram”};
現在,想用一個新的字符串代替原有的字符串,從鍵盤向字符數組輸入:Hello,如果不加’\0’,字符數組中的字符如下:
Hellolprogram6.3.5字符數組的輸入輸出逐個字符輸入輸出。用格式符“%C”輸入或輸出一個字符。將整個字符串一次輸入或輸出。用“%s”格式符,意思是對字符串的輸入輸出。例:charc[]={“China”};printf(“%s”,c);
此數組在內存中的狀態(tài)說明:(1)用%s格式符輸出字符串時,printf函數中的輸出項是字符數組名,而不是數組元素名。(2)如果數組長度大于字符串實際長度,也只輸出到\0結束。(3)輸出字符不包括結束符‘\0’。(4)如果一個字符數組中包含一個以上’\0’,則在第一個‘\0’時輸出就結束。(5)可以使用scanf函數輸入一個字符串。例:scanf(“%s”,c),c是已經定義的數組名,并且長度短于已定義的字符數組的長度。
scanf函數輸入多個字符串時,需要用空格分隔。例如:charstr1[5],str2[5],str3[5];scanf(“%s5%s%s”,str1,str2,str3);
scanf函數中的輸入項如果是字符數組,則不要再加地址符&,因為在C語言中,數組名代表該數組的起始地址。6.3.6字符串處理函數1.puts函數:作用是將一個字符串輸出到終端。
charstr[]={“China\nBeijing”};puts(str);
輸出結果:ChinaBeijing2.gets函數:作用是從終端輸入一個字符串到字符數組,并且得到一個函數值。
例:
gets(str)
從鍵盤輸入:Computer注意:用puts和gets函數只能輸入或輸出一個字符串,不能寫成puts(str1,str2)或gets(str1,str2)3.strcat函數:作用是連接兩個字符串,把字符串str2連接到str1后面,放在數組str1中得到一個新的數組。格式:strcat(字符串1,字符串2)例:charstr1[30]={“Heis”};
charstr2[]={“aboy.”};
print(“%s”,strcat(str1,str2);輸出:Heisaboy.
4.strcmp函數:作用是比較字符串str1和str2格式:strcmp(字符串1,字符串2)例:strcmp(str1,str2);
strcmp(“China”,”Korea”);
strcmp(str1,”Beijing”);注:比較的結果由函數值帶回
(1)兩個字符串自左至右按ascii碼比較,至到出現不同的字符或\0結束。(2)字符串1=字符串2,函數值為0.(3)如果字符串1>字符串2,函數值為一正(4)如果字符串1<字符串2,函數值為一負
兩個字符串比較,不能用if語句,而只能使用strcmp5.
strlen函數:作用是測試字符串中的實際長度,不包括’\0’在內。格式:strlen(字符數組)例如:charstr[10]={“China”};printf(“%d”,strlen(str));
輸出結果是56.
strlwr函數:作用是將字符串中的大寫字母換成小寫字母。
格式:strlwr(字符串)7.strupr函數:作用是將字符串中的小寫字母換成大寫字母。格式:strupr(字符串)字符數組的初始化字符數組的引用字符數組的結束標記字符數組的輸入和輸出字符數組的函數應用課程小結
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國工商銀行補償貿易借款合同(6篇)
- 2024酒店客房領班年終總結(7篇)
- 聘用合同模板(30篇)
- 2024年學校開展防災減災工作總結(9篇)
- 2024-2025學年第2課西方國家古代和近代政治制度的演變-勤徑學升高中歷史選擇性必修1同步練測(統(tǒng)編版2019)
- 2025年專利申請出售協(xié)議
- 2025年化工市場代理購銷居間協(xié)議書
- 2025年醫(yī)療機構內科承包業(yè)務協(xié)議
- 2025年授權代理合作合同標準版本
- 2025年電子線圈設備項目申請報告模板
- 2025年電力鐵塔市場分析現狀
- GB 12158-2024防止靜電事故通用要求
- 《教育強國建設規(guī)劃綱要(2024-2035年)》全文
- 山東省濱州市2024-2025學年高二上學期期末地理試題( 含答案)
- 體育老師籃球說課
- 化學-江蘇省蘇州市2024-2025學年2025屆高三第一學期學業(yè)期末質量陽光指標調研卷試題和答案
- 蛋雞生產飼養(yǎng)養(yǎng)殖培訓課件
- 運用PDCA降低住院患者跌倒-墜床發(fā)生率
- 海底撈員工手冊
- 2024CSCO小細胞肺癌診療指南解讀
- 立春氣象與生活影響模板
評論
0/150
提交評論