读书人

在指定的字符串中搜寻给定的字符若字

发布时间: 2013-08-16 14:29:57 作者: rapoo

在指定的字符串中搜索给定的字符,若字符串中有此字符,则什么都不做,否则,将此字符插入到字符串的最后。
编写函数完成如下功能:在指定的字符串中搜索给定的字符,若字符串中有此字符,则什么都不做,否则,将此字符插入到字符串的最后。
函数原型为: void fun (char *str,char ch) ;

[解决办法]


void fun (char *str,char ch)
{
while(*str)
if(*str==ch) return;
else str++;
*str=ch;
*(str+1)='\0';
}

[解决办法]

void fun (char *str,char ch)
{
int i = 0, len;
len = strlen(str);
while(*(str + i) && *(str + i) != ch )
{
++i
}
if(i == len)
{
*(str + i) = ch;
*(str + i + 1) = 0;//保证str足够大,否则需要做些工作,这里不处理这种情况
}
}


程序没有调试,回复框内直接回复的,若有错,请拍砖
[解决办法]
要确保str有一个字节的空闲空间,否则可能会数组越界
void fun(char *str,char ch)
{
if (str == NULL )
{
return;
}
char *tmpStr = str;
while (*tmpStr != '\0')
{
if (*tmpStr == ch)
{
return;
}
tmpStr++;
}

*tmpStr++ = ch;
*tmpStr = '\0';

}

[解决办法]
void fun_s(char *str,char ch,int sizeofstr); 

读书人网 >C语言

热点推荐