您好,登錄后才能下訂單哦!
要檢查C語言字符串是否為回文,可以使用雙指針方法
#include<stdio.h>
#include<string.h>
int is_palindrome(char *str) {
int start = 0;
int end = strlen(str) - 1;
while (start < end) {
if (str[start] != str[end]) {
return 0; // 不是回文
}
start++;
end--;
}
return 1; // 是回文
}
int main() {
char str[100];
printf("請輸入一個字符串: ");
fgets(str, sizeof(str), stdin);
// 去除換行符
str[strcspn(str, "\n")] = '\0';
if (is_palindrome(str)) {
printf("這是一個回文字符串\n");
} else {
printf("這不是一個回文字符串\n");
}
return 0;
}
在此示例中,我們首先從用戶那里獲取輸入的字符串。然后,我們調用is_palindrome()
函數來檢查字符串是否為回文。該函數使用兩個指針,一個從字符串的開頭開始,另一個從字符串的結尾開始。我們將這兩個指針所指向的字符進行比較。如果它們不相等,則說明該字符串不是回文。如果在遍歷過程中沒有發現不相等的字符,那么該字符串就是回文。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。