分数 15
全屏浏览题目
切换布局
作者 袁恩
单位 中国人民解放军陆军工程大学
所谓自守数(也称守形数),是指其平方数的低位部分恰为该数本身的自然数。例如:25*25=625, 因此 25 是自守数。
注:0 和 1 也算自守数。
编写程序输出指定范围内的自守数,没有的话输出None。
函数接口定义:
判断x是否为自守数: int IsAutomorphic(int x); 输出在lower和upper区间内的自守数,没有输出None: void FindAutomorphic(int lower, int upper);
其中 x
是用户传入参数,它需要被判断的数。lower
和 upper
都是用户传入的参数。 FindAutomorphic程序输出[lower, upper]区间内的自守数。
裁判测试程序样例:
#include <stdio.h> int IsAutomorphic(int x); void FindAutomorphic(int lower, int upper); int main() { int a, b; scanf("%d%d", &a, &b); FindAutomorphic(a, b); return 0; } /* 请在这里填写答案 */
输入样例:
10 100
输出样例:
25
76
输入样例:
400 500
输出样例:
None
int IsAutomorphic(int x){
if(x==1||x==0)
return 1;
int y=x*x;
if(y%100000==x||y%10000==x||y%1000==x||y%100==x||y%10==x)
return 1;
else
return 0;
}
void FindAutomorphic(int lower, int upper){
int count=0;
for(int i=lower;i<=upper;i++){
if(IsAutomorphic(i))
printf("%d\n",i);
count++;
}
if(count==0)
printf("None\n");
}