編寫代碼,以檢查是否s2
是隻使用一個呼叫isSubString
的s1
轉動(即waterbottle
是erbottlewat
旋轉)。旋轉的字符串
我寫這個程序,但我無法得到所需的輸出。請指導我哪裏出錯。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int isRotated(char *s1, char *s2);
int isSubstring(char *s1, char *s2);
int isRotated(char *s1, char *s2)
{
int r;
char s[100];
if(strlen(s1) == strlen(s2))
strcpy(s, s1);
r = isSubstring(s, s2);
strcat(s, s1);
return r;
}
int isSubstring(char *s1, char *s2){
if(strstr(s1, s2))
return 1;
else
return 0;
}
int main(void) {
char s1[100], s2[100];
printf("Enter the first String\n");
scanf("%s", s1);
printf("Enter the second String\n");
scanf("%s", s2);
if(isRotated(s1, s2)==1)
printf("%s and %s are rotated string\n", s1, s2);
else
printf("%s and %s are not rotated string\n", s1, s2);
return 0;
}
什麼是STrings' ????? –
「你期望的輸出」究竟是什麼意思?你得到了什麼?錯誤消息? –
如果兩個字符串有不同的長度,'s'是未初始化的,這意味着'isSubString'和'strcat'可能在未正確終止的字符串上運行。 –