C语言求素数的方法_用c语言求1~n的素数个数

C语言求素数的方法_用c语言求1~n的素数个数一、判断n是否能被2~n-1整除输入的数n不能被2-(n-1)整除,说明是素数输入的数n能被2-(n-1)整除,说明不是素数注意:1不是素数,素数是指大于1的自然数,除了1和该数自身外,无法被其他自然数整除的数。法一:#include<stdio.h>int main(){ int i, n; printf(“请输入一个数:”); scanf(…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、判断n是否能被2~n-1整除

输入的数n不能被2-(n-1)整除,说明是素数
输入的数n能被2-(n-1)整除,说明不是素数

注意:1不是素数,素数是指大于1的自然数,除了1和该数自身外,无法被其他自然数整除的数。

法一:


#include<stdio.h>
int main()
{ 
   
    int i, n;
    printf("请输入一个数:"); 
    scanf("%d", &n);
    for (i = 2; i < n ; i++)
    { 
   
        if (n%i == 0)
            break;
    }
    if (n <=1 ) printf("这不是素数\n");
    else  if (i < n) printf("这不是素数\n"); 
    else printf("这是素数\n");
    return 0;
 
}

法二:

#include<stdio.h>
int main()
{ 
   
    int i, n;
    printf("请输入一个数:"); 
    scanf("%d", &n);
    if(n<=1)
        printf("这不是素数\n");
    else
        { 
   
        for (i = 2; i < n ; i++)
	    { 
   
             if (n%i == 0)
             break;
	     }
         if(i>=n)
	        printf("这是素数\n");
         else
	        printf("这不是素数\n");
	  }
	 return 0;
}
 

二、判断n是否能被2~√n间的整数整除

输入的数n不能被2-√n整除,说明是素数
输入的数n能被2-√n整除,说明不是素数

方法一:

#include<stdio.h>
#include<math.h>
int main()
{ 
   
    int n,i;
    double k;
    printf("请输入一个数:"); 
    scanf("%d", &n);
    k = sqrt(n);
    for (i = 2; i <= k;i++)
    { 
   
        if (n%i == 0) break;
    }
    if (n <=1 ) printf("这不是素数\n");
    else if (i <= k) printf("这不是素数\n");
    else printf("这是素数\n");
    return 0;
 
}

方法二:

#include<stdio.h>
#include<math.h>
int main()
{ 
   
    int n,i,k;
    printf("请输入一个数:"); 
    scanf("%d", &n);
    if(n<=1)
        printf("这不是素数\n");
    else
    { 
   
        k=sqrt(n);
        for (i=2;i<=k;i++)
        { 
   
            if (n%i==0)
            break;
        }
        if(i>=k+1) 
            printf("这是素数\n");	
        else 
            printf("这不是素数\n");
    }
    return 0; 
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170965.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 批量梯度下降法(BGD)、随机梯度下降法(SGD)和小批量梯度下降法(MBGD)

    批量梯度下降法(BGD)、随机梯度下降法(SGD)和小批量梯度下降法(MBGD)梯度下降法作为机器学习中较常使用的优化算法,其有着三种不同的形式:批量梯度下降(BatchGradientDescent)、随机梯度下降(StochasticGradientDescent)以及小批量梯度下降(Mini-BatchGradientDescent)。其中小批量梯度下降法也常用在深度学习中进行模型的训练。接下来,我们将对这三种不同的梯度下降法进行理解。  为了便于理解,…

    2025年10月22日
    3
  • 二阶有源滤波器设计

    二阶有源滤波器设计1引入为什么要用有源二阶滤波器?(1)从有源来说对于无源二阶低通滤波器:其幅頻方程为:我们从中可以看出其通带截止频率为有其品质因子为0.372。我们根据上图得到二阶无源低通滤波器的品质因子只有0.372,如果希望Q大于0.5,就需要在ω=ωo附近增大幅度响应。实现这个目的的一种方法就是增加一个可控的正反馈控制量,这种反馈仅仅在ω=ωo附近奏效,参见下…

    2022年5月4日
    56
  • ALERT! UUID=xxxxxxxxx does not exist. Dropping to a shell!

    ALERT! UUID=xxxxxxxxx does not exist. Dropping to a shell!ALERT!UUID=xxxxxxxxxdoesnotexist.Droppingtoashell!文章目录ALERT!UUID=xxxxxxxxxdoesnotexist.Droppingtoashell!问题描述我的解决过程写在最后问题描述ubuntu18.04非正常关机后打不开了,先是黑屏显示:ACPIError:Needtype[Refe…

    2022年8月22日
    7
  • window.top.location.href 和 window.location.href 的区别

    window.top.location.href 和 window.location.href 的区别

    2021年10月9日
    45
  • 随笔:近期仍在流行的QQ盗号网页简析「建议收藏」

    随笔:近期仍在流行的QQ盗号网页简析「建议收藏」前言:被盗号的人们,你们的防护意识有那么弱吗?声明:本文提到的技术,仅可用作网络安全加固等合法正当目的。本文作者无法鉴别判断读者阅读本文的真实目的,敬请读者在本国法律所允许范围内阅读本文,读者一旦因非

    2022年7月3日
    230
  • Java学习网站推荐

    Java学习网站推荐学习Java不仅依靠自身的努力,还要多看一些相关技术文档,那么必不可少的就是学习Java的网站,本人整理收集一些Java学习网站,这些网站可以提供一些最新Java的资料,有时定期开设讲座等线下活动,而且里面的一些Java相关的问题以及讨论,不仅适用于Java小白程序员,而且还适用于一些Java大神,其实外网有很多比较专业的Java学习网站,但是鉴于为Java小白推荐网站,立足当下!!!所以推…

    2022年5月14日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号