1. 程式人生 > 其它 >0044 編寫一個程式,輸入一串字串,以回車結束,判斷該字串是否是迴文串,如“abcddcba”是迴文串,即正讀反讀相同的串

0044 編寫一個程式,輸入一串字串,以回車結束,判斷該字串是否是迴文串,如“abcddcba”是迴文串,即正讀反讀相同的串

問題描述:

  編寫一個程式,輸入一串字串,以回車結束,判斷該字串是否是迴文串,如“abcddcba”是迴文串,即正讀反讀相同的串

程式碼展示:

 1 #include<stdio.h>
 2 #include<string.h>
 3 int isHuiWen(char str[], int n);
 4 int main(){
 5     char str[100];
 6     int len,result;
 7     printf("請輸入字串:");
 8     scanf("%s",&str);
 9     len = strlen(str);
10 result = isHuiWen(str,len); 11 if(result == 1){ 12 printf("該字串是迴文序列"); 13 }else{ 14 printf("該字串不是迴文序列"); 15 } 16 return 0; 17 } 18 int isHuiWen(char str[], int n){ 19 int result; 20 int i=0,j=n-1; 21 22 while((str[i]==str[j]) && (i<=n/2) && (j>=n/2
)){ 23 i++;j--; 24 } 25 if((i-2) == j || (i-1)== j){ //奇數個字元和偶數個字元的兩種情況 26 return 1; 27 }else{ 28 return 0; 29 } 30 }

執行截圖: