我是康康康 2022-01-08 23:36 采纳率: 60%
浏览 32
已结题

在oj上提交没过,请解答

#include<stdio.h>
#include<string.h>
int main()
{
char a[200],s[200];
gets(a),gets(s);
int k,i,j=0,b=0,l1=strlen(a),l2=strlen(s);
if(l1<l2)
{
for(i=0;i<l2;i++)
{
if(a[j]==s[i])
{
for(k=1;k<l1;k++)
{
if(a[j+k]==s[i+k])
{
b=1;
}
else
{
b=0;
break;
}
}
}
if(b==1) break;
}
if(b==1) printf("%s is substring of %s",a,s);
else printf("No substring");
}
if(l1>l2)
{
for(i=0;i<l1;i++)
{
if(s[j]==a[i])
{
for(k=1;k<l2;k++)
{
if(s[j+k]==a[i+k])
{
b=1;
}
else
{
b=0;
break;
}
}
}
if(b==1) break;
}
if(b==1) printf("%s is substring of %s",s,a);
else printf("No substring");
}

if(l1==l2) printf("%s is substring of %s",s,a);

}
输入两个字符串,验证其中一个串是否为另一个串的子串。

输入格式
输入两个字符串, 每个字符串占一行,长度不超过 200200 且不含空格。

输出格式
若第一个串 s_1s
1

是第二个串 s_2s
2

的子串,则输出"(s1) is substring of (s2)";

否则,若第二个串 s2是第一个串s1的子串,输出"(s2) is substring of (s1)";

否则,输出"No substring"。

Sample Input
abc
dddncabca
Sample Output
abc is substring of dddncabca

  • 写回答

2条回答 默认 最新

  • fuill 2022-01-09 00:39
    关注

    img


    最后面那个字符串长度相等怎么就是子串了?
    最后面的if改为

    else if(l1==l2)
        {
            if(strcmp(a,s)==0)
                printf("%s is substring of %s",s,a);
            else
                printf("No substring");
        }
    }
    
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月2日
  • 创建了问题 1月8日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀