c语言推断数是否是素数

这是推断数是否是素数。网络版非常。我觉得有点问题。今天一个朋友问我这个问题。我知道,今天,我把自己的代码,非常实用哦!。

#include<stdio.h>

#include<math.h>

int Prime(unsigned int a)

{

unsigned int i;

int k=0;

if (a==1) k=1;

else for(i=2;i<sqrt(a);i++)

if(a%i==0)

{

k=1;

break;

}

return k;

}

int main()

{

int n;

printf("请输入你要推断的数字:");

scanf("%d",&n);

if (Prime(n))

printf("No\n");

else

printf("Prime\n");

return 0;

}

版权声明:本文博客原创文章,博客,未经同意,不得转载。

时间: 2024-12-28 14:33:06

c语言推断数是否是素数的相关文章

代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

package com.heima.Coding; /* 判断101-200之间有多少个素数(质数),并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数.*/ public class Test { public static void main(String[] args) { int count = 0; for (int i = 100; i < 200; i++) { for (int j = 2; j <=

c语言判断一个数是不是素数

#include <stdio.h> #include <math.h> int main() { // 输入一个整数数判断是不是素数 // 方法是用这个数去除2到根号num这些数如果为0则不是素数 int m,i,k; printf("请输入一个整数:"); scanf("%d",&m); k=(int)sqrt(m); for(i=2;i<=k;i++) if(m%i==0) break; if(i>k) printf

c语言输出2~100的素数

这个代码很巧妙,个人的理解都写在了注释里 #include <stdio.h> #include <stdlib.h> #include <math.h> //相关的论文:[1]张景龙,黄静,王爱松等.素数判定算法的改进[J].河南科技学院学报(自然科学版),2013,(6):61-64.DOI:10.3969/j.issn.1008-7516.2013.06.015. //输出100以内的素数,思路: //判断素数方法1: //假如自然数N不是素数,则除1和其本身之外

C语言 &#183; 打印1-200之间的素数

素数定义:除了1和本身再无其他整数可被其本身整除的数称为素数,也称质数. 举一例子打印出1-200之间所有的素数: #include<stdio.h> #include<math.h>int main(){ int m,i,k,h=0,leap=1; for(m=1;m<=200;m++){  k=sqrt(m+1);//只是用来确定循环次数的   for(i=2;i<=k;i++)   if(m%i == 0){    leap=0;    break;   }  i

判断一个大于1的数是不是一个素数

#include<stdio.h>#include<math.h> int main(){    int i,n,r,ret;    printf("请输入一个大于1的数:\n");    scanf("%d",&n);    r=sqrt(n);    for(i=2;i<=r;i++)    {       if(n%i==0)         {             ret=0;             break; 

李洪强-C语言5-函数

C语言函数 一.函数 C语言程序是由函数构成的,每个函数负责完成一部分的功能,函数将工恩呢该封装起来,以供程序调用. 二.函数定义 目的:将一些常用的功能封装起来,以供日后调用. 步骤:确定函数名,确定函数体,调用 格式:返回值类型 函数名(形式参数列表) {  函数体 } 三.函数调用 定义函数需要明确定的东西: ①. 取一个有意义的函数名 ②. 确定函数的形参 ③. 编写函数体 ④. 返回值 示例: Int average(int num1,int num2) { Return  (num1

判断大于二的数是否为素数

法一:当输入的数值n不大时,用输入的数n除以2-(n-1) #include <stdio.h> #include <stdlib.h> int main() { int n,i,flag=0; scanf("%d",&n); for(i=2;i<n;i++) { if(n%i==0) { flag++; } } if(flag==0) printf("%d 是素数\n",n); else printf("%d 不是素

python3判断输入的数是否为素数

首先,需要明确什么是素数? 素数:又称质数,指在大于1的自然数中,除了1和该数本身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数). 举个例子:5---除了能被1或5整除外,再也找不到第三个可以整除它的自然数了.那么5就是素数. 那么,如果用程序如何来判断它是不是素数? 实现思路: 1 需要先输入一个被判断的数字并赋值给 Number 2 判断这个数符不符合“Number > 1”的规则,如果不符合就结束循环,如果符合就去检验是不是素数 3 如果能被1到Number之间的任

C语言 &#183; 排列数

算法提高 排列数 时间限制:1.0s   内存限制:256.0MB 问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一个数n 求0~9十个数的全排列中的第n个(第1个为0123456789). 输入格式 一行,包含一个整数n 输出格式 一行,包含一组10个数字的全排列 样例输入 1 样例输出 0123456789 数据规模和约定 0 < n <= 10! 1 #include<stdio.h> 2 #includ