首页 > 学院 > 开发设计 > 正文

例题:判断子串

2019-11-11 02:18:28
字体:
来源:转载
供稿:网友

题目:输入两个字符串,判断一个是否为另一个字符串的子串。

#include<stdio.h>#include<string.h>int main(){	char str[100],a[100],temp[100];	int len1,len2,loc,i,j,num = 0;	PRintf("Please input a long string:/n");	scanf("%[^/n]",str);	getchar();                           //存储/n	printf("Please input a short string:/n");	scanf("%[^/n]",a);	len1 = strlen(str);	len2 = strlen(a);	for(i = 0; i <= len1; i++)	{			if(str[i] == a[0])           //判断头一个字符是否相同			{ 				loc = i;                    				for(j = loc; j < (loc + len2); j++) 				{					temp[j - loc] = str[j]; //将之后和子串长度相同的字符存入temp中				}				temp[j - loc] = '/0';      //将字符串结束标志赋予字符数组				if(strcmp(temp,a) == 0)   //比较和子串是否相同				{ 					printf("YES/n");					num++;					break;				}					}			if(str[i] == '/0' && num == 0)      //表示没有相同的子串				printf("NO/n");			}	}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表