【正文】
于i if (!i) //ars為空串 { =NULL。 if () free()。 //串長} HString。 return 0。 printf(刪除字符串S從3開始的4個(gè)字符:\n)。 if (strAssign(S,str)==ERROR) { printf(創(chuàng)建的字符串S失敗!\n)。 printf(\n)。}void printString(HString S){ int i。 [m+1]=39。 if (i || i1) return ERROR。 =i。 } else { if (!(=(char *) malloc(i*sizeof(char)))) return ERROR。\039。 char *c。 //存儲區(qū)基址 int length。 實(shí)現(xiàn)樸素的模式匹配算法。encrypt39。二、 實(shí)驗(yàn)內(nèi)容設(shè)計(jì)一個(gè)算法,刪去串s中從第i個(gè)字符開始的連續(xù)j個(gè)字符(以堆分配法表示串)。若x和y是兩個(gè)以堆分配法表示的串,請?jiān)O(shè)計(jì)一個(gè)算法,找出x中第一個(gè)不在y中出現(xiàn)的字符。被加密為39。三、//設(shè)計(jì)一個(gè)算法,刪去串s中從第i個(gè)字符開始的連續(xù)j個(gè)字符(以堆分配法表示串)。 //串長} HString。 if () free()。i++,c++)。 for(j=0。 } return OK。 for (k=i+j1,m=i1。\039。 for (i=0。}/* run this program using the console pauser or add your own getch, system(pause) or input loop */int main(){ HString S。 return 1。 strDelete(S,3,4)。}//若x和y是兩個(gè)以堆分配法表示的串,請?jiān)O(shè)計(jì)一個(gè)算法,找出x中第一個(gè)不在y中出現(xiàn)的字符include include include includedefine OK 1define ERROR 0define OVERFLOW 1typedef int Status。Status strAssign(HString amp。 for (i=0,c=chars。 =0。j++) [j]=chars[j]。S1,HString amp。i++) { int m=0。 else m++。 char str1[100],str2[100]。 gets(str2)。strAssign(S2,str2)。typedef struct{ //堆分配法表示串的類型定義 char *ch。}Status strAssign(HString amp。 for (i=0,c=chars。 //求串chars的長度,存于i if (!i) //chars為空串 { =NULL