C语言查找同构数:1~999之间
C语言查找同构数:1~999之间
本文将介绍如何使用C语言编写程序,查找并打印1到999之间的所有同构数。同构数是指一个数出现在其平方数的右侧,例如25的平方是625,25出现在625的右侧,所以25就是一个同构数。
以下是完整的C语言代码:
#include <stdio.h>
int main() {
printf('Print all the isomorphism between 1-999:\n');
for (int i = 1; i <= 999; i++) {
int square = i * i;
int temp = i;
int found = 0;
// 检查i是否出现在其平方数的右侧
while (square != 0) {
if (square % 10 == temp % 10) {
found = 1;
break;
}
square /= 10;
}
if (found) {
printf('%d ', i);
}
}
return 0;
}
代码解释:
for循环遍历1到999之间的所有整数。- 对于每个整数
i,计算其平方值square。 - 使用
while循环和取模运算符%,依次比较square和i的个位数字,判断i是否出现在square的右侧。 - 如果
i出现在square的右侧,则设置found标志为1,并跳出循环。 - 如果
found标志为1,则打印i,表示它是一个同构数。
运行以上代码,将会打印出1到999之间的所有同构数。
原文地址: https://www.cveoy.top/t/topic/Qce 著作权归作者所有。请勿转载和采集!