猿问

本题要求计算并输出不超过n的最大的k个素数以及它们的和。大神看看我问在哪里

#include<stdio.h> int sushu(int n) //如果n是素数 返回1,反之 返回0 { int v; for(v=2;v*v<=n;v++) if(n%v==0) return 0; return 1;} void main() { int i,j,n,sum=0;0 int h,l=0; scanf("%d %d",&i,&j); for(n=i;n>1;n--) { h=sushu(n); if(h) printf("%d",n); l++; sum=sum+n; if(l!=j) printf("+"); else printf("=%d",sum); if(n=l) break; } }
哲14
浏览 8429回答 1
1回答

望远

if(n=l)//这里有问题吧?我写了一个你可以参考一下:#include<stdio.h>  int fun(int n) { if(n<=0) return -1; else if(n<=2) return 0; else { for(int i=2;i<n;i++) { if(n%i==0) return 1; } return 0; } } void main() { int i,sum=0,m,n; printf("请输入两个正整数:m,n\n"); scanf("%d %d",&m,&n); for(i=m;i>0 && n>0;i--){ if(fun(i)==0){ printf("%d",i); sum+=i; n--; if(n!=0){ printf("+"); }else{ printf("=%d",sum); break; } } } printf("\n"); }
随时随地看视频慕课网APP
我要回答