若正整数A恰好出现在其平方数的右侧,则称A为一个同构数。如:5,6,76。求100以内的所有同构数。要求:程序文件名为isomorph.c(1)编写一子函数int fun(int n),判断给定正整数n是不是同构数,若是,返回1,否则,返回0。(2)编写主函数,调用函数fun(),寻找并输出100以内的所有同构数。(3)在输出同构数的同时,要输出其平方的值。 输出示例:1 15 256 3625 62576 5776
1 回答
留得枯荷听雨声lyx
TA贡献51条经验 获得超16个赞
#include<stdio.h> int fun(int n){ int nn =n*n; int a=nn%10; //因为100以内的数如果是同构数的话,要么是平方的右一位或者右二位 int b=nn%100; if(a==n||b==n){ return 1; } else return 0; } int main(){ for(int i=1;i<100;i++){ if(fun(i)){ printf("%d %d\n",i,i*i); } } }
- 1 回答
- 0 关注
- 2053 浏览
添加回答
举报
0/150
提交
取消