字符串以爲包含問題

  char src[] = "AABBCD";
  char des[] = "CDAA";

如上兩個字符串,則輸出true

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

int main(){
  char src[] = "AABBCD";
  char des[] = "CDAA";

  int len = strlen(src);
  for(int i = 0; i < len; i++){
    char tempchar = src[0];
    for (int j = 0; j < len-1;j++)
      src[j] = src[j+1];
    src[len-1] = tempchar;
    if(strstr(src, des)  == 0)
    {
        printf("true");
      return (true);

    }
  }
  return false;
}

利用了string.h中的strstr函數
功 能: 在串中查找指定字符串的第一次出現
用 法: char *strstr(char *str1, char *str2);
說明:返回指向第一次出現str2位置的指針,如果沒找到則返回NULL。

解法二:
對循環移位之後的結果進行分析!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章