判断m为素数#include<stdio.h> #include<math.h> main() { int m,i,k; scanf("%d",&m); k=; for(i=2;i<=k;i++) if(m%i==0); if() printf("%d is a prime number\n", ); else printf("%d is a prime number\n",m); }
时间: 2023-11-20 09:10:15 浏览: 94
c代码-判断这个数是什么数
这段代码存在一些问题,我帮你解决一下:
1. 变量 k 没有赋值,应该将其赋值为 m 的平方根,即 k = sqrt(m)。
2. if 语句后面的分号会导致 if 语句没有任何作用,应该将分号删掉。
3. 缺少 if 语句的条件判断,应该判断 i 是否等于 m,如果相等则说明 m 是素数,否则说明 m 不是素数。
修改后的代码如下:
```
#include<stdio.h>
#include<math.h>
int main() {
int m, i, k;
scanf("%d", &m);
k = sqrt(m);
for (i = 2; i <= k; i++) {
if (m % i == 0) {
break;
}
}
if (i > k) {
printf("%d is a prime number\n", m);
} else {
printf("%d is not a prime number\n", m);
}
return 0;
}
```
这段代码可以判断给定的整数 m 是否为素数。
阅读全文