公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解。
话题:c语言 求1到n的素数和回答:#includemain(){ int i,j,n,sum=1;printf("please input a number");scanf("%d",amp;n);for(i=2;ilt;=n;i++){for(j=2;jlt;i;j++){if (i%j==0)break;}sum=sum+i;}printf("和是%d",sum); 这句放这边试试}希望对你有所帮助!
参考回答:#includemain(){ int i,j,n,sum=1;printf("please input a number");scanf("%d",amp;n);for(i=2;ilt;=n;i++){for(j=2;jlt;i;j++){if (i%j==0)break;sum=sum+i;}}printf("和是%d",sum);}你的sum=sum+i;和printf放错地方了!话题:C语言编程求解1到n之间所有素数之和回答: , n, sum=0;因/素 { if(k%i==0) return 0; } return 1;}int main(){ int i#includestdio.h } printf("i=n, 只要判断2和3就可以判断他是否为素数;int isprime(int k){ int i,因为判断了2是否为因素就知道/=k 来求k的开方i 2*4=;/这个比较简单通过i*i=k;i++)/, n); for(i=2;%d" scanf("%d";2=4为的 i++) { if(isprime(i)) sum+=i; for(i=2;i*ilt
参考回答:输入大于等于1的整数:n\n"#includelt; return = (int)sqrt(n); 1; i++){if(n % );0;%d" , k;if 2; return gt;=n;i++){ /是素数返回1;for(i = }void main(){i == 0) break;}if(i %d"nbsp,否则返回0{int i,k;k n);for(i=1;ilt; scanf("elsenbsp#includelt;stdio.hgt;i lt;= k)sum+=i;}}printf(" n) ,sum);int n,i,k,sum=0;printf("(isPrime(i)==1){int isPrime(int math.hgt;amp;nbsp话题:C语言中求1~n中的所有素数之和,不用函数该怎么编程???回答:我做的有,等用电脑的时候传给你吧
参考回答:{ int i,n,sum=0; printf("请输入整数:"); scanf("%d",n); for(i=1;i话题:用c语言 求素数之和(即求出素数并相加)回答: 函数isPrime判断参数num是否是素数int isPrime(int num) {int i;for(i=2;ilt;=i/2;k++) { if(num%i==0) { return 0; num不是素数 } } return 1; num是素数} main函数,进行测试void main(){int i;int primeSum=0; for(i=2;ilt;=100;i++) { 此处修改求多大数范围之内的素数之和if(1==isPrime(i)) { primeSum+=i; } }printf("\n100以内的所有素数之和为:%d\n",primeSum);}话题:C语言,要求输出mn之间的素数,帮我看看哪错了回答:scanf的时候 用%dscanf("%d%d",换行 改成 if(a%5==4)其它的 没什么问题。话题:C语言 求小于等于N以内的素数之和。越简单越好,谢谢!回答:main() { int i,j,n; int sum; sum=0; scanf("%d",amp;n); for (i=3; ilt;=n; i++) { 为什么是sqrt(i),思考一下 for (j=2; jlt;=sqrt(i); j++) { i被j整除,显然不是素数了 if (i%j == 0) break; } i不能被2~sqrt(i)间的数整除,素数也 if (j gt; sqrt(i)) { sum += i; } } printf("%d",sum); }
参考回答: 本程序演示求N之内的素数及和(指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数) #include lt;stdio.hgt; #include "math.h" #define N n /*定义符号常量N等于n*/ main() { int i,j,n; int line,s=0,a[N],sum; printf("输入素数范围"); scanf("%d",amp;n); for(i=2;ilt;N;i++) a[i]=i; for(i=2;ilt;sqrt(N);i++) 如果不是素数那么肯定有个能被整除 for(j=i+1;jlt;N;j++) { if(a[i]!=0amp;amp;a[j]!=0) if(a[j]%a[i]==0) 这里就是进行素数的判断 a[j]=0;} a[j]=0使不是素数的时候,循环 printf("\n"); for(i=2,line=0;ilt;N;i++) { if(a[i]!=0) {printf("%-5d",a[i]); s++; line++;} if(line==10) {printf("\n"); 一行数满十个,换行 line=0;} line清,继续下个循环 } printf("\n个数:%d\n" ,s); printf("素数和%d\n",sum); }话题:C语言:求m~n间的所有素数回答:把for(k=m;kamp;lt;=x;k++)改成for(k=2;kamp;lt;=x;k++)。把if(kamp;gt;x){改成if(kamp;gt;x amp;amp;amp;amp; iamp;gt;1){。或者这里不改,在scanf("%d",amp;amp;m);后加一句if(m==1) m++;就OK!话题:用C语言求100以内的素数之和回答:#includelt;stdio.hgt;#includelt;math.hgt;void main(){int i,s=0;for(i=1;ilt;100;i++)if(fun(i))s+=i;printf("s=%d",s); }int fun(int n){int i;for(i=2;ilt;=sqrt(n);i++)if(n%i==0)return 0;return 1;}话题:c语言求素数之和的问题回答:#include#define N 5int panduan(int m){int i;for(i=2;iif(m%i==0)break;if(i=m)return 1;else return 0;}main(){int i,a[N],b,c,sum=0,ss;for(i=0;iscanf("%d",a[i]);for(i=0;i{c=a[i];b=panduan(c);if(b==1){ss=a[i];sum=sum+ss;}}printf("%d\n",sum);}
参考回答:for(i=2;iint panduan(int n){int i;for(i=2;iif(y=n%i0) return 0;return n;} int a[100],i=0,s=0,puanduan(int);你这是干嘛,哪有函数被int进去的。。改成int a[100],i=0,s=0;for(i=0;i{if(getchar()=='e') break;scanf("%d",a[i+1]);}这里也不对,你getchar可是要吃字符的,这么写你的数字总是会被吃一位,一定要e结束的话char c[10]; while(scanf("%s",c),c[0]!='e') { s+=panduan(atoi(c)); atoi将char转换int}printf("%d\n",s);话题:c语言求素数的和的程序!!回答:#include lt;stdio.hgt; int isprime(int m){int i, r = 1;if (m == 1) return (0);if (m lt;= 3) return (1);if (m % 2 == 0) return (0);for (i = 3; i * i lt;= m; i += 2)if (m % i == 0){ r = 0; break;}return (r);}void main() { int sum = 0;int i, j;i = 1; j = 0;printf("最小素数:");while (j lt; 10){if (isprime(i)){ j ++; sum += i; printf("%d ", i);}i ++;}printf("\n");printf("最大素数:");i = 1000; j = 0;while (j lt; 10){if (isprime(i)){ j ++; sum += i; printf("%d ", i);}i --;}printf("\n");printf("素数和:%d\n", sum);}