Ⅰ 任意输入一个整数,判断它是否为素数c语言编程实验结果分析及心得体会
核心的算法就是下面这句,看懂你就懂了
for(int i = 2; i <= sqrt(num); ++i)
{
if(num % i == 0)
return false;
}
#include<stdio.h>
#include<math.h>
boolisPrime(intnum)
{
if(num<2)
returnfalse;
for(inti=2;i<=sqrt(num);++i)
{
if(num%i==0)
returnfalse;
}
returntrue;
}
intmain()
{
intnum=0;
scanf("%d",&num);//输入一个整数
if(isPrime(num))
printf("是素数 ");
else
printf("不是素数 ");
return0;
}
Ⅱ C语言实验报告怎么写实验步骤高手最好给个样板啊!
.实验报告规范
实验报告内容包括:
1.实验目的:说明实验所验证的知识点。
2.需求分析:以无歧义的陈述说明程序设计的任务、约束条件、输入输出要求、对功能的规定及模型。
3.逻辑设计:说明本程序中用到的所有抽象数据类型的定义、主程序的流程以及各程序模块之间的层次调用关系。
4.详细设计:逻辑设计中定义的所有数据类型的实现,核心算法的设计描述、人机界面设计、函数之间调用关系的描述,主要功能的算法框架,测试数据设计。
5.测试分析:测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施。
6.心得:软件设计与实现过程中的经验与体会,进一步改进的设想。
7.程序清单:源程序中应有足够的注释。如果提交源程序软盘,列出程序文件名。
Ⅲ C语言实验——素数
#include <stdio.h>
void main()
{
int i, j, sum = 0;
int flag;
int a[50];
for (i = 101; i < 200; i+=2)
{
flag = 0;
for (j = 2; j <= i / 2; ++j)
{
if (i % j == 0)
{
flag = 1;
break;
}
}
if (!flag)
a[sum++] = i;
}
printf("%d\n", sum);
for (i = 0; i < sum; ++i)
printf("%d ", a[i]);
putchar('\n');
}
Ⅳ c语言程序设计实验 输出1到100之间的素数。
intmain()
{
inti,j;
for(i=2;i<100;++i){//2-100控制循环
//判断素数
for(j=2;j*j<=i;++j){//2-sqrt(i)循环控制
if(i%j==0)break;//如果能整除,说明不是素数,跳出循环
}
if(j*j>i){//如果没有能整除的数,说明是素数,输出
printf("%d ",i);
}
}
return0;
}
Ⅳ 用C语言编1到100之间的素数程序
程序及解释如下:
首先
判断素数
的算法:用一个数分别去除以2到sqrt(这个数),如果能被
整除
,
则表明此数不是素数,反之是素数。
则有如下程序
{
int
m,k,i;
for(m=1;m<=100;m=m+2)
//m=m+2,因为偶数都不是素数,不用考虑,所以每次m+2.
{
k=sqrt(m)
//先求这个数的平方跟
for(i=2;i<=k;i++)
//然后用i(从2到k,即m的平方跟)去除m,
if(m%i==0)
break;
//如果能被整除,
则不是素数,break
if(i>=k+1)
pritnf("%d",m);
//如果i>k+1,则说明没有数能整除m.则m是素数
}
}
(5)c语言素数探究任务1实验步骤扩展阅读:
素数被利用在
密码学
上,所谓的公钥就是将想要传递的信息在编码时加入
质数
,编码之后传送给收信人,任何人收到此信息后,若没有此收信人所拥有的密钥,则解密的过程中(实为寻找素数的过程),将会因为找质数的过程(
分解质因数
)过久,使即使取得信息也会无意义。
在
汽车变速箱
齿轮的设计上,相邻的两个大小齿轮齿数设计成质数,以增加两齿轮内两个相同的齿相遇啮合次数的
最小公倍数
,可增强耐用度减少故障。
在害虫的生物生长周期与杀虫剂使用之间的关系上,杀虫剂的质数次数的使用也得到了证明。实验表明,质数次数地使用杀虫剂是最合理的:都是使用在害虫繁殖的高潮期,而且害虫很难产生
抗药性
。
以质数形式无规律变化的导弹和鱼雷可以使敌人不易拦截。
多数生物的生命周期也是质数(单位为年),这样可以最大程度地减少碰见天敌的机会。
参考资料:搜狗网络
素数
Ⅵ C语言实验题——素数
#include <stdio.h>
#include <math.h>
int main()
{
int num;
int i;
int n = 0;
for(num = 100; num <= 200; num++)
{
int boolean = 1;
for(i = 2; i < num; i++)
{
if(num % i == 0)
{
boolean = 0;
break;
}
}
if(boolean)
{
printf("%d\n", num);
n++ ;
}
}
printf("素数个数为: %d\n", n);
}
Ⅶ C语言求一个素数怎么写啊写下思路和方法吧
bool is_Prime(UINT num)
{
if(num<2) return false;//num小于2不是素数
int ncount=(int)sqrt(num);//在2-ncount之间检测num是否是素数
for(int i=2;i<=ncount;i++)
{
if(num%i==0)
return false;//能被某数整除,不是素数
}
return true;//不能所有2-ncount数整除,是素数
}
Ⅷ C语言类,实现一下功能:输入一个正整数,判断它是否是素数的实验报告,关于遇到的问题和解决办法
遇到的问题,1 可能 输入的是负数,解决的方法,用if语句判断。2输入的正数超出你的判断范围,解决的方法重新输入。
Ⅸ C语言 求100以内的所有素数 步骤详解
for(j=2;j<ilj++) 分号写成了l, 改为for(j=2;j<i;j++), 如果写成for(j=2;j<i/2;j++)算法更优,只需要判断i是否能被i/2的数整除就可以了
flag=0; //flag标识是否能够被2~i-1之间的数整除,如果能被整除说明i不是素数,将flag置为0
break; //如果存在i被j整除的情况,说明i已经不是素数了,没有必要再循环,跳出for(j=2;j<i;j++)循环,判断下一个i
if(flag==1) //如果flag仍然为1,说明i不能被2~i-1之间的数整除,这个数为素数,输出这个数
Ⅹ C语言程序设计实验报告 (1)编写一个函数primeNum(int x),功能是辨别一个数是否为素数。
#include <math.h>
int primeNum(int p)
{
int i, q;
/* Negative number is not a prime */
if (p < 0)
return 0;
q = (int) sqrt(p);
for (i = 2; i < q; i++)
if ((p % i) == 0)
return 0;
/* No factor of p is found */
return 1;
}
/*原理::
从2-sqrt(x)的数中看是否有可以整除的, 如果没有, 则为素数.
*/