怎么用c语言写判断素数

1.用C语言如何判断素数

材料/工具:visual C++ 6.0

1、打开visual C++ 6.0-文件

2、点击新建-文件-C++ Source File

3、输入预处理命令和主函数:

#include<stdio.h>; /*函数头:输入输出头文件*/

void main() /*空类型:主函数*/

4、定义变量并输入一个数字:

int m,i; /*定义变量的数据类型为整型*/

printf("输入一个数:"); /*输出文字提示*/

scanf("%d",&m); /*输入一个数字*/

5、用for函数和if函数判断是否是素数:

for(i=2;i<=m;i++) /*用for函数重复下面步骤*/

if(m%i==0) /*判断输入的数是否能被除1和本身以外的数整除*/

break;

if(i>m) /*判断i是否大于m*/

printf("%d 是素数\n",m); /*输出是素数*/

else

printf("%d 不是素数\n",m); /*输出不是素数*/

6、完整的源代码:

#include<stdio.h>; /*函数头:输入输出头文件*/

void main() /*空类型:主函数*/

{

int m,i; /*定义变量的数据类型为整型*/

printf("输入一个数:"); /*输出文字提示*/

scanf("%d",&m); /*输入一个数字*/

for(i=2;i<=m;i++) /*用for函数重复下面步骤*/

if(m%i==0) /*判断输入的数是否能被除1和本身以外的数整除*/

break;

if(i>m) /*判断i是否大于m*/

printf("%d 是素数\n",m); /*输出是素数*/

else

printf("%d 不是素数\n",m); /*输出不是素数*/

}

2.如何用c语言写出判断一个数是不是素数

判断一个整数m是否是素数,只需把m被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么m就是一个素数。思路1)的代码:

#include <stdio.h>

int main(){

int a=0; // 素数的个数

int num=0; // 输入的整数

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

scanf("%d",&num);

for(int i=2;i<num;i++){if(num%i==0){a++; // 素数个数加1}}

if(a==0){printf("%d是素数。\n", num);}else{printf("%d不是素数。\n", num);}return 0;}

判断方法还可以简化。m不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~ 之间的每一个整数去除就可以了。如果m不能被 2 ~ 间任一整数整除,m必定是素数。例如判别17是是否为素数,只需使17被2~4之间的每一个整数去除,由于都不能整除,可以判定17是素数。思路2)的代码:

#include <stdio.h>

#include <math.h>

void main(){int m; // 输入的整数

int i; // 循环次数

int k; // m 的平方根

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

scanf("%d",&m);

// 求平方根,注意sqrt()的参数为 double 类型,这里要强制转换m的类型

k=(int)sqrt( (double)m );

for(i=2;i<=k;i++)

if(m%i==0)

break;

// 如果完成所有循环,那么m为素数

// 注意最后一次循环,会执行i++,此时 i=k+1,所以有i>k

if(i>k)

printf("%d是素数。\n",m);

else

printf("%d不是素数。\n",m);

return 0;}

3.用C语言如何判断素数

所谓素数是指除了1和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被2~16的任一整数整除.因此判断一个整数m是否是素数,只需把m被2~m-1之间的每一个整数去除,如果都不能被整除,那么m就是一个素数另外判断方法还可以简化.m不必呗2~m-1之间的每一个整数去除,只需被2~√m之间的每一个整数去除就可以了.如果m不能被2~√m间任一整数整除,m必定是素数.例如判别17是是否为素数,只需使17被2~4之间的每一个整数去除,由于都不能整除,可以判定17是素数.(原因:因为如果m能被2~m-1之间任一整数整除,其二个因子必定有一个小于或等于√m,另一个大于或等于√m.例如16能被2,4,8整除,16=2*8,2小于4,8大于4,16=4*4,4=√16,因此只需判定在2~4之间有无因子即可)#include#includevoid main(){int m,i,k;printf("请输入一个整数:");scanf("%d",&m);k=(int)sqrt(m);for(i=2;ik)printf("%d 是素数.\n",m);elseprintf("%d 不是素数.\n",m);}。

4.编写一个C语言程序判断一个数是否是素数

1. 思路1:

判断一个整数m是否是素数,只需把m被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么m就是一个素数。代码如下:

#include <stdio.h>

int main(){

int a=0; // 素数的个数

int num=0; // 输入的整数

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

scanf("%d",&num);

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

if(num%i==0){

a++; // 素数个数加1

}

}

if(a==0){

printf("%d是素数。\n", num);

}else{

printf("%d不是素数。\n", num);

}

return 0;

}

2. 思路2:

另外判断方法还可以简化。m不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~ 之间的每一个整数去除就可以了。如果m不能被 2 ~ 间任一整数整除,m必定是素数。例如判别17是是否为素数,只需使17被2~4之间的每一个整数去除,由于都不能整除,可以判定17是素数。代码如下:

#include <stdio.h>

#include <math.h>

void main(){

int m; // 输入的整数

int i; // 循环次数

int k; // m 的平方根

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

scanf("%d",&m);

// 求平方根,注意sqrt()的参数为 double 类型,这里要强制转换m的类型

k=(int)sqrt( (double)m );

for(i=2;i<=k;i++)

if(m%i==0)

break;

// 如果完成所有循环,那么m为素数

// 注意最后一次循环,会执行i++,此时 i=k+1,所以有i>k

if(i>k)

printf("%d是素数。\n",m);

else

printf("%d不是素数。\n",m);

return 0;

}

5.C语言判断素数

按照你的程序凡是是奇数的都被判定为素数

for(i=2;i<n;i++)

{

a=n%i; //只要n是奇数,到最后必然a=1

}

有问题

按源程序作少许修改

#include <stdio.h>

int main()

{

int T,m;

int a=0;//定义为整型

scanf("%d",&m);

for(T=1;T<=m;T++)

{

int n,i;

scanf("%d",&n);

for(i=2;i<n;i++)

{

if(n%i==0) //如果能找到i将n整除,说明n不是素数,则让a与i相等,跳出循环

{

a=i;

break;

}

}

if (a==i)

printf("NO\n");

else

printf("YES\n");

}

return 0;

}

这种算法是比较浪费资源的,一般采用让判定数从1除到判定数的平方根取整,本题中只需要让1<=i<=(int)(i的平方根)就可以了。这样可以节约很多时间

6.用C语言编写一程序判断M是否为素数

#include <stdio.h>

void main

{

int n;

printf("请输入要判断的数:");

scanf("%d",&n);

for(int i=2;i<=n/2;i++)//用n对2到n/2的数一次求余,只要有一个余数为零就不是素数

if(n%i=0)

printf("%d不是素数\n",n);

printf(("%d是素数\n",n);

}

7.如何用c语言编写出判断一个数是否为质数的程序

#include

#include

//n不能够被不大于根号n的任何素数整除,则n是一个素数

//以下代码计算1000以内所有素数

int main()

{

int i,j,n = 1000,sq;

for(i = 2;i {

sq = sqrt(i);

for(j = 2;j {

if(!(i % j))

break;

}

if(sq printf("%4d",i);

}

putchar('\n');

return 0;

}

怎么用c语言写判断素数

转载请注明出处育才学习网 » 怎么用c语言写判断素数

知识

吴艳杰英语怎么写

阅读(215)

本文主要为您介绍吴艳杰英语怎么写,内容包括1000000的英语怎么说,以“Thespringfestival”为题写篇英语作文,123456789英语怎么写。1000000的英文:One millionmillion 读法 英 [mɪljən] 美 [mɪljən] n. 百万;无数2、adj

知识

外地上学要出生证明怎么写

阅读(209)

本文主要为您介绍外地上学要出生证明怎么写,内容包括外地务工人员孩子上学需要开证明范本,孩子有户口,没出生证明没有怎么办上学要出生证明,刚刚上学的小孩去外地上学要什么证明。可以申请医疗卫生部门签发或补发既可以,如果是之前出生的,申

知识

申请离校证明怎么写

阅读(238)

本文主要为您介绍申请离校证明怎么写,内容包括离校证明的格式是怎样的,离校证明如何写,离校证明怎么写。致: 公司: 我的身份是:______________________,具体见我的个人简历。 我申请到贵单位实习。就单位提供的与实习相关

知识

怎么写蜻蜓作文350字

阅读(211)

本文主要为您介绍怎么写蜻蜓作文350字,内容包括蜻蜓怎么飞的作文300至350字,蜻蜓怎么飞的作文300至350字,保护蜻蜓作文三百五十字。天气很热,我被太阳烤的睡不着觉,便独自一人漫无目的的走着。忽然,我停了下来,因为我走到了池塘边,正值夏季,池塘

知识

小型餐饮保证书怎么写

阅读(251)

本文主要为您介绍小型餐饮保证书怎么写,内容包括餐厅安全保证书怎么写,餐饮业小型食品安全标准的承诺书怎么写,餐饮服务承诺书怎么写。服务承诺书中央国家机关政府采购中心:我方作为2008-2009年度中央国家机关空调集中采购供应商,在空调采购

知识

李字的拼音大写怎么写

阅读(350)

本文主要为您介绍李字的拼音大写怎么写,内容包括李字,大写字母咋写,李字拼音怎么写,李的大写字母。李:lǐ (形声。从木,子声。本义:李树)同本义。落叶乔木,春天开白色花,果实叫李子,熟时黄色或紫红色,可吃

知识

产品的客户需求怎么写

阅读(255)

本文主要为您介绍产品的客户需求怎么写,内容包括写大家以后做产品做得更好满足客户需求,怎么总结怎么写好呢,顾客的需求包括哪些方面,如何做好客户的需求分析。强调产品质量、服务与管理的重要。没有范文。以下供参考,主要写一下主要的工作

知识

中学生微家书怎么200写

阅读(211)

本文主要为您介绍中学生微家书怎么200写,内容包括小学生微家书怎么写,以社会主义核心价值观有关的主题写一篇微家书200字左右急谢谢,写一封微家书,对孩子就感恩丶行为、品德、希冀等方面寄语,200字。“少年强,则国强,少年志,则国志”。作为新

知识

萤火虫的字怎么写

阅读(198)

本文主要为您介绍萤火虫的字怎么写,内容包括萤火虫的萤字怎么写,萤火虫的萤字怎么写,萤火虫的繁体字怎么写。范文,供参考:【对不起,萤火虫】作文在我的童年,我还记的那个夏天晚上,我和奶奶去公园里散步。走到草边的时候我突然看到远处有一片明亮

知识

瓶塞怎么用

阅读(208)

本文主要为您介绍瓶塞怎么用,内容包括快速醒酒器的瓶塞怎么用,红酒酒塞怎么用,软木塞如何打开。红酒开瓶器怎么使用,开红酒方法介绍:小刀开瓶器:先擦干净酒瓶之后用小刀切开瓶口的胶帽,再把瓶口擦干净。这时将螺丝钻尖端插入软木塞的中心,

知识

怎么缓解用眼过度

阅读(190)

本文主要为您介绍怎么缓解用眼过度,内容包括用眼过度,怎么缓解,用眼过度眼睛涨怎样缓解,如何缓解用眼过度。几个妙招帮助你避免眼睛疲劳! 神经性眼睛疲劳和眼睛充血,要立刻休息,然后做下面体操,消除眼睛疲劳。 1 按压眼球法 闭着眼睛,用食指、中

知识

面膜里的精华液怎么用

阅读(260)

本文主要为您介绍面膜里的精华液怎么用,内容包括用完面膜剩下的精华液有什么用,精华液和面膜的使用方法,面膜袋中的精华液怎么利用。面膜剩下的精华液有以下的用法:将化妆棉放入面膜的包装袋中

知识

卖车车况信息怎么写

阅读(258)

本文主要为您介绍卖车车况信息怎么写,内容包括出售二手车信息怎么写,卖二手车在网上发布信息原因车况怎么说,在58上卖车,车主基本信息怎么填。卖车协议书格式如下:买方: (以下简称甲方) 卖方: (以下简称乙方)甲、乙双方就车辆买卖事宜达成以下协议

知识

你是负责人心得怎么写

阅读(653)

本文主要为您介绍你是负责人心得怎么写,内容包括如何当好科室负责人的心得体会,你对责任心的理解和感悟,工作心得体会怎么写。自从我主持保健中心工作的那一天起,我在努力做好自己本职工作的同时,一直在思考,如何做好保健中心的负责人,如何使科

知识

怎么写孩子在家的语言活动

阅读(535)

本文主要为您介绍怎么写孩子在家的语言活动,内容包括请家长记录孩子在家的语言活动要怎么写,家长记录幼儿园孩子在家的语言活动如何写,家长记录孩子在家的语言活动。首先分析一下为什么要写孩子在家的表现,这里很重要的,做什么事要清楚目的后

知识

vs2012怎么写c语言

阅读(275)

本文主要为您介绍vs2012怎么写c语言,内容包括如何用VS2012编写c语言,如何使用vs2012编写c语言,VS2012怎么写C语言编译出错啊。方法/步骤打开vs2012文件新建项目 单击(如图)在对话框左侧分别找到模板其他语言visual c++win32(如图)选择“win3

知识

c语言写md5怎么那么难

阅读(220)

本文主要为您介绍c语言写md5怎么那么难,内容包括我用C语言编写MD5加密,但是不懂MD5算法是如何将密码字符换成16,求用c语言实现md5算法的编程思路,我用C语言编写MD5加密,但是不懂MD5算法是如何将密码字符换成。主要就是调用库函数 MD5加密说

知识

c语言中if语法怎么写

阅读(237)

本文主要为您介绍c语言中if语法怎么写,内容包括c语言if语句的用法,c语言的if语法,C语言中if语句的一般形式怎么编写。c语言提供了三种形式的if语句:if(表达式)语句。例如:if(x>y)printf("%d",x);此时,如果表达式为真,则执行pri

知识

办会员卡组织语言怎么写

阅读(246)

本文主要为您介绍办会员卡组织语言怎么写,内容包括让顾客办会员卡的礼貌用语,请问会员卡(会员卡章程)该怎么写急急急,超市致会员促销活动短信话语怎么说怎么组织语言。第一章 总则第一条 本校校名为“xxxxxxxxxxxxxxxxx”。第二条 本校由个人

知识

易语言怎么写联网软件

阅读(414)

本文主要为您介绍易语言怎么写联网软件,内容包括如何做易语言联网软件,易语言如何做一个联网软件,易语言怎么做一个联网的登录程序。用易语言简单多了 需要通讯组件就可以实现 就不多少了 你用批处理实现的 代码 如下@Echo off&title cmd @

知识

r语言颜色代码怎么写

阅读(343)

本文主要为您介绍r语言颜色代码怎么写,内容包括游戏里字体的颜色的代码是,我想知道各种颜色的编码,各种颜色的代码是什么。游戏里字体的颜色的代码有:红色 #cFF0000、绿色 #c00FF00、蓝色 #c0000FF牡丹红 #cFF00FF、青色 #c00

知识

加油用不同语言怎么写

阅读(268)

本文主要为您介绍加油用不同语言怎么写,内容包括“加油”用世界不同的语言怎么说,求30种不同语言“加油”的写法,不要重复,加油用十种不同的语言怎么说。中文: "加油!" 读音: /`dja: `jou 日文: 「顽张れ」(がんばれ) 读音: /gan ba lei 韩文: 韩语“

[/e:loop]