c語言求最大素數問題哪裡錯了

2022-06-28 12:35:14 字數 954 閱讀 6162

1樓:我已經匿名了

3全部#include

int main()

int i,n,k;

n=0;//修改1:初始化n為0,否則外層迴圈無法進行scanf("%d",&k);

for(;n==0;k=k-1)

for (i=2;iif(k%i==0)

n=0;

break;//修改2:非素數,退出判斷

if(i==k)      //新增3:如果i=2~k-1都不能整除當前k,則k為素數

break;

//k=k+1;          //修改4:註釋掉。之前得到的k即為所求

printf("the max prime number is %d.",k);

return 0;

2樓:

#include

int main()

for(;k>=2;k--) // 這裡 k>=2 不是強限制條件,不寫也沒問題的。

printf("the max prime number is %d.",k);

return 0;}

3樓:匿名使用者

有最大的素數嗎?還是求小於等於k的最大的素數?

如果是求小於等於k的最大的素數,重新寫了個:

#include

bool isprime(int n)

int main()}}

如果是求最大的素數,無能為力了~

4樓:

n=1;

scanf("%d",&k);

for(;n==0;k=k-1)

}k=k+1;

改為n=0;

scanf("%d",&k);

for(;n==0;k=k-1)//如果像你那樣n=1將不能進入迴圈}k=k+1;

C語言求100到1000素數的程式

我剛好最近試了下你看看。void main if j 17 continue else printf 5d i printf 用c語言編1到100之間的素數程式 程式及解釋如下 首先判斷素數的演算法 用一個數分別去除以2到sqrt 這個數 如果能被整除,則表明此數不是素數,反之是素數。則有如下程式 ...

c語言程式,請高手幫我看看哪裡錯了

else if numf mid 這個判斷錯誤導致你輸入其它數字沒有顯示。之所以輸入8可以是因為8是滿足 if num f mid 沒有迴圈 l mid 1 0 不可能滿足l 0。至於第二個問題我覺得你直接修改陣列的大小,執行程式,實驗下就知道了。else if num 就ok了 for i 0 i...

c語言求數中的最大者不知道哪裡出問題

scanf d,d.d x,y,z 這裡面一個逗號,一個.是不是輸入錯誤了。如果你直接1,2,3 得到的就是2 但是你 1,2.3就是正確的3了 補充 1 你的max函式邏輯以及if else用法是對的,雖然有點繞。當然你最好新增大括號來讓 更清晰。2 main函式返回值int確實才是標準的。以下是...