一、刪除首碼 '*' 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*p; //字元串緩衝區;字元串頭指針;字元串臨時指針 1 ...
一、刪除首碼 '*'
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*p; //字元串緩衝區;字元串頭指針;字元串臨時指針 10 int chr_num=0,b_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數 11 int i; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中首碼 * 的個數 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*') 27 { 28 b_num++; 29 } 30 31 //刪除輸入的字元串中的首碼 * 32 for(i=0;i<chr_num-b_num;i++) 33 { 34 chr[i]=chr[i+b_num]; 35 } 36 chr[i]='\0'; 37 38 //輸出 39 cout<<"The result:"<<endl; 40 puts(chr); 41 42 return 0; 43 }View Code
二、刪除尾碼 '*'
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*t,*p; //字元串緩衝區;字元串尾指針;字元串臨時指針 10 int chr_num=0,t_num=0; //輸入的字元串中字元的個數;輸入的字元串中尾碼 * 的個數 11 12 //輸入 13 cout<<"Please input a string:"<<endl; 14 gets(chr); 15 16 //統計輸入的字元串中字元的個數 17 p=chr; // p 指向字元串的第一個字元 18 while(*p++) 19 { 20 chr_num++; 21 } 22 23 //統計輸入的字元串中尾碼 * 的個數 24 t=chr+chr_num-1; // t 指向字元串的最後一個字元 25 while(*t--=='*') 26 { 27 t_num++; 28 } 29 30 //刪除輸入的字元串中的尾碼 * 31 chr[chr_num-t_num]='\0'; 32 33 //輸出 34 cout<<"The result:"<<endl; 35 puts(chr); 36 37 return 0; 38 }View Code
三、刪除首碼和尾碼 '*'
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*t,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0,b_num=0,t_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數;輸入的字元串中尾碼 * 的個數 11 int i; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中首碼 * 的個數 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*') 27 { 28 b_num++; 29 } 30 31 //統計輸入的字元串中尾碼 * 的個數 32 t=chr+chr_num-1; // t 指向字元串的最後一個字元 33 while(*t--=='*') 34 { 35 t_num++; 36 } 37 38 //刪除輸入的字元串中的首碼和尾碼 * 39 for(i=0;i<chr_num-b_num-t_num;i++) 40 { 41 chr[i]=chr[i+b_num]; 42 } 43 chr[i]='\0'; 44 45 //輸出 46 cout<<"The result:"<<endl; 47 puts(chr); 48 49 return 0; 50 }View Code
四、刪除中間 '*'
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*t,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數;輸入的字元串中尾碼 * 的個數 11 int i; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //令 b 指向字元串中首碼 * 之後的第一個字元 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*'); 27 28 //令 t 指向字元串中尾碼 * 之前的第一個字元 29 t=chr+chr_num-1; // t 指向字元串的最後一個字元 30 while(*t--=='*'); 31 32 //刪除字元串中間的 * 33 p=b; //令 p 指向字元串中首碼 * 之後的第一個字元 34 while(b<=t) 35 { 36 if(*b!='*') 37 { 38 *p=*b; 39 p++; 40 b++; 41 } 42 else 43 { 44 b++; 45 } 46 } 47 ++t; //令 t 指向字元串中尾碼 * 的第一個 * 48 while(*t) 49 { 50 *p=*t; 51 p++; 52 t++; 53 } 54 *p='\0'; 55 56 //輸出 57 cout<<"The result:"<<endl; 58 puts(chr); 59 60 return 0; 61 }View Code
五、把字元串中的首碼 * 移動到字元串的末尾
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0,b_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數 11 int i; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中首碼 * 的個數 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*') 27 { 28 b_num++; 29 } 30 31 //把字元串中的首碼 * 移動到字元串的末尾 32 for(i=0;i<chr_num-b_num;i++) //刪除輸入的字元串中的首碼 * 33 { 34 chr[i]=chr[i+b_num]; 35 } 36 while(i<chr_num) //在字元串的末尾添加與首碼個數相同的 * 37 { 38 chr[i++]='*'; 39 } 40 chr[i]='\0'; 41 42 //輸出 43 cout<<"The result:"<<endl; 44 puts(chr); 45 46 return 0; 47 }View Code
六、把字元串中的尾碼 * 移動到字元串的開頭
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*t,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0,b_num=0,t_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數;輸入的字元串中尾碼 * 的個數 11 int i; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中首碼 * 的個數 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*') 27 { 28 b_num++; 29 } 30 31 //統計輸入的字元串中尾碼 * 的個數 32 t=chr+chr_num-1; // t 指向字元串的最後一個字元 33 while(*t--=='*') 34 { 35 t_num++; 36 } 37 38 //把字元串中的尾碼 * 移動到字元串的開頭 39 for(i=chr_num-t_num-1;i>=0;i--) //刪除輸入的字元串中的尾碼 * 40 { 41 chr[i+t_num]=chr[i]; 42 } 43 for(i=0;i<t_num;i++) //在字元串的開頭添加與尾碼個數相同的 * 44 { 45 chr[i]='*'; 46 } 47 48 //輸出 49 cout<<"The result:"<<endl; 50 puts(chr); 51 52 return 0; 53 }View Code
七、使字元串的首碼 * 不多於 n 個
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*b,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0,b_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數;輸入的字元串中尾碼 * 的個數 11 int i,n=5; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中首碼 * 的個數 25 b=chr; // b 指向字元串的第一個字元 26 while(*b++=='*') 27 { 28 b_num++; 29 } 30 31 //使字元串的首碼 * 不多於 n 個 32 if(b_num>n) 33 { 34 //刪除輸入的字元串中的首碼和尾碼 * 35 for(i=0;i<chr_num-b_num;i++) 36 { 37 chr[i+n]=chr[i+b_num]; 38 } 39 chr[i+n]='\0'; 40 } 41 42 //輸出 43 cout<<"The result:"<<endl; 44 puts(chr); 45 46 return 0; 47 }View Code
八、使字元串的尾碼 * 不多於 n 個
1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 //主函數 7 int main() 8 { 9 char chr[20],*t,*p; //字元串緩衝區;字元串頭指針;字元串尾指針;字元串臨時指針 10 int chr_num=0,t_num=0; //輸入的字元串中字元的個數;輸入的字元串中首碼 * 的個數;輸入的字元串中尾碼 * 的個數 11 int i,n=5; 12 13 //輸入 14 cout<<"Please input a string:"<<endl; 15 gets(chr); 16 17 //統計輸入的字元串中字元的個數 18 p=chr; // p 指向字元串的第一個字元 19 while(*p++) 20 { 21 chr_num++; 22 } 23 24 //統計輸入的字元串中尾碼 * 的個數 25 t=chr+chr_num-1; // t 指向字元串的最後一個字元 26 while(*t--=='*') 27 { 28 t_num++; 29 } 30 31 //使字元串的尾碼 * 不多於 n 個 32 if(t_num>n) 33 { 34 chr[chr_num-t_num+n]='\0'; 35 } 36 37 //輸出 38 cout<<"The result:"<<endl; 39 puts(chr); 40 41 return 0; 42 }View Code