输入一个不超过10位的正整数,判断该数是否是回文数(回文数:数字对称,如12321, 123321 是回文数)
使用取模运算符%
获取变量a
的个位数,并将其赋值给变量p
。
将变量s
乘以10,再加上变量p
的值,得到新的反转数字,并将其赋值给变量s
。
使用整除运算符/
将变量a
除以10,去掉个位数,并将结果赋值回变量a
。
重复执行步骤1-3,直到变量a
等于0为止。
判断变量n
和变量a
是否相等,如果相等则输出该数字是回文数,否则输出不是回文数
int main() {
int n, s = 0, p;
printf("请输入一个正整数: ");
scanf("%d", &n);
int a = n;
while (a != 0) {
p = a % 10;
s = s * 10 + p;
a /= 10;
}
if (n == s)
printf("%d 是回文数。", n);
else
printf("%d 不是回文数。", n);
return 0;
}
输出结果: