C语言编写函数,判断一个字符串是否是回文。若是回文函数返回值为1,否则返回
来源:百度知道 编辑:UC知道 时间:2024/05/22 16:26:41
编写函数,判断一个字符串是否是回文。若是回文函数返回值为1,否则返回值为0。回文是顺读和倒读都一样的字符串。
要求:在主函数中完成:输入要判断的字符串,调用函数,输出“yes”或“no”。
要求:在主函数中完成:输入要判断的字符串,调用函数,输出“yes”或“no”。
#include <stdio.h>
#include <string.h>
#define IS_PALINDROME 1
#define IS_NOT_PALINDROME 0
#define STR_YES "yes"
#define STR_NO "no"
#define MAX_SIZE 80
int isPalindrome(char str[]);
int main()
{
char str[MAX_SIZE + 1];
printf("请输入一个字符串:\n");
/* 获取用户输入的字符串 */
gets(str);
/* 判断是否回文并输出相应信息 */
if (isPalindrome(str) == IS_PALINDROME)
{
printf(STR_YES);
}
else
{
printf(STR_NO);
}
return 0;
}
/*
判断给定字符串是否为回文
str——待判断的字符串
如果str是回文,返回1;否则返回0
*/
int isPalindrome(char str[])
{
int length = 0; /* 字符串长度 */
int i = 0;
/*
如果字符串长度为0或负值,则认为它不是回文;
否则,将首尾对应的字符进行比较:
——如果有任意一组对应的字符不相等,则认为它不是回文;
——否则认为是回文.
*/