用c语言统计完全平方数
时间: 2024-03-13 12:35:12 浏览: 14
完全平方数是指能表示为某个整数的平方的数,例如 1、4、9、16、25 等。我们可以用 C 语言编写一个程序来统计一定范围内的完全平方数。
下面是一个示例代码:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int n, count = 0;
printf("请输入一个正整数 n:");
scanf("%d", &n);
for (int i = 1; i <= sqrt(n); i++) {
if (i * i <= n) {
count++;
}
}
printf("在区间 [1, %d] 中,共有 %d 个完全平方数。\n", n, count);
return 0;
}
```
该程序首先让用户输入一个正整数 n,然后使用 for 循环从 1 开始枚举所有小于等于 n 的正整数,对于每个数,判断它是否是完全平方数,如果是,计数器 count 加 1。最后输出结果。
其中,判断一个数是否为完全平方数可以使用平方根函数 sqrt(),如果一个数 x 是完全平方数,则 sqrt(x) 的结果一定是整数。因此,我们可以将循环条件设置为 i <= sqrt(n),并在循环体中判断 i * i 是否小于等于 n。如果是,说明 i 是小于等于 n 的完全平方数,计数器 count 加 1。
需要注意的是,该程序只能统计小于等于 n 的完全平方数数量,如果要统计任意区间内的完全平方数数量,需要对程序进行一些修改。