




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第 8 章 字符與字符串,指針與字符串 字符串表示形式 用字符數(shù)組實(shí)現(xiàn),例 main( ) char string=“I love China!”; printf(“%sn”,string); printf(“%sn”,string+7); ,用字符指針實(shí)現(xiàn),例 main( ) char *string=“I love China!”; printf(“%sn”,string); string+=7; while(*string) putchar(string0); string+; ,字符指針初始化:把字符串首地址賦給string char *string; string=“I love C
2、hina!”;,*string!=0,字符指針變量與字符數(shù)組 char *cp; 與 char str20; str由若干元素組成,每個(gè)元素放一個(gè)字符;而cp中存放字符串首地址 char str20; str=“I love China!”; () char *cp; cp=“I love China!”; () str是地址常量;cp是地址變量 cp接受鍵入字符串時(shí),必須先開辟存儲(chǔ)空間,例 char str10; scanf(“%s”,str); () 而 char *cp; scanf(“%s”, cp); (),改為: char *cp,str10; cp=str; scanf(“%s”
3、,cp); (),字符串與數(shù)組關(guān)系 字符串用一維字符數(shù)組存放 字符數(shù)組具有一維數(shù)組的所有特點(diǎn) 數(shù)組名是指向數(shù)組首地址的地址常量 數(shù)組元素的引用方法可用指針法和下標(biāo)法 數(shù)組名作函數(shù)參數(shù)是地址傳遞等 區(qū)別 存儲(chǔ)格式:字符串結(jié)束標(biāo)志 賦值方式與初始化 輸入輸出方式:%s %c,char str=“Hello!”; () char str=“Hello!”; () char str=H,e,l,l,o,!; () char *cp=“Hello”; () int a=1,2,3,4,5; () int *p=1,2,3,4,5; (),char str10,*cp; int a10,*p; str=“
4、Hello”; () cp=“Hello!”; () a=1,2,3,4,5; () p=1,2,3,4,5; (),scanf(“%s”,str); printf(“%s”,str); gets(str); puts(str);,字符指針: char *p; p=“I am a student.”; 定義字符數(shù)組時(shí),在編譯時(shí)為數(shù)組分配內(nèi)存。而定義一個(gè)指向字符的指針變量,則只分配一個(gè)存放指針變量的內(nèi)存,指針變量“必須初始化后才能使用”。 char str10; scanf(“%s”,str); char *p; scanf(“%s”,p);,char *p; p=(char*)malloc(2
5、0); scanf(“%s”,p); free(p);,stdlib.h,函數(shù)庫(kù)為ctype.h int isalpha(int ch) 若ch是字母(A-Z,a-z)返回非0值,否則返回0 int isalnum(int ch) 若ch是字母(A-Z,a-z)或數(shù)字(0-9) 返回非0值,否則返回0 int isascii(int ch) 若ch是字符(ASCII碼中的0-127)返回非0值,否則返回0 int iscntrl(int ch) 若ch是作廢字符(0 x7F)或普通控制字符(0 x00-0 x1F) 返回非0值,否則返回0 int isdigit(int ch) 若ch是數(shù)字(
6、0-9)返回非0值,否則返回0 int isgraph(int ch) 若ch是可打印字符(不含空格)(0 x21-0 x7E)返回非0值,否則返回0 int islower(int ch) 若ch是小寫字母(a-z)返回非0值,否則返回0 int isprint(int ch) 若ch是可打印字符(含空格)(0 x20-0 x7E)返回非0值,否則返回0 int ispunct(int ch) 若ch是標(biāo)點(diǎn)字符(0 x00-0 x1F)返回非0值,否則返回0 int isspace(int ch) 若ch是空格( ),水平制表符(t),回車符(r), 走紙換行(f),垂直制表符(v),換行符
7、(n) 返回非0值,否則返回0 int isupper(int ch) 若ch是大寫字母(A-Z)返回非0值,否則返回0 int isxdigit(int ch) 若ch是16進(jìn)制數(shù)(0-9,A-F,a-f)返回非0值, 否則返回0 int tolower(int ch) 若ch是大寫字母(A-Z)返回相應(yīng)的小寫字母(a-z) int toupper(int ch) 若ch是小寫字母(a-z)返回相應(yīng)的大寫字母(A-Z),函數(shù)庫(kù)為stdlib.h double atof(char *nptr) 將字符串nptr轉(zhuǎn)換成浮點(diǎn)數(shù)并返回這個(gè)浮點(diǎn)數(shù) int atoi(char *nptr) 將字符串np
8、tr轉(zhuǎn)換成整數(shù)并返回這個(gè)整數(shù) long atol(char *nptr) 將字符串nptr轉(zhuǎn)換成長(zhǎng)整數(shù)并返回這個(gè)整數(shù) char *ultoa(unsigned long value,char *string,int radix) 將無符號(hào)整型數(shù)value轉(zhuǎn)換成字符串并返回該字符串,radix為轉(zhuǎn)換時(shí)所用基數(shù) char *ltoa(long value,char *string,int radix) 將長(zhǎng)整型數(shù)value轉(zhuǎn)換成字符串并返回該字符串,radix為轉(zhuǎn)換時(shí)所用基數(shù) char *itoa(int value,char *string,int radix) 將整數(shù)value轉(zhuǎn)換成字符串存入
9、string,radix為轉(zhuǎn)換時(shí)所用基數(shù) int system(char *command) 將MSDOS命令command傳遞給DOS執(zhí)行,str字符串操作函數(shù) char stpcpy(char *dest,const char *src) 將字符串src復(fù)制到dest char strcat(char *dest,const char *src) 將字符串src添加到dest末尾 char strchr(const char *s,int c) 檢索并返回字符c在字符串s中第一次出現(xiàn)的位置 int strcmp(const char *s1,const char *s2) 比較字符串s1與
10、s2的大小,并返回s1-s2 char strcpy(char *dest,const char *src) 將字符串src復(fù)制到des,例: 建立給定范圍的子目錄 #include stdio.h #include stdlib.h #include string.h main() char s110,s210,s20; int beg,end,i; puts(begin:); gets(s1); puts(end:); gets(s2); beg=atol(s1); end=atol(s2); for(i=beg;i=end;i+) strcpy(s,md ); ltoa(i,s1,10)
11、; strcat(s,s1); system(s); ,/*編程題 請(qǐng)編一個(gè)函數(shù)int fun(* char ss),它的功能是:把ss字 符串中的字符按逆序存放。例如:若輸入字符串為ABCDE FG,則逆置后的字符串為GFEDCBA。請(qǐng)勿改動(dòng)主函數(shù) main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入 你編寫的若干語句。*/ #include #include #include int fun(char p) void main() char s80; printf(nPlease enter a string:); gets(s); fun(s); printf(nThe new string is:); puts(s); getch(); ,int fun(char p) int n,i,j; char c; n=strlen(p); for(i=n-1,j=0;ij;i-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025一建經(jīng)濟(jì)高頻30考點(diǎn)
- 2025經(jīng)濟(jì)學(xué)考研高頻考點(diǎn)
- 2025經(jīng)濟(jì)師初級(jí)高頻考點(diǎn)總結(jié)
- 2025經(jīng)濟(jì)生活高頻考點(diǎn)易錯(cuò)點(diǎn)
- 2025經(jīng)濟(jì)法總論高頻考點(diǎn)總結(jié)
- 幼兒進(jìn)餐活動(dòng)觀察
- 2025貨幣金融學(xué)必考知識(shí)點(diǎn)
- 2025as經(jīng)濟(jì)高頻考點(diǎn)
- 醫(yī)院會(huì)計(jì)人員述職報(bào)告
- 司機(jī)心態(tài)培訓(xùn)課件
- 內(nèi)科護(hù)理學(xué)第五版目錄
- 安寧療護(hù)實(shí)踐指南規(guī)范試行
- 煤礦瓦斯檢查工安全培訓(xùn)課件
- 《CRRT報(bào)警及處理》課件
- 麥當(dāng)勞標(biāo)準(zhǔn)化執(zhí)行
- 2022(化工分析工)理論知識(shí)考試題庫(kù)(含答案)
- 重癥患者目標(biāo)導(dǎo)向性鎮(zhèn)靜課件
- 高質(zhì)量SCI論文入門必備從選題到發(fā)表全套課件
- 黨員基本情況登記表-最新版
- 庫(kù)欣綜合征英文教學(xué)課件cushingsyndrome
- 未來醫(yī)美的必然趨勢(shì)課件
評(píng)論
0/150
提交評(píng)論