用C寫下100之內的素數以及他們的和

時間 2025-01-12 04:00:15

1樓:網友

#include""

#include

int main()

int n,i,sum,k;

sum=0;

printf("2 ")

for(n=3;n<=100;n+=2){k=sqrt(n);

for(i=2;i<=k;i++)

if(n%i==0)break;

if(i>k){

printf("%d ",n);

sum+=n;

printf("和是 %d",sum+2);

昨天我想第一時間寫完~所以只花了10秒幫樓主完成~錯誤再所難免!

2樓的演算法還是太笨!偶數也檢測了~效率大大降低!

樓主英明~選擇最佳演算法~那就是我拉^^

2樓:網友

下面是用篩選發求100以內的素數方法:

#include

main()

int i,j,n,a[101],sum;

sum=0;

for(i=1;i<=100;i++)

a[i]=1;

for(i=2;i<=sqrt(100);i++)for(j=i+1;j<=100;j++)if(a[i]!=0&&a[j]!=0)

if(a[j]%a[i]==0)

a[j]=0

print("/n");

for(i=2,n=0;i<=100;i++)if(a[i]!=0)

print("%5d",a[i]);

n++;sum+=a[i];

if(n==10)

print("/n");

n=0;printf("%5d",sum);

3樓:家窮的人

覺得第二個人寫的太複雜了。

4樓:公尺度克

一樓的明顯錯誤。

void main()

int i,n,sum;

sum=0;

for(n=2;n<=100;n++)

for(i=2;i<=sqrt(n);i++)if(n%i==0)

break;

if (i>sqrt(n))

sum+=n;

printf(" d",n);

printf("和=%d",sum);

用c語言求100-200之間的素數

5樓:惠企百科

錯誤原因:迴圈結束之後,沒有把s重新置為1,所以在判斷完第2個素數之後第乙個非素數後就不再輸出了。

例子如下:<>

直接編譯,程式輸出結果如下圖所示:

c用while語句求100以內所有的素數

進寫出計算實現部分,輸入輸出部分自己設計吧 using system.math int min,max,middle min 2 max 100 listmyresult new list for 實現 for int i min i max i 計算完畢,輸出 myresult 就可以了 chec...

c語言求100以內的素數

1024程式設計師 c語言經典例子之求100之內的素數 bp哥 這個問題是c語言中比較常見的一種題目,做法有很多中,我這裡提供一種最基礎的演算法,如下 c語言 求100以內素數。include voidmain inti,j for i 2 i 100 i intt 1 for j 2 j 廖慨督斯...

C的時間類的引數以及以及寫法有點複雜的有點不懂特來求教

這個很簡單啊,把每一段 拆開看一下結果不就知道了 你把 改成這樣 var timetemp this.ifub2yylg.subtract datetime.now int num int timetemp.totalseconds 你在第二行上按f9,執行的時候就會在第二行這裡暫停下來,你可以分別...