n>=1 m<=500 输入m和n 输出前n个素数m和n之间的素数以及它们的和

谁能编出此程序 谢谢_百度知道
谁能编出此程序 谢谢
输入2个正整数M和N(m&=1,n&=500),统计并输出m和n之间的素数的个数以及这些素数的和,饰譅策喝匕估察台畅郡要求定义并使用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0.
#include&iostream.h&#include&math.h&int prime(int m){ int i,k; k=sqrt(m); for(i=2;i&=k;i++) {
if(m%i==0)
else } if(i&k)
return 1;}void main() {
int M,N; cout&&&请分别输入M,N(1&=M,N&=500):&; cin&&M&忍疚拜段之灯瓣犬抱华&N; int t=M; M=M&N?M:N;//M存放大数 N=t&N?t:N;//N存放小数 int count=0,sum=0; for(i=N;i&=M;i++) {
if(prime(i))
sum=sum+i;
} } cout&&&素数共有&&&count&&&个&&& cout&&&它们的和是&&&sum&& }
其他类似问题
其他2条回答
#include&iostream&int prime(int m){
for (int i=2;i&m;i++)
if (m%i==0)
return 1;}int main(){
int m,n,count=0,sum=0;;
cin&&m&&n;
for (int i=m;i&=n;i++)
if (prime(i)==1)
坪嗨高核薨姑胳太供咖
cout&&count&&& &&&sum&&
system(&pause&);
return 0;}
关键是素数检测算法的效率,最简单的就是:若检测n,就用小于sqrt(n)的素数相除,如果都除不能整除就是素数,否则n是合数。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁输入2个正整数m和n(1&=m,n&=500),统计并输出m和n之间的素数的个数以及这些素数的和。要求定义并调用函数prime(m)判断m是否为素数
输入2个正整数m和n(1&=m,n&=500),统计并输出m和n之间的素数的个数以及这些素数的和。要求定义并调用函数prime(m)判断m是否为素数
#include &stdio.h&#include &math.h&int prime(int n){ int i,flag=1; for(i=2;i&=sqrt(n);i++) {
if(n%i==0)
} }}void main(){
int m,n,i,count=0;
printf(&请输入整数m:&);
scanf(&%d&,&m);
printf(&请输入整数n:&);
scanf(&%d&,&n);
for(i=m;i&=n;i++)
if(prime(i))
printf(&%d与%d之间素数个数:%d\n&,m,n,count);
printf(&%d与%d之间素数之和:%ld\n&,m,m,s);}
的感言:多谢
其他回答 (1)
#include &stdio.h&#include &stdlib.h&
int IsPrime(int j){
// 判断是否为素数
int i = 2;
for (i = 2; i &= j / 2; i++)
if ((j % i) == 0)
return 1;}
void GetPrimes(int from, int to){
int primes = 0;
int sum = 0;
int j = 0;
for (j = j &= j++)
if (IsPrime(j))
primes += 1;
printf(&素数个数:%d,和:%d&, primes, sum);}
int main(){
printf(&请输入两个正整数。。。\n&);
scanf(&%d&, &from);
scanf(&%d&, &to);
GetPrimes(from, to);
return 0;}
等待您来回答
编程领域专家C语言题目,求大神指导!!指出错误~!!_百度知道
C语言题目,求大神指导!!指出错误~!!
if(m==1)return 0; int prime(int m),n≤500),n;
count=0,统计并输出m 和n 之间的素数的个数以及这些素数的和。;}int prime(int m){ =n;素数就是只能被1 和自身整除的正整数!=0){
sum=sum+m;I要求定义并调用函数prime(m)判断m 是否为素数;Im& for(i=2;
} } printf(&quot: &i++)
if(m%i==0){
return 0,m; printf(&n&
} return 1,m),最小的素数是2。
count++;m++){
if(prime(m),当m 为素数时返回1, for(m=m,否则返回0。 return 0;=n,n);#include&&#92,n输入2 个正整数m 和n(m≥1; n=sqrt(m); printf(&int main(void){ ;i&#include&lt.h&gt.h&gt: &);math
提问者采纳
int prime(int m);int main(void){ int count=0; scanf(&
count++;*和上面一样*&#47.h&
return 0我想说; if(m==1)return 0?因为你在main()函数里面;
} return 1;=n: &&#47,那种错误也会出现; /*输入要分开写.我直接修改吧;}int prime(int m){ *之前这里是逗号*&#47.#include&lt: &quot,肺家尺救侔嚼辐室sum);m++){
if(prime(m);
} } printf(& printf(&#include&;m& n=sqrt(m): %d&#92,&n);=n;,不是在printf()里面就行了的*/n&i++)
if(m%i==0){
return 0;).h&total!=0){
sum=sum+m; for(,m,i&
count=0,n;nsum is %d&#92,&m),你的判断素数的方法是不是你写的;); int sum=0;II scanf(&/;%d&%d& printf(& for(i=2;*你用整形也没什么错*&#47
其他类似问题
c语言的相关知识
其他2条回答
um没有赋初始值在count=0
m和n,count定义时没赋初值
等待您来回答
您可能关注的推广回答者:
下载知道APP
随时随地咨询
出门在外也不愁4. 输入两个三位正整数m和n,输出m~n之间的所有水仙花数。必须要用c++_百度知道
4. 输入两个三位正整数m和n,输出m~n之间的所有水仙花数。必须要用c++
否则返回false,包含自定义的头文件“headfile.cpp文件.h.cpp文件。(3) 建立content,若是则返回true,包含需要的头文件并声明is函数;(2) 建立头文件headfile;功能是判断number是否为水仙花数【要求】(1) 建立is,定义函数is(number),调用函数is输出m~n之间的所有水仙花数,输入两个三位正整数m和n.h”,编写main函数,原型是bool is(int number)
提问者采纳
10)%10;//#include &.c逊馊管既攮焕锦纫pp#include &/ for(i=n;&/&#47,x3=number%10,x2=(number/&#47.h&quot.h#include&lt.h&&lt/bool is(int number){
int x1=number&#47.cpp&quot,m;}/ cin&m;100; &/m; bool is(int number),i;&&#47.cpp#include&&/ if(x1*x1*x1+x2*x2*x2+x3*x3*x3==number)&n&/void main(){i&i++) {
if(is(i)==true)
cout&i&lt.h&quot
提问者评价
其他类似问题
水仙花数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁输入2 个正整数m和n(1&=m,n&=500),统计并输出m 和n之间的素数的个数以及这些素数的和。_百度知道
输入2 个正整数m和n(1&=m,n&=500),统计并输出m 和n之间的素数的个数以及这些素数的和。
程序填空,不要改变与输入输出有关的语句。输入一个正整数repeat (0&repeat&10),做repeat次下列运算:输入2 个正整数m和n(1&=m,n&=500),统计并输出m 和n之间的素数的个数以及这些素数的和。例:括号内是说明输入:3
(repeat=2)1 10
(m=1, n=10)20 35
(m=20, n=35)14 16
(m=14, n=16)输出:count=4, sum=17
(1到10之间有4个素数:2,3,5,7)count=3, sum=83
(20到35之间有3个素数:23, 29, 31)count=0, sum=0
(14到16之间没有素数)import java.util.Spublic class Test40023{
public static void main(String args[]){
int count, i, j, k, m, n,
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1; ri&= ri++){
m=in.nextInt();
n=in.nextInt();
/*---------------------*/
System.out.println(&count=&+count+&, sum=&+sum);
提问者采纳
应填入:count = 0;
for(i = i & i++) {
boolean isSuShu =
if(i == 1)
for(j = 2; j & j++) {
if(i % j == 0) {
if(isSuShu) {
其他类似问题
按默认排序
其他4条回答
public static void main(String[] args) {
int count=0, i, j, k, m, n, sum=0;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for (ri = 1; ri &= ri++) {
m = in.nextInt();
n = in.nextInt();
sum=0;count=0;
for(j=m;j&=n;j++){
for(k=2;k&j;k++){
if(j%k==0){
}else if(k==j-1){
System.out.println(&count=& + count + &, sum=& + sum);
package com.wz.import java.util.Spublic class Test40023 { public static void main(String[] args) {
int count = 0, i, j, k, m, n, sum = 0;
System.out.println(&请输入要做的次数:&);
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for (ri = 1; ri &= ri++) {
System.out.println(&第&+ri+&次循环,&+&请输入两个整数:&);
Scanner in2 = new Scanner(System.in);
m = in2.nextInt();
n = in2.nextInt();
count = 0;
if(m==1&&n==1){
System.out.println(&对不起,您的输入有误!&);
for(j=m;j&=n;j++){
int count2 = 0;//用于判断每个数的因数是否为2
for(i=1;i&=j;i++){
if(j%i==0){
if(count2==2){
System.out.print(j+& &);
System.out.println();//换行的作用
System.out.println(&count=& + count + &, sum=& + sum);
写这个程序有什么用?
素数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 输出100以内的素数 的文章

 

随机推荐