用c++编写程序,其中函数f用来判断字符串是否为"回文串",即从前向后读或从后向前读是一样的(默认长度为0、1的字符串是"回文串")。
时间: 2024-05-01 21:18:22 浏览: 52
下面是一个用C语言编写的判断字符串是否为回文串的程序:
```c
#include <stdio.h>
#include <string.h>
int f(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 (f(str)) {
printf("是回文串\n");
} else {
printf("不是回文串\n");
}
return 0;
}
```
程序中的函数`f`接受一个字符串指针`str`作为参数,返回值为`1`表示该字符串是回文串,返回值为`0`表示该字符串不是回文串。程序中首先计算字符串的长度,然后从字符串的两端开始向中间扫描,比较对应位置的字符是否相同,如果有不同的字符则说明该字符串不是回文串,返回`0`;否则扫描完成后返回`1`表示该字符串是回文串。在主函数中读入一个字符串,调用函数`f`判断该字符串是否是回文串,输出结果。
阅读全文