题目背景
《C/C++简明双链教程》
题目描述
所谓自守数(也称守形数),是指其平方数的低位部分恰为该数本身的自然数。例如:252
=625,其中25等于625的低位部分,因此25是自守数。(注:0 和 1 也算自守数。)
输入格式
一个正整数a,a≤10000
输出格式
true或false
样例 1
样例输入 1
25
样例输出 1
true
样例代码
由题目可知,首先将0和1的特殊情况单独列出,再考虑其他情况
#include<stdio.h>
int main()
{
int a,s,b;
scanf("%d",&a);
s=a*a;
if(a==0||a==1)
printf("true");
else
for(b=10;b<=s;b=b*10)
{if(s%b==a)
{printf("true");
break;}
}
if(b>=s)
printf("false");
}