[問題] 列出小於那個數的所有質數

看板C_and_CPP (C/C++)作者 (the day)時間16年前 (2010/03/24 20:34), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
這是的程式碼 然後 跑出來的數沒有包涵2 而且會有 3的倍數出來 請高手能夠指點錯誤 謝謝 int n,j,i; printf("enter a number\n"); scanf("%d",&n); for(i=2;i<=n-1;i++) { if(n%i==0) { printf("他是不是質數\n"); break; } else printf("他是質數\n"); } printf("他的質數有:\n"); for(i=2;i<=n;i++) //i有2~n 這幾個 { for(j=2;j<=n-1;j++) //j有2~n-1這麼多個 { if(i%j==0 ) { break; } else //列出小於n是質數的有 { printf("%d,",i); } break; } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.1.227

03/24 21:20, , 1F
你的迴圈是由2開始 如果該數無法被2整除
03/24 21:20, 1F

03/24 21:20, , 2F
就會被印出來,顯然有問題
03/24 21:20, 2F

03/24 21:22, , 3F
你應該在確定所有數都無法將他整除才印出
03/24 21:22, 3F
文章代碼(AID): #1BgWRZdC (C_and_CPP)
文章代碼(AID): #1BgWRZdC (C_and_CPP)