/*
编写一个名为string in() 的函数,接受两个指向字符串的指针作为参数。如果第2个字符串中
包含第1个字符串,该函数将返回第1个字符串开始的地址。例如,string in ("hats", "at")
将返回hats中a的地址。否则,该函数返回空指针。在一个完整的程序中测试该函数,使用一个
循环给函数提供输入值。
*/
#include<stdio.h>
#define SIZE 40
char * string_in(char tr[],char sr[]);
int main(void)
{?? ?
?? ?char *p;
?? ?char tr[SIZE] = "abcdefg";
?? ?char sr[SIZE];
?? ?
?? ?while(1)
?? ?{
?? ??? ?printf("q to quit\ninput string:\n");
?? ??? ?scanf("%s",sr);?
?? ??? ?while (getchar() != '\n')
? ? ? ??? ??? ?continue;
?? ??? ?p=string_in(tr,sr);
?? ??? ?printf("%c\n",*p);
?? ?}
?? ?return 0;
}
char * string_in(char tr[],char sr[])
{
?? ?char *p=NULL;
?? ?int i,j;
?? ?for(i=0;i<sizeof(sr)&&sr[i]!='\0';i++)
?? ?{
?? ??? ?for(j=0;j<sizeof(tr)&&tr[j]!='\0';j++)
?? ??? ?{
?? ??? ??? ?if(sr[i]==tr[j])
?? ??? ??? ?{
?? ??? ??? ??? ?p=&tr[j];
?? ??? ??? ??? ?return p;?
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ??? ?continue;
?? ??? ?}
?? ?}
?? ?return p;
}