美文网首页
输入两个字符串string1和string2,检查在string

输入两个字符串string1和string2,检查在string

作者: Go_for_Google | 来源:发表于2018-06-03 18:39 被阅读0次

编写程序,输入两个字符串string1和string2,检查在string1中是否包含有string2,
如果有,则输出string2在string1中的起始位置;如果没有,则显示“NO”;如果string2在
string1中多次出现,则输出在string1中出现的次数以及每次出现的起始位置,例如:
string1="the day the month the year";
string2="the"
输出结果应为:出现三次,起始位置分别是:0,8,18。
又如:
string1="aaabacad"
string2="a"
输出结果应为:出现五次,起始位置分别是:0,1,2,4,6。
输入输出格式要求:
输入格式:string1回车string2回车
例如:
输入:the day the month the year回车the回车
输出:3times,0,8,18
输入:aaabacad回车a回车
输出:5times,0,1,2,4,6
输入:aaabacad回车e回车
输出:NO

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
        char s[100], t[100];
        int a[100];
        gets_s(s,100);
        gets_s(t,10);
        int i = 0, j = 0,m=0,times=0;
        while (s[i])
          {
               while (s[i + j] && t[j] && s[i + j] == t[j])
                    {
                             j++;
                     }
              if (t[j] == '\0')
                    {
                           a[m] = i;
                           m++;
                           times++;
                    }
               j = 0;
               i++;
        }
       if (m == 0)
       printf("NO");
       else
         {
                 printf("%dtimes", times);
                 for (int i = 0; i < m; i++) {
                          printf(",%d", a[i]);
                     }
          }
       system("pause");
       return 0;
}

相关文章

网友评论

      本文标题:输入两个字符串string1和string2,检查在string

      本文链接:https://www.haomeiwen.com/subject/rstssftx.html