任务描述
本关任务:编写一个程序,判定用户输入的正整数是否为"回文数"。所谓"回文数"是指正读反读都相同的数。
相关知识
为了完成本关任务,你需要掌握:
- 数组定义;
- 如何遍历数组。
数组定义
通常一维数组的定义方法为: 类型说明符 数组名[常量表达式]
; 例如:int a[5];
它表示定义了一个整型数组,数组名为 a,定义的数组称为数组 a。数组名 a 除了表示该数组之外,还表示该数组的首地址;此时数组 a 中有 5 个元素,每个元素都是 int 型变量,而且它们在内存中的地址是连续分配的。也就是说,int 型变量占 4 字节的内存空间,那么 5 个int型变量就占 20 字节的内存空间,而且它们的地址是连续分配的。 在定义数组时,需要指定数组中元素的个数。方括号中的常量表达式就是用来指定元素的个数,数组中元素的个数又称数组的长度。 注:数组中的下标是从 0 开始的(而不是 1)。 为什么下标是从 0 开始而不是从 1 开始呢?如果从 1 开始,那么数组的第 5 个元素就是 a[5],而定义数组时是 int a[5],两个都是 a[5] 就容易产生混淆。而下标从 0 开始就不存在这个问题了!所以定义一个数组 a[n],那么这个数组中元素最大的下标是 n–1;而元素 a[i] 表示数组 a 中第 i+1 个元素。
如何遍历数组
C 语言中数组遍历的三种常用方法,分别是 for 循环、while 循环和 do-while 循环。使用这些方法可以方便地遍历数组中的每个元素,从而进行相应的操作。
编程要求
根据提示,在右侧编辑器 Begin-End 内补充代码,判断输入整数是否为回文数。
测试说明
平台会对你编写的代码进行测试:
测试输入:12321
; 预期输出: 1
测试输入:5567
; 预期输出: 0
开始你的任务吧,祝你成功!
参考代码:
#include <stdio.h>
#include<string.h>
int main()
{
//=======begin=======
int a,temp,n;
int sum=0;
scanf("%d",&n);
temp=n;
while (temp!=0)
{
a=temp%10;
temp=temp/10;
sum=sum*10+a;
}
if (sum==n)
printf("1");
else
printf("0");
//========end========
return 0;
}