6.14 判别一个字符串是否是另外一个字符串的子串。如果是则输出第一次出现的位置。

测试用例:

字符串add在addnumber的第0个字符出现

字符串add#不是字符串addnumber的子串

字符串add在jsdfaddnumber的第4个字符出现

#include<stdio.h>
#include<string.h>

int main(void)
{
  char s[100] = { '\0' };
  printf("输入主字符串:\n");
  scanf("%s", s);
  char n[100] = { '\0' };
  printf("输入需要判别的字符串:\n");
  scanf("%s", n);
  int i = 0;
  int flag = 0;
  while (s[i] != '\0')
  {
    if (s[i] == n[0])
    {
      if (0 == strncmp(s + i, n, strlen(n)))
      {
        flag = 1;
        printf("字符串%s在%s的第%d个字符出现\n",n,s,i);
      }
    }
    i++;
  }
  if (0 == flag)
    printf("字符串%s不是字符串%s的字串\n",n,s);

  return 0;
}

 

说点什么

avatar

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

  Subscribe  
提醒