函数接口定义:
char *match( char *s, char ch1, char ch2 );
函数match应打印s中从ch1到ch2之间的所有字符,并且返回ch1的地址。
裁判测试程序样例:
输入输出:
我的代码:
char *match( char *s, char ch1, char ch2 )
{
char *p=s;//p和s一样 都是字符串的指针
while(*p!='\0' && *p!=ch1 )
{
p++;
}//当结束循环时 p指向ch1的地址
char *p1=p;//记录此时ch1的地址
if(*p=='\0')//如果此时*p为\0 说明跑完一边循环后还是没找到ch1 这个时候不用再找 直接return空指针
{
printf("\n");
return p1;
}
else if(*p!='\0')//在字符串中有ch1
{
while(*p!='\0' && *p!=ch2)
{
printf("%c",*p);
p++;
}
if(*p!='\0') printf("%c\n",*p) ;//ch2在字符串中
else printf("\n");//ch2不在字符串中
return p1;
}
}