题目内容:
编写程序,找出1~99之间的全部同构数。若一个数出现在它的平方数的右边则称它是同构数。例如:若5^2=25,则5是一个同构数。再如,若25^2=625,则25是一个同构数。
输入格式: 无
输出格式: "m=%3d\t\tm*m=%6d\n"
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
时间限制:500ms内存限制:32000kb
方法一:
#include <stdio.h>
int main()
{
int m,n ;
for (m=1; m<10; m++)
{
n = m*m;
if (n%10 == m)
printf("m=%3d\t\tm*m=%6d\n", m, n);
}
for (m=10; m<100; m++)
{
n = m*m;
if (n%100 == m)
printf("m=%3d\t\tm*m=%6d\n", m, n);
}
return 0;
}
方法二:
#include <stdio.h> int main() { int m, n, a; for (m=1; m<=99; m++) { n = m*m; if (m < 10) a=10; else a=100; if (n%a == m) printf("m=%3d\t\tm*m=%6d\n", m, n); } return 0; }