解釋一下這個c語言求素數的問題,謝了

時間 2021-10-29 11:52:04

1樓:光霖

i控制的是你要求的素數。從3-n之間找出所有的素數。

j則是從2-i-1,如果i能被j整除,那說明i不是素數。 if (i%j == 0),當發現j能被i整除的時候,跳出這個迴圈,此時j=i),此時j=5,i=5,滿足。那麼證明出這是一個素數,所以count加一個1,然後輸出這個素數。

接著i再加1,判斷。。

這是個判斷素數的很好的模式,樓主可以記住。常會用到

2樓:倒黴熊

素數:除了1和它本身外沒有別的因子。也可以理解為:除了1和它本身,其他數來除它餘數都不是0。

所以內層迴圈用從2開始到i-1依次求餘

如果有=0的餘數(if(i%j ==0)),說明正在判斷的數字不是素數,用break語句退出內層迴圈;如果沒有=0的餘數,則記憶體迴圈是正常結束的,也就是 j=i),結束迴圈; if(j>=i)後的語句執行,計數器自加一次(找到一個素數),並列印當前檢驗數i。

3樓:痛著天籟

僅供參考。

幫忙解釋一下這個c 程式。是求完全數的

完全數就是所有的因子和等於自身。程式對每一個數j都找到它的所有因子 如果能整除就是因子 每找到一個因子就從s裡減去。因為s一開始設的和j相同,所以如果最後s 0就說明這個數的所有因子之和就是自身,也就是完全數。詳細流程 1.讀入m 2.依次檢查1到m的所有數,設當前數為j 3.檢查從1到j的所有數,...

c語言題,幫忙詳細解釋一下,c語言的題,幫忙解釋一下,謝謝!!!

i 5時開始執行 if 語句 if i 4 printlf d i 輸出5i 表示先取i操作,再自增1 1表示先自增1,再取i操作所以這裡輸出 5 i 6 break 跳出for迴圈 不執行for語句裡的 i 跳出執行 printf d i i 6 i 表示先取i操作 所以輸出 6 最後i的值是7輸...

求大佬解釋下這個C語言程式設計,求大佬看一下這個C語言程式設計我哪錯了?

風若遠去何人留 從檔案質檢.txt中讀資料,每行六個字串為一組資料 將讀到的資料存到連結串列裡面 999所向披靡 從程式函式來看,大致是開啟 質檢.txt 檔案,如果未到檔案尾,就不斷向檔案中輸入 寫入 結構體形式的資料。結構體的屬性包括 id name.具體含義你得看下文件。 開啟 質檢.txt ...