c語言 輸出之間素數 的程式,c語言 輸出 m,n 之間素數 的程式

2022-02-26 22:35:43 字數 3368 閱讀 9041

1樓:風若遠去何人留

首先根據數學規則,編寫判斷素數的程式。

然後按照如下思路:

1 輸入m和n;

2 對[m,n]的整數進行遍歷。

3 對每個數值進行判斷,如果是素數,則輸出。

**:#include

#include

int is_prime(int n)

int main()

2樓:迷茫的我

main() /*函式呼叫*/ f(int x) if(floy==1) printf("%d",x); } /*這是求100以內的素數具體要求m到n的改一下前面的那句就可以了*/

3樓:伍拾步

#include

#include

int f(int n)//判斷n是否為素數,是則返回1,否則返回0void main()}

4樓:匿名使用者

求100~200之間的所有素數及素數的個數。

main( )

}printf(" n=%d\n",n);}

c語言 輸出n到m之間的所有素數

5樓:風若遠去何人留

對n到m之間所有數進行遍歷,逐一判斷是否為素數,如果是則輸出。

一、演算法設計:

1、輸入n和m;

2、判斷n和m關係,如n>m則交換;

3、遍歷n到m所有值,對於每個值判斷是否為素數,如是則輸出;

#include

#include

int isprime(int n)//判斷素數函式。

int main()

for(i = n; i <= m; i ++)//遍歷。

if(isprime(i))//是素數。

printf("%d ", i);//輸出素數。

return 0;}

6樓:匿名使用者

你好!!

給你一個簡單點的,你看看吧

#include

void main()

count++;

printf("%5d",i);

}if(i%j==0)

break;}}}

7樓:匿名使用者

演算法麻煩 是因為迴圈次數太多了,具體的迴圈 只需要迴圈m-n/2次就行 有說求 sqr的 但是 sqr函式計算開銷比較大 所以我不建議

至於回車的問題 應該是迴圈結構的問題 建議把大括號寫全

參考

8樓:迷茫的我

main() /*函式呼叫*/ f(int x) if(floy==1) printf("%d",x); } /*這是求100以內的素數具體要求m到n的改一下前面的那句就可以了*/

9樓:伍拾步

#include

#include

int f(int n)//判斷n是否為素數,是則返回1,否則返回0void main()}

10樓:

沒測試過你的程式,你忘記了判斷輸入n,m的大小,要是輸入的 n > m 呢?

11樓:匿名使用者

行與行之間不止一個回車,有的很多有的幾個,這是因為你最後一句:

if(b%10==0) printf("\n");

沒有包含在if(a==1)中。這樣當a==0時,也會判斷if(b%10==0),造成輸出很多個回車。改成:

if(a==1)

應該就可以了。(注意大括號位置)

至於判斷素數的簡化演算法,如果你是指**可讀性,那麼你這種演算法已經比較直觀了。如果你是指**的執行效率及運算速度,那麼,你可以參考一下這個**,裡面對素數的判斷有比較詳細的分析:http:

12樓:左岸

關於回車問題,1樓已解釋清楚。

可是你又沒有發現 當輸入 3 100 是 輸出是從11開始的素數。 5和7並未輸出。

另外 簡化程式。 應將k=sqrt(m);刪除。在a=1;的前面加上 k=sqrt(j);

附上程式:

#include

#include

void main(void)

if(a==1)

//回車問題在此行}}

13樓:匿名使用者

求100~200之間的所有素數及素數的個數。

main( )

}printf(" n=%d\n",n);}

求高手用c語言程式設計,輸出[m,n]間的所有素數,並且每5個換行,如果區間內不存在素數,輸出0。

14樓:匿名使用者

程式源**:

#include

#include

void main()

int i,k,m,n;

int count=0;

printf("請輸入求素數的上區間m的值:");

scanf("%d",&m);

printf("請輸入求素數的下區間n的值:");

scanf("%d",&n);

for(i=m;i<=n;i++)

if(i==1)

continue;

int flag=1;

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

flag=0;

break;

if(flag==1)

printf("%-4d",i);

count++;

if(count%5==0)

printf("\n");

if(count==0)

printf("該區間存在的素數為:0\n");

執行結果:

15樓:匿名使用者

學過數論的人應該知道,m和n的大小要有限制,因為一個很大的數判斷它是否為素數從計算上是不可能

c語言程式設計:輸出m~n之間的迴文素數

16樓:風若遠去何人留

程式開始部分沒什麼問題,結尾一個接一個

是自己想亂了還是著急了?

如果剛學c 最好還是先列個流程 然後再寫,不容易出錯改正後的程式如下,原因見註釋

#include

int main()

if(b==p)

{for(q=2;q

c語言程式解析,C語言程式解析

樓主給的東西不是很完整啊,看看是不是你要的結果。void init 遍歷時顯示每個結點的過程 void drawnode tree t,int color t t p c 號優先順序最高,i 1 時 t t 2 2009 1 2 2 s s t c 優先順序最高 以此類推 所以結果如下 11 2 i...

C語言程式題,c語言程式題

int f int x 這裡是函式的宣告,c語言中函式必須先宣告後呼叫,因為在main方法中呼叫了這個函式,函式的定義在main方法下面,所以必須宣告在main方法開頭。int f int x 是一個函式,這函式在main函式之前有宣告的,宣告之後,就可以在main函式中呼叫。int f int x...

用c語言編寫程式輸出如下圖案,C語言程式設計 編寫程式,在螢幕上輸出下面的圖案(要求用for 迴圈實現)。

先貼效果圖 再貼 include stdio.h include conio.h main for j 1 j 2 i j printf n getch 在說思路 外層迴圈,迴圈7次控制列印7行 裡層2個for 第一個內for 控制空格數目從14 每次遞減2 一直容到0第二個for 控制 號數目,從...