首页 > 试题广场 >

设计并测试一个函数,其功能是搜索由函数的第一个参数指定的字符

[问答题]

设计并测试一个函数,其功能是搜索由函数的第一个参数指定的字符串,在其中查找由函数的第二个参数指定的字符的第一次出现的位置。如果找到,返回指向这个字符的指针:如果没有找到,返回空字符(这种方式和strchr()函数的功能一样)。在一个使用循环语句为这个函数提供输入的完整程序中进行测试。

推荐
#include <stdio.h>
char *mystrchr(char *, char );
int main(void)
{
 char str[81];
 char ch;
 char *p;
 do
 {
 puts("input range string:");
 gets(str);
 puts("input match char:");
 ch = getchar();
 getchar();
 p = mystrchr(str, ch);
 if ( p )
 {
 puts("Find!");
 puts(p);
 }
 else puts("Can't find!");
 puts("input any char except q to go on.");
 gets(str);
 }
 while(*str != 'q');
 puts("Quit.");
 return 0;
}
char *mystrchr(char *p, char ch)
{
 char *p_save = p;
 if(*p == '\0') return NULL;
 while(1)
 {
 if(*p == ch)
 {
 return p_save;
 }
 else
 {
 if(*++p == '\0') return NULL;
 p_save = p;
 }
 }
}

发表于 2018-05-05 21:51:35 回复(0)