c语言编程统计5000到8000之间的各位数字之积是一平方数的整数个数
时间: 2023-12-03 17:46:44 浏览: 33
以下是一个 C 语言程序,可以计算出5000到8000之间的各位数字之积是一平方数的整数个数:
```c
#include <stdio.h>
#include <math.h>
int main() {
int count = 0;
for (int i = 5000; i <= 8000; i++) {
int product = 1;
int n = i;
while (n > 0) {
int digit = n % 10;
product *= digit;
n /= 10;
}
int root = sqrt(product);
if (root * root == product) {
count++;
}
}
printf("There are %d integers between 5000 and 8000 whose digits multiply to a perfect square.\n", count);
return 0;
}
```
这个程序首先使用一个循环来遍历5000到8000之间的所有整数。对于每个整数,它将各位数字相乘,然后计算其平方根。如果平方根是一个整数,则将计数器增加1。最后,程序输出计数器的值,即满足条件的整数的数量。
注意,这个程序假设输入的整数不会超过8位数,如果输入的整数超过了8位数,需要对程序进行修改。