主题:请教这个程序逻辑运算部分怎么理解
#include <stdafx.h>
#include <string.h>
void main()
{ int i,j,len1,len2,flag=0,m,n,e;
char str1[80],str2[80];
printf("Enter first string :");
gets(str1);
printf("Enter second string :");
gets(str2);
len1=strlen(str1),len2=strlen(str2);
for(i=0;i<=len1-len2;i++)
{ flag=-1;
for(j=i;j<len2+i;j++)
if(str1[j]!=str2[e=j-i])
{ flag=0; break;}
if(flag)
{flag=i+1; break;}
}
if(flag)
printf("%s is in %s at position %d\n",str2,str1,flag);
else
printf("%s is not in %s at position %d\n",str2,str1,flag);
}
#include <string.h>
void main()
{ int i,j,len1,len2,flag=0,m,n,e;
char str1[80],str2[80];
printf("Enter first string :");
gets(str1);
printf("Enter second string :");
gets(str2);
len1=strlen(str1),len2=strlen(str2);
for(i=0;i<=len1-len2;i++)
{ flag=-1;
for(j=i;j<len2+i;j++)
if(str1[j]!=str2[e=j-i])
{ flag=0; break;}
if(flag)
{flag=i+1; break;}
}
if(flag)
printf("%s is in %s at position %d\n",str2,str1,flag);
else
printf("%s is not in %s at position %d\n",str2,str1,flag);
}