習題8-6 刪除字元 (20 point(s)
阿新 • • 發佈:2018-12-15
本題要求實現一個刪除字串中的指定字元的簡單函式。
函式介面定義:
void delchar( char *str, char c );
其中char *str
是傳入的字串,c
是待刪除的字元。函式delchar
的功能是將字串str
中出現的所有c
字元刪除。
裁判測試程式樣例:
#include <stdio.h> #define MAXN 20 void delchar( char *str, char c ); void ReadString( char s[] ); /* 由裁判實現,略去不表 */ int main() { char str[MAXN], c; scanf("%c\n", &c); ReadString(str); delchar(str, c); printf("%s\n", str); return 0; } /* 你的程式碼將被嵌在這裡 */
輸入樣例:
a
happy new year
輸出樣例:
hppy new yer
void delchar( char *str, char c){
int i,j;
i=0;j=0;
while(str[i]!='\0'){
if(str[i]!=c){
str[j]=str[i];
j++;
}
i++;
}
str[j]='\0';
}