每日一題(C語言基礎篇)1
阿新 • • 發佈:2019-01-06
題目描述:判斷字串2是否是字串1的子集。例如"AB"是"ABCDEF"的子集,“DEF”也是“ABCDEF”的子集。
程式碼實現:
#include <stdio.h>
#define OK 1
#define ERROR 0
int str_str(char * str1, char * str2);
int main(void)
{
int str_value;
str_value = str_str("hello", "he");
printf("%d\n", str_value);
}
int str_str(char * str1, char * str2)
{
char * s1 = NULL;
char * s2 = NULL;
if(*str2 == '\0')
{
return OK;
}
for(; *str1 != '\0'; str1++)
{
if(*str1 == *str2)
{
if(*(str2 + 1) == '\0')
{
return OK;
}
else if(*(str1 + 1) != *(str2 + 1))
{
break;
}
str2++;
}
}
return ERROR;
}
注意:
(1) 空字串是所有字串的子集;