设计并测试一个函数,其功能是搜索由函数的第一个参数指定的字符串,在其中查找由函数的第二个参数指定的字符的第一次出现的位置。如果找到,返回指向这个字符的指针:如果没有找到,返回空字符(这种方式和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; } } }
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题