知识点
(1)C语言不允许函数嵌套定义。解决办法就是将函数放到外面定义。
(2)C语言里没有bool型true,false。需要自己定义
#define bool int
#define true 1
#define false 0
或者使用头文件stdbool.h。
题目
判断一个整数是否是回文数。
代码
#include<stdio.h>
#define bool int
#define false 0
#define true 1
bool isPalindrome(int x){
if(x<0||x!=0&&x%10==0) return false; //负数或者个位数为0
int sum=0; //记录逆转的一半
while(x>sum){
sum=sum*10+x%10;
x/=10;
}
return x==sum||x==sum/10; //包含数字位数是奇数和偶数的两种情况
}
int main(){
int a,x;
scanf("%d",&x);
a=isPalindrome(x);
printf("%d\n",a);
}