回文
用c语言求一个字符串是否为回文。
解析:顺读和倒读都一样的字符串称为“回文”,如kayak,rotator等。
算法:比较第一个字母和最后一个字母,比较第2个字母和倒数第2个字母...直到到达字符串中间时停止。
好的!下面是一个简单的C语言程序来判断一个字符串是否为回文:
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str) {
int length = strlen(str);
int i, j;
for (i = 0, j = length - 1; i < j; i++, j--) {
if (str != str) {
return 0; // 不是回文
}
}
return 1; // 是回文
}
int main() {
char str;
printf("请输入一个字符串:");
scanf("%s", str);
if (isPalindrome(str)) {
printf("%s是回文\n", str);
} else {
printf("%s不是回文\n", str);
}
return 0;
}
这个程序首先会读取用户输入的字符串,然后调用`isPalindrome`函数来判断它是否为回文。在`isPalindrome`函数中,我们使用两个指针分别指向字符串的开头和结尾,从两端开始比较字符是否相同。如果有任意一对字符不相同,就说明字符串不是回文,返回0;如果所有对字符都相同,说明字符串是回文,返回1。
希望这个程序能帮到你!如果有任何问题,请随时问我!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]