求出1—n中的所有素数,输入大于1的正整数n,输出1—n中的所有素数(以从小到大的格式输出)

作者&投稿:宗圣相 (若有异议请与网页底部的电邮联系)
C语言 求出1-N中的所有素数 输入 大于1的正整数N 输出 1-N中的所有素数,(以从小到大的格式输出)~

测试结果:

请输入一个数N,打印1-N之间所有素数:
100
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71
73 79 83 89 97

源代码:
#include "stdio.h"
#include "conio.h"
int isShuShu(int n)
{
int i;
for(i=2;i<=n/2;i++)
{
if(n%i==0)
return 0;
}
return 1;
}
main()
{
int i;
int n=0;
printf("请输入一个数N,打印1-N之间所有素数:
");
scanf("%d",&n);
for(i=2;i<=n;i++)
{
if(isShuShu(i))
{
printf("%3d ",i);
}
}
getch();
}

思路:
一个函数isSHuSHU()判断给定数是否是素数
从1-N逐一排查即可

#include "stdio.h"int prime(int n){ int i; for(i=3;i*i<=n;i+=2) if(!(n%i)) return 0; return 1;}int main(void){ int sum,i,n; for(n=sum=0,i=999;n<10;i-=2) if(prime(i)){ printf(n++<9 ? "%d+" : "%d=",i); sum+=i;} printf("%d
",sum); return 0;}

#include<iostream>
#include<cmath>
using namespace std;
bool isprime(int num)
{
if(num<2)return false;
if(num<4&&num>=2)return true;
int n=sqrt(num*1.0);
for(int j=2;j<=n;j++)
{
if(num%j==0)
return false;
}
return true;
}
int main()
{
cout<<"请输入一个整数:"<<endl;
int n;
cin>>n;
cout<<"素数有:";
for(int i=1;i<=n;i++)
{
if(isprime(i))
cout<<i<<" ";

}
cout<<endl;
return 0;
}
LZ收到确认下啊!!!


从控制台输入一个数n,输出从1到n的所有素数,我写的不知道有什么问题,得...
public class panduansushu { public static void main(String args[]) { int x, y, j;Scanner i = new Scanner(System.in);System.out.print("请输入一个数:");y = i.nextInt();j = (int) y \/ 2;for (x = 2; x <= j; x++) { if (y % x == 0) { System.out....

编程c++输入一个整数n,输出1—n之间所有奇数的和。
intmain(){ intn,i,j,t,l;intsum=0;printf("请输入一个大于2的整数:");scanf("%d",&n);l=n;for(;n>=2;n--){ for(i=2;i<n;i++){ if(n%i!=0)\/\/判断其为素数 t=1;else { t=2;break;} } if(t==1){ sum+=n;\/\/printf("%d",n);\/\/输出1-n之间的所有素数 }...

在(1,n)区间中所有素数 有没有公式?
在数学领域没有公式,在计算机领域有算法可以算出来。

编程实现,输入一个自然数n,输出n以内的所有素数。
初始化列表,假设所有数都是素数 primes = [True] * (n+1)primes[0] = primes[1] = False 枚举每个数,将它的所有倍数标记为合数 for i in range(2, int(n**0.5)+1):if primes[i]:for j in range(i**2, n+1, i):primes[j] = False 返回素数列表 return [i for i in ...

用C语言循环结构求解1-100之间的所有素数。写出程序设计思路、关键语句...
\/*判定指定范围内的整数是否为素数*\/ { if(!(i%2))continue;for(flag=1,j=3;flag&&j

C语言,要求1到100中全部的素数,跪求大神指正
否则都是连在一块的类如235711这样,可以用空格printf("%d ", m);或者tab键printf("%d\\t",m); 同时在外层for最后以及main函数最后的输出语句中不应该再输出m值,原因是对所有素数都在内层for循环执行完后的if语句中输出过了,再输出就重复了, 所以最后的两个printf应该换成printf("\\n");...

计算n以内的所有素数之和
5.优化算法 以上的算法虽然能够求解素数之和,但在处理大数时会存在效率较低的问题。可以通过以下优化来提升算法性能:可以使用筛选法来快速筛选出素数;使用空间换时间的方法,通过额外的空间来记录素数的情况,减少重复计算。总结:计算n以内的所有素数之和是一个常见的数学问题,通过遍历和判断数是否为...

c程序,设计一个程序,找出1-1000中所有的素数,显示出来,用初学者的方...
include <stdio.h> include <math.h> void main(){ int i,k,f;\/\/f是标记,标记这个数是不是质数,0为质数,1为负数 for(i=2;i<=1000;i++){ f=0;\/\/每次都要初始为0 for(k=2;k<=sqrt(i);k++){ if(i%k==0){ f=1;\/\/若有一个约数,则肯定不是质数 break;} } if(f==...

求1~100中所有的素数(要求编写一个判断是否是素数的函数)。定义函数int...
int sushu(n){ int half;while(){ half=n\/2;for(i=2;i<=half;i++)if(n%i==0) {break; return 0;} if(i>half) return 1;i++;} }

...现在要求你写出一个程序,找出这N个数中的所有素数,并求和。_百度知 ...
if(i>=k+1){printf(“%d”,m);n=n+1;} if(n%n==0)printf(“\\n”);} printf(“\\n”);} 然后是求和,你自己应该会,最后用一个循环语句把他们输出就行了。我这么分开写而不是直接给你一个完整的程序,是觉得这么教你可以理解的更深刻,而如何把他们合为一个完整的程序将会锻炼你的编...

秦淮区19344378291: 求出1—n中的所有素数,输入大于1的正整数n,输出1—n中的所有素数(以从小到大的格式输出) -
郝舒益肝: #include<iostream> #include<cmath> using namespace std; bool isprime(int num) {if(num<2)return false;if(num<4&&num>=2)return true;int n=sqrt(num*1.0);for(int j=2;j<=n;j++){if(num%j==0)return false;}return true; } int main() {cout<<"...

秦淮区19344378291: 用筛选法求(1,n]之内的全部素数 Input 行1:一个整数n,n∈[2,100000] Output 每行输出一个素数,由小到大 -
郝舒益肝: #include<iostream.h> #include<stdlib.h> #include<stdio.h> void shaifa(int n, int*prime) {int i ,j; for( i=0;(2*i+3)*(2*i+3)<=n;i++) { for( j=(2*i+3)*(2*i+3);j<=n;j+=(2*i+3))prime[(j-3)/2]=0; } }int main() { int *prime; int n,i,j; printf("请输入整数n:"); scanf...

秦淮区19344378291: C语言 求出1~N内的所有素数 -
郝舒益肝: #include <stdio.h> #include <math.h> void main() { int m,k,i,n=0;for(m=2;m<=1000;m=m+1){k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>=k+1){printf("%d",m);n=n+1;}if(n%1==0)printf(" ");}printf("\n"); }

秦淮区19344378291: 任意给定一个大于1的整数n,设计一个算法求出n的所有因数. -
郝舒益肝: 你好:第一步:给定一个正整数n 第二步:依次以(2~n-1)的整数d为除数去除n,检查余数是否为0.若是,则d是n的因数;若不是,则d不是n的因数 第三步:在n的因数中加入1和n 第四步:输出n的所有因数

秦淮区19344378291: VF编程 输入一个大于1的自然数n,找出所有比n小的素数 -
郝舒益肝: set talk off clear input "请输入N: " to n for m=2 to n for x=2 to m-1 if int(m/x)=m/x exit ENDIF IF x=m-1 ?m endif ENDFOR endfor set talk on 经过我用VF亲自检验! 还是希望你追加点分!谢谢

秦淮区19344378291: c语言程序中怎样输出1到100的素数 -
郝舒益肝: 主要考察素数的概念和判断方法.素数:指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数判断:将该数N用小于等于根号N的所有素数去试除,若均无法整除,N则为素数.参考代码:#include<stdio.h>#...

秦淮区19344378291: 【c#】求1到n之间的所有素数之和. -
郝舒益肝: 给你一个超高效的代码,你试一下能看懂不!List<int> GetAllPrimeNumber(int num){ if(num<2) throw new Exception("必须是大于1的整数"); List<int> primenumber = new List<int>(); primenumber.Add(2); if(num<3) return primenumber;for(...

秦淮区19344378291: c++语言 求出1 - N中的所有素数 -
郝舒益肝: #include<iostream>#include<vector> usingnamespacestd; intmain() { intn; cin>>n; intnum=0,k; vector<int>s; for(inti=2;i<=n;i++) { intflag=1; for(intj=2;j<=i-1;j++) { k=i%j; if(k==0) { flag=0; break; } } if(flag==1) { s.push_back(i); } } num=s.size(); inttotal=0...

秦淮区19344378291: 怎样用c语言输出1~n间素数的个数 -
郝舒益肝: 楼主知道素数的含义吗?每一个程序都有算法,算法知道了程序就好写了给你算法,这样跟你说如果1-n直接的数能被2,3,4,,,,sqrt(n)整除就不是素数就结束算法,不能除尽就是素数,可以用while这个循环语句,中间加上break语句,不是很难,先弄懂怎么判断一个数是素数的算法,就好写了,就这样,我是菜鸟帮你只有这么多

秦淮区19344378291: 怎样用c语言输出1~n间素数的个数 -
郝舒益肝: #include #include int prime(int n){ int yes, i; if(n<=1) {return 0;} yes=1; for(i=2; i<=sqrt((double)n); i++...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网