请问这个代码哪里错了
#include <stdio.h>
int chazhao(char *p,const char k){
int i=0;
while(*(p+i)!='\0'){
if(*(p+i)==k){
return(i);
}
i++;
}
return(0);
}
int main(void)
{
int
i=0;
char
key;
char
r[128]={0};
printf("请输入无序字符串:\n");
gets(r);
printf("请输入关键字:\n");
scanf("%c",&key);
i=chazhao(r,key);
if(i==0){
printf("亲,没找到你要的。\n");
}else{
printf("亲,你要找的%c在第%d位,里面是%c。\n",key,i+1,r[i]);
}
return(0);
}