c语言:5. 编程判断输入的任意整数m是否为素数。(素数只能被1和它本身整除,没有其它约数)

如题所述

采用的算法如下:让m被2和k除,如果m能被2~k之中的任何一个整数整除,则提前结束循环;否则,完成最后一次循环后,i加1,然后终止循环。
#include<stdio.h>
#include<math.h>
void main()
{
int m,i,k;
scanf("%d",&m);//m为输入的一个数
k=sqrt(m); //k是m的根号取整
for (i=2;i<=k;i++)
if (m%k==0) break;
if (m>k) printf("%d 是一个素数\n",m);
else printf("%d 不是一个素数\n",m);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-13

    #include <stdio.h>

    int main()

    {int i, num=0;  

    printf("输入一个整数:");

    scanf("%d",&num);

    for(int i=2;i<num;i++)

    if num%i==0;

    printf('%d是素数’,num)

    else

    printf(‘%d不是素数’,num)

    }

第2个回答  2022-05-29
#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("m is a prime number!\n");
else printf("m is not a prime number!\n");
}