代码如下:
#include <stdio.h>
void fun(char *str,char ch)
{
while(*str!='\0' &&*str!=ch)
//*str!='\0'或*str!=NULL也可写成*str 即用于判断指针是否到了字符串尾
//*str !=ch用于判断字符串中是否有与用户输入的单个字符相同的字符
str++;
if(*str!=ch)
{ //如果逐个比较都不相等那么字符串最后一个字符一定是NULL位0x00,str[0]原来是0x00(字符串结束符), 就会被ch替换(str[0]=ch重新赋值了),然后再给它后面追加一个0x00作为字符串结束符
str[0]=ch;
str[1]=0; //str[1]是它的下一位
}
}
main()
{
char str[100],c;
printf("请输入字符串:\n");
gets(str);
printf("请输入字符:\n");
c=getchar();
fun(str,c);
printf("字符串结果是:%s\n",str);
}
结果如下:
请输入字符串:
goo
请输入字符:
d
字符串结果是:good
请按任意键继续. . .