#include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX 80 //函数声明 int palindrome(const char *str); int main() { //初始化 char str[MAX],ch; do { printf("请输入一个字符串:"); gets(str); if(palindrome(str)) printf("这是一个回文数~\n"); else printf("这不是一个回文数QAQ\n"); printf("是否继续?(y/n)"); ch=getchar(); getchar(); //吃掉回车,防止干扰 while(ch!='y' && ch!='Y' && ch!='N' && ch!='n') { printf("error input\n"); printf("是否继续?(y/n)"); ch=getchar(); getchar(); } }while(ch!='N' && ch!='n'); printf("再见\n"); system("pause"); return 0; } //函数定义 int palindrome(const char *str) { int i=0,j=strlen(str)-1; while(i<j) { while(str[i]==32) //32是空格字符的代码 i++; while(str[j]==32) //跳过空格 j--; if(str[j]==str[i]) { i++; j--; } else return(0); //return 0表示函数的正常结束,return(0)表示函数异常终止 } return(1); }