c語言用for語句編譯1到100的素數,c語言for語句求素數

本文目錄一覽:

求1-100內的素數c語言編程?

樓主 {} 使用有問題

要 把邏輯 理清楚

先畫框圖,再寫代碼

結果:

2

3

5

7

11

13

17

19

23

29

31

37

41

43

47

53

59

61

67

71

73

79

83

89

97

用c語言編寫程序輸出1-100內的素數

用常規的判素性方法可如下實現

#include “stdio.h”

#include “math.h”

bool IsPrime(int x)

{

int i, s;

s = sqrt(x + 1);

for(i = 2; i = s; i++)

if(x % i == 0) return false;

return true;

}

void main( )

{

int i;

for(i = 2; i 100; i++)

if(IsPrime(i))

printf(“%d “, i);

}

也可採用篩選法,篩選法效率會高一些,樓上的雖然也是篩選法,但他的效率卻並不高。篩選法的思路是將那些非素數篩掉,留下那些素數。命題「對於1×100的合數x, 必含有小於10的質因子」可以證明是真命題,它的逆反命題「對於1×100的數,如果不含有小於10的質因子,則它必為素數。」則也是真命題。因此篩除時,只要篩除含有10以內的質因子的數就可以了。下面給出篩選法的代碼。

#include “stdio.h”

void main( )

{

bool isprime[100];

int i, j;

isprime[0] = false;

isprime[1] = false;

for(i = 2; i 100; i++) /*先初始化2~100的都是素數,然後將非素數篩除掉*/

isprime[i] = true;

for(i = 2; i 10; i++) /*將所有含有小於10的質因子的數篩除掉*/

{

if(isprime[i]) /*如果i是素數,則將它的倍數全部篩掉*/

for(j = i * i; j 100; j += i) /*從i*i開始檢測是因為小於i*i的合數都被小於i的素數篩除了*/

isprime[j] = false;

}

for(i = 2; i 100; i++)

if(isprime[i])

printf(“%d “, i);

}

用C語言求解1-100之間的所有素數。

Action()

{

int i,j;

int sum=0;

int flag;//是否為素數

for(i=2;ilt;=100;i++){

flag=1;

for(j=2;jlt;=i-1;j++){

if(i%j==0){

flag=0;

break;

}

}

if(flag==1){

sum+=i;

}

}

lr_output_message(“sum=%d”,sum);

return 0;

}

輸出的結果:sum=1060

擴展資料:

方法二、使用函數:

Action()

{

int i;

int sum=0;

for(i=2;ilt;=100;i++){

if(isPrime(i)){

sum+=i;

}

}

lr_output_message(“素數之和sum=%d”,sum);//loadrunner的輸出,其他編譯器可能是printf

return 0;

}

int isPrime(a){

int j;

int flag=1;

for(j=2;jlt;=a-1;j++){

if(a%j==0){

flag=0;

break;

}

}

return flag;

}

原創文章,作者:AGQV,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/141170.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
AGQV的頭像AGQV
上一篇 2024-10-04 00:24
下一篇 2024-10-04 00:24

相關推薦

  • Python for循環求1到100的積

    Python中的for循環可以方便地遍歷列表、元組、字典等數據類型。本文將以Python for循環求1到100的積為中心,從多個方面進行詳細闡述。 一、for循環語法 Pytho…

    編程 2025-04-29
  • Python3支持多行語句

    Python3是一種高級編程語言,開發人員可以輕鬆地使用該語言編寫簡單到複雜的代碼。其中Python3支持多行語句,方便開發人員編寫複雜的代碼,提高代碼的可讀性和可維護性。 一、使…

    編程 2025-04-29
  • 用不同的方法求素數

    素數是指只能被1和自身整除的正整數,如2、3、5、7、11、13等。素數在密碼學、計算機科學、數學、物理等領域都有著廣泛的應用。本文將介紹幾種常見的求素數的方法,包括暴力枚舉法、埃…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python for循環語句列印九九乘法表

    本篇文章將詳細介紹如何使用Python的for循環語句列印九九乘法表。列印九九乘法表是我們初學Python時經常練習的一項基礎操作,也是編寫Python程序的基本能力之一。 1、基…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • Python使用for循環列印99乘法表用法介紹

    本文介紹如何使用python的for循環語句來列印99乘法表,我們將從需要的基本知識、代碼示例以及一些加強版來詳細講解。 一、基礎知識 在學習如何使用for循環列印99乘法表之前,…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python中while語句和for語句的區別

    while語句和for語句是Python中兩種常見的循環語句,它們都可以用於重複執行一段代碼。然而,它們的語法和適用場景有所不同。本文將從多個方面詳細闡述Python中while語…

    編程 2025-04-29

發表回復

登錄後才能評論