判断字符是否是回文 “回文”是一种顺序读和反序读都一样的字符串,例如:“121”“abcba” “ABCCBA”编写程序,判断任一字符串是否为回文。 相关知识 通过指针来传递参数 c语言
时间: 2023-10-22 18:05:03 浏览: 137
程判断输入的一串字符是否为“回文”。所谓“回文”是指顺序读和逆序读都一样的字符串。如:“12321”和“abcdcba”都是回文。
好的,以下是一个C语言的判断字符串是否为回文的程序,使用指针来传递参数:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str) {
int len = strlen(str);
for(int i = 0; i < len / 2; i++) {
if(str[i] != str[len - i - 1]) {
return 0;
}
}
return 1;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
if(isPalindrome(str)) {
printf("%s是回文字符串\n", str);
} else {
printf("%s不是回文字符串\n", str);
}
return 0;
}
```
这个程序首先定义了一个`isPalindrome`函数,用来判断传入的字符串是否为回文字符串。这个函数使用了指针来传递参数,即`char *str`表示传入的是一个字符串的首地址。
在函数内部,首先使用`strlen`函数计算出字符串的长度,然后使用一个循环来遍历字符串的前一半,判断每个字符是否与对应位置的字符相同。如果有不同的字符,则返回0,表示不是回文字符串。如果遍历完了整个字符串,都没有发现不同的字符,则返回1,表示是回文字符串。
在`main`函数中,读入一个字符串,然后调用`isPalindrome`函数来判断它是否为回文字符串,最后输出判断结果。
阅读全文