素数编程
1、首先需要打开visual C++ 6.0,接着在里面找到文件-新建-文件-C++ Source File选项,建设新文件。
B. 求"求素数的C语言程序"
#include <stdio.h>
int main()
{
int a=0;
int num=0;
int i;
printf("输入一个整数:");
scanf("%d",&num);
for(i=2;i<num;i++){
if(num%i==0){
a++;
}
}
if(a==0){
printf("%d是素数。 ", num);
}else{
printf("%d不是素数。 ", num);
}
return 0;
}
(2)素数编程扩展阅读:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。
基本算法:若 k%m==0 则说明 k 不是素数。
判断整数n是否为素数——采用枚举法求解。
采用枚举算法解题的基本思路:
(1)确定枚举对象、枚举范围和判定条件;
(2)枚举可能的解,验证是否是问题的解。
枚举算法的一般结构:while循环。
参考资料来源:网络-枚举法
C. C语言求素数代码
方法有2个:
1、判断n是否能被2~√n间的整数整除
#include<stdio.h>
#include<math.h>
int main()
{
int n,i;
double k;
scanf("%d", &n);
k = sqrt(n);
for (i = 2; i <= k;i++)
{
if (n%i == 0) break;
}
if (i <=k) printf("This is not a prime.");
else printf("This is a prime");
return 0;
}
(3)素数编程扩展阅读:
C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写,因此常说:C程序=主函数+子函数。因此,对函数的定义、调用、值的返回等中要尤其注重理解和应用,并通过上机调试加以巩固。
判断语句(选择结构):
if 语句:“如果”语句;if—else 语句:“若…(则)…否则…”语句;switch 语句:“切换”语句;switch—case:“切换—情况”语句。
循环语句(循环结构):
while 语句:“当…”语句;do—while 语句:“做…当…(时候)”语句;for 语句:条件语句(即“(做)…为了…”语句)。
跳转语句(循环结构:是否循环):
goto 语句:“转舵”语句,也称“跳转”语句;break 语句:“中断”(循环)语句,即结束整个循环;continue 语句:“继续”语句(结束本次循环,继续下一次循环);return 语句:“返回”语句。
需要说明的是:
1、一个C语言源程序可以由一个或多个源文件组成。
2、每个源文件可由一个或多个函数组成。
3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。
4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。
5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。(结构体、联合体、枚举型的声明的“}”后要加“ ;”。)
6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
书写规则
1、一个说明或一个语句占一行。
2、用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
3、低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
D. 判断是否是素数编程
#include<stdio.h>
int fun(int x)
{
for(int i=2;i<x;i++)
if(x%i==0)
return 0;
return 1;//是素数返回值为 1;
}
int main()
{
int n;
scanf("%d",&n);
if(n<2)
{
while(1)//无限循环,不执行break一直循环;
{
printf("输入错误;请重新输入 ");
scanf("%d",&n);
if(n>=2)
{
printf("输入正确;开始判断 ");
if(fun(n))
{
printf("%d is a prime number.",n);
break;
}
else
{
printf("%d is not a prime number.",n);
break;
}
}
}
}
else//n>=2时的素数判断;
{
if(fun(n))
printf("%d is a prime number.",n);
else
printf("%d is not a prime number.",n);
}
return 0;
}
E. 素数编程
修改了一下;
#include<stdio.h>
#include<math.h>
void main()
{
int m,i,k;
scanf("%d",&m);
k=(int)sqrt(m);
if(m==1) printf("NO\n");
else
{
for(i=2;i<k+1;i++)
if(m%i==0) break;
if(i>k) printf("YES\n");
else
printf("No\n");
}
}
F. java求素数代码
求1-N以内的所有素数,实现思路如下:
1、 得到1到n之间的素数,存到一个ArrayList集合。
(6)素数编程扩展阅读:
实现功能的编程事项:
1、模块化思想。
先拆分需求,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有。不能把方法堆到一起,否则无法复用代码。
2、注意注释。
就算是自己的测试代码,尽量写清楚注释,这样即使过了三个月,再看代码,也能清晰明了。不要觉得简单,就懒得注释。
3、注意参数命名。
从类名到方法名,再到变量名,都不能随意取名,关于这个命名,不要嫌弃长,重点是意思清楚明白。见名知意(语义化),是最好的。
G. 用C语言写出求素数的编程
参考代码:
int main(){
int num,m,n,d,c,priSum;
printf("Enter the Range Between m,n ");
scanf("%d %d", &m,&n);
for (num = n; num <= m; num++)
{
for(d = 2; d < num; d++)
{
if (num % d == 0){
continue;
}
}
if (d == num){
priSum += d;
c++;
}
}
printf("m~n之间的素数个数:%d,和 %d ",c,priSum);
return 0;
}
H. c语言中如何求素数
#include<stdio.h>
#include<math.h>
void main() // 这里不要搞错了,main
{
int i,n;
printf("输入一个整数n");
scanf("%d",&n);
n=abs(n);
if(n>2)
{
for(i=2;i<n;i++)// 在for下面跟个if判断,如果你输入4的话,这个程序打印两次4不是
if(n%i==0&&n==i)
scanf("%d是素数",n); break ;// 这里应该是printf了吧,
else
scanf("%d不是素数",n); break;// 这样会比较好点
}
else
scanf("%d不是素数",n);// 2就不是素数么,
}
这样也有问题,当你输入5的时候,for语句先判断能否整除2,不能整除2的话,就打印不是素数,写个函数是比较好的方法
I. 求判断素数的C语言程序
C语言-寻找素数
附代码:
#include<stdio.h>
#include<math.h>
int main()//原理:设ab=c,a<b,则有a<根号c<b。若设a恒小于根号c,则只需判断a是否为因数
{
int a, b;
printf("请按从小到大输入两个素数:");
scanf_s("%d %d", &a, &b);
int n = 0,m=0,sum = 0;
double i, j;//i是从a到b的待筛选数,j是从2到根号i的除数,要判断j是否为i的因数
for (i = a; i <= b; i++)
{
m = 0;
int c = int(pow(i, 0.5));
for (j = 2; j <= c; j++)
{
if ((i / j - int(i / j)) == 0.0)
{
m++;//m是i被从2到根号i的j除了之后,商为整数,即发现j是i的因数的次数
}
}
if (m==0)
{
printf("找到素数:%d
", int(i));
n++;
sum = sum + i;
}
}
printf("大于等于%d,小于等于%d的素数的个数为:%d
", a, b, n);
printf("它们的和为:%d", sum);
return 0;
}