注册 登录
编程论坛 C语言论坛

C哪里错啦这是 一个题目复制过来的

JJGA 发布于 2021-10-11 15:51, 1095 次点击
main()
{
    int m, i ,k;
scanf(“%d”,&m);
k=sqrt(m+1);
for(i=2; i<=k; i++)
        if(m%i = = 0)
            break;
if( i >= k+1)
printf(“%d is a prime number\n”,m);
else
printf(“%d is not a prime number\n”,m);
  }
程序运行,输入99,输出结果为:
0 回复
#2
自由而无用2021-10-11 16:20
//online parser: https://www.bccn.net/run/
程序代码:
#include <stdio.h>
#include <math.h>

int main(int argc, char *argv[])
{
    int m, i ,k;
   
    for (m = 0; m <= 125; m++) {
        for (i = 2, k = sqrt(m + 1); i <= k; i++)
            if(m % i == 0) break;
        if (i >= k + 1)
            printf("%d is a prime number\n", m);
        else
            printf("%d is not a prime number\n", m);
    }
   
    return 0;
}


output sample:
0 is a prime number
1 is a prime number
2 is a prime number
3 is a prime number
4 is not a prime number
5 is a prime number
6 is not a prime number
7 is a prime number
8 is not a prime number
9 is not a prime number
10 is not a prime number
11 is a prime number
12 is not a prime number
13 is a prime number
14 is not a prime number
15 is not a prime number
16 is not a prime number
17 is a prime number
18 is not a prime number
19 is a prime number
20 is not a prime number
21 is not a prime number
22 is not a prime number
23 is a prime number
24 is not a prime number
25 is not a prime number
1