下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第10章 字符串,哈爾濱工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 蘇小紅,本章學(xué)習(xí)內(nèi)容, 字符串常量 字符串處理函數(shù) 字符數(shù)組和字符指針 向函數(shù)傳遞字符串 從函數(shù)返回一個(gè)字符串指針,10.1字符串常量,10.2字符串的存儲(chǔ),C語言并沒有為字符串提供任何專門的表示法,完全使用字符數(shù)組和字符指針來處理 字符數(shù)組 每個(gè)元素都是字符類型的數(shù)組 char str80;,數(shù)組的最后一個(gè)元素必須是0,字符數(shù)組的初始化,用字符型數(shù)據(jù)對數(shù)組進(jìn)行初始化 char str6 = C,h,i,n,a,0; 用字符串常量直接對數(shù)組初始化 char str6 = China; char str6 = China;,10.3字符指針
2、,C語言并沒有為字符串提供任何專門的表示法,完全使用字符數(shù)組和字符指針來處理,字符串是一串用雙引號(hào)引起來的字符,字符數(shù)組就是每個(gè)元素都是字符型的數(shù)組,字符指針就是指向字符類型數(shù)據(jù)的指針,Hello China,pStr,數(shù)組最后一個(gè)元素必須是0才表示字符串,10.3字符指針,定義和初始化方法不同,str = Hello China;,Hello China,pStr,char str12 = Hello China;,char *pStr; pStr = Hello China;,str,Why?,數(shù)組名str是地址常量,字符指針pStr是變量,10.3字符指針,定義和初始化方法不同,char
3、 *pStr = Hello China;,Hello China,pStr,char str12 = Hello China;,char *pStr; pStr = Hello China;,str,pStr = ,按字符逐個(gè)輸入/輸出,for (i=0; stri!=0; i+) putchar(stri); putchar(n);,char str10;,10.4字符串的訪問和輸入/輸出,按字符串整體輸入/輸出,scanf(%s,str); printf(%s,str);,char str10;,10.4字符串的訪問和輸入/輸出,gets(str); puts(str);,scanf(%
4、s,str); printf(%s,str);,char str10;,10.4字符串的訪問和輸入/輸出,gets(str); puts(str);,按字符串整體輸入/輸出,10.4字符串的訪問和輸入/輸出,【例10.1】從鍵盤輸入一個(gè)人名,把它顯示在屏幕上,Why?,10.4字符串的訪問和輸入/輸出,【例10.1】從鍵盤輸入一個(gè)人名,把它顯示在屏幕上,10.4字符串的訪問和輸入/輸出,【例10.2】使用函數(shù)gets( ),從鍵盤輸入一個(gè)帶有空格的人名,然后把它顯示在屏幕上,10.4字符串的訪問和輸入/輸出,【例10.2】使用函數(shù)gets( ),從鍵盤輸入一個(gè)帶有空格的人名,然后把它顯示在屏幕
5、上,10.4字符串的訪問和輸入/輸出,【例10.2】使用函數(shù)gets( ),從鍵盤輸入一個(gè)帶有空格的人名,然后把它顯示在屏幕上,10.4字符串的訪問和輸入/輸出,【例10.3】從鍵盤輸入一個(gè)帶有空格的人名,然后在顯示人名的前面顯示Hello, I said to,10.4字符串的訪問和輸入/輸出,【例10.3】從鍵盤輸入一個(gè)帶有空格的人名,然后在顯示人名的前面顯示Hello, I said to,10.5字符串處理函數(shù),#include ,strcpy(目的字符串,源字符串);,string copy,strlen(字符串);,string length,strcat(目的字符串,源字符串);
6、,string combination,strcmp(字符串1,字符串2);,string comparison,計(jì)算字符串長度,#include ,strlen(字符串);,string length,char str10 = China; printf(%d, strlen(str); 打印結(jié)果是 5、6,還是10?,計(jì)算字符串長度,#include ,strlen(字符串);,string length,len = strlen(str); for (i=0; ilen; i+) putchar(stri); putchar(n);,字符串復(fù)制,#include ,strcpy(目的字符
7、串,源字符串);,string copy,字符串能否用=整體復(fù)制? str2 = str1;,strcpy(str2, str1);,字符串復(fù)制,#include ,strcpy(目的字符串,源字符串);,string copy,字符串能否用=整體復(fù)制? str2 = str1;,strcpy(str2, str1);,字符串連接,#include ,strcat(目的字符串,源字符串);,string combination,strcat(str2, str1);,字符串比較,#include ,strcmp(字符串1,字符串2);,string comparison,字符串能否用、=比較大
8、??? if (str2 = str1),if (strcmp(str2, str1) = 0),字符串比較,#include ,strcmp(字符串1,字符串2);,string comparison,字符串是如何比較大小的?,compare computer,compare computer 表示 strcmp(str1, str2) 0為真,【例10.4】按奧運(yùn)會(huì)參賽國國名在字典中的順序?qū)ζ淙雸龃涡蜻M(jìn)行排序,【例10.4】按奧運(yùn)會(huì)參賽國國名在字典中的順序?qū)ζ淙雸龃涡蜻M(jìn)行排序,10.5字符串處理函數(shù),10.6向函數(shù)傳遞字符串,向函數(shù)傳遞字符串時(shí),既可使用字符數(shù)組作函數(shù)參數(shù),也可使用字符指針作
9、函數(shù)參數(shù) 傳地址調(diào)用,例10.5 :字符串復(fù)制 用字符數(shù)組編程,void MyStrcpy(char dstStr, char srcStr) int i = 0; while (srcStri != 0) dstStri = srcStri; i+; dstStri = 0; ,srcStri,dstStri,H,i=0,e,i=1,l,i=2,l,i=3,o,i=4,i=5,C,i=6,h,i=7,i,i=8,n,i=9,a,i=10,0,srcStri=0,void MyStrcpy(char *dstStr, char *srcStr) while (*srcStr != 0) *ds
10、tStr = *srcStr; srcStr+; dstStr+; *dstStr = 0; ,例10.5 :字符串復(fù)制 用字符指針編程,*srcStr,*dstStr,H,e,l,l,o,C,h,i,n,a,0,*srcStr=0,srcStr+,dstStr+,例10.6 :計(jì)算實(shí)際字符個(gè)數(shù),unsigned int MyStrlen(const char str) int i; unsigned int len = 0; for (i=0; stri!=0; i+) len+; return (len); ,unsigned int MyStrlen(const char *pStr) unsigned int len = 0; for (; *pStr!=0; pStr+) len+; return (len); ,方法2:用字符指針實(shí)現(xiàn),方法1:用字符
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職第三學(xué)年(海綿城市建設(shè)技術(shù))海綿設(shè)施施工階段測試題及答案
- 2025年大學(xué)二年級(網(wǎng)絡(luò)媒體UI設(shè)計(jì))UI應(yīng)用階段測試題及答案
- 2025年大學(xué)第四學(xué)年(數(shù)字媒體技術(shù))數(shù)字媒體交互設(shè)計(jì)試題及答案
- 2025年大學(xué)第四學(xué)年(工業(yè)設(shè)計(jì))產(chǎn)品結(jié)構(gòu)設(shè)計(jì)綜合試題及答案
- 2025年高職老年保健與管理(老年?duì)I養(yǎng)與膳食)試題及答案
- 2025年中職(新能源汽車檢測與維修)智能駕駛輔助設(shè)備基礎(chǔ)試題及答案
- 2025年高職(酒店管理綜合實(shí)訓(xùn))服務(wù)創(chuàng)新實(shí)操試題及答案
- 2026年幼兒教育(幼兒語言表達(dá))試題及答案
- 2025年高職老年人服務(wù)與管理(心理疏導(dǎo)方法)試題及答案
- 2025年高職模具設(shè)計(jì)與制造(模具設(shè)計(jì)制造應(yīng)用)試題及答案
- 收購軟件的合同范本
- 2025年榮昌縣輔警招聘考試真題含答案詳解ab卷
- 新能源公司安全生產(chǎn)管理制度
- 2025年江蘇省無錫市中考數(shù)學(xué)試卷(含答案與解析)
- 中國移動(dòng):面向大規(guī)模智算集群場景的光互連技術(shù)白皮書 2025
- 標(biāo)準(zhǔn)化會(huì)議組織與執(zhí)行流程
- 2025年秋招機(jī)械工程師筆試真題及答案
- 圓柱齒輪減速機(jī)維修課件
- 河道整治施工過程中的風(fēng)險(xiǎn)控制方案
- 儲(chǔ)備園長筆試題目及答案
- 鐵路運(yùn)輸安全管理體系建設(shè)方案
評論
0/150
提交評論