日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pat数素数 20 c语言,PAT乙级C语言1013 数素数

發布時間:2025/3/21 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pat数素数 20 c语言,PAT乙级C语言1013 数素数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1013 數素數 (20 分)

令 P?i表示第 i 個素數。現任給兩個正整數 M≤N≤10的4次方,請輸出 PM到 PN的所有素數。

輸入格式:

輸入在一行中給出 M 和 N,其間以空格分隔。

輸出格式:

輸出從 PM到 PN的所有素數,每 10 個數字占 1 行,其間以空格分隔,但行末不得有多余空格。

輸入樣例:

5 27

輸出樣例:

11 13 17 19 23 29 31 37 41 43

47 53 59 61 67 71 73 79 83 89

97 101 103

#include

#include

int main()

{

int min,max;//輸入的最小最大值

int k,b,j;

int a[10000];//最開始定義的時候數組大小只設為1000,有個測試點過不去

//設這個數組是為了存放素數

a[0] = 2;//數組中第一個存放的素數是2

scanf("%d %d",&min,&max);

b = 1;

for(int i = 3 ;i <= 1000000 ;i++) //之前設置i的取值過小,測試點沒過去

{

if( i % 2 == 0)

continue;

else

{

k=(int)sqrt( (double)i );

for(j = 2;j <= k;j++)

if( i % j ==0)

break;

if(j > k)

{

a[b++] = i;

}

if(b > max)

break;

}

}

int n = 1;

for(int i = min - 1;i

{

if(n % 10 == 1)

printf("%d",a[i]);

else

printf(" %d",a[i]);

if(n % 10 ==0)

printf("\n");

}

return 0;

}

C語言判斷素數(from C語言中文網)

1):因此判斷一個整數m是否是素數,只需把 m 被 2 ~ m-1 之間的每一個整數去除,如果都不能被整除,那么 m 就是一個素數。

2):另外判斷方法還可以簡化。m 不必被 2 ~ m-1 之間的每一個整數去除,只需被 2 ~ 之間的每一個整數去除就可以了。如果 m 不能被 2 ~ 間任一整數整除,m 必定是素數。例如判別 17 是是否為素數,只需使 17 被 2~4 之間的每一個整數去除,由于都不能整除,可以判定 17 是素數。

1所對應的代碼

#include

int main(){

int a=0; // 素數的個數

int num=0; // 輸入的整數

printf("輸入一個整數:");

scanf("%d",&num);

for(int i=2;i

if(num%i==0){

a++; // 素數個數加1

}

}

if(a==0){

printf("%d是素數。\n", num);

}else{

printf("%d不是素數。\n", num);

}

return 0;

}

2所對應的代碼

#include

#include

void main(){

int m; // 輸入的整數

int i; // 循環次數

int k; // m 的平方根

printf("輸入一個整數:");

scanf("%d",&m);

// 求平方根,注意sqrt()的參數為 double 類型,這里要強制轉換m的類型

k=(int)sqrt( (double)m );

for(i=2;i<=k;i++)

if(m%i==0)

break;

// 如果完成所有循環,那么m為素數

// 注意最后一次循環,會執行i++,此時 i=k+1,所以有i>k

if(i>k)

printf("%d是素數。\n",m);

else

printf("%d不是素數。\n",m);

}

C語言中每輸出幾個換行(from 百度知道)

#include

#include

int main()

{

int n,i=1; // i 從 1 開始,i=0 的時候,第一次就滿足換行了//i為計數的

for(n=100;n<=200;n++,i++)

{

if(n%3!=0)continue;

printf("%4d",n);

if(i%5==0) // 取 5 的余數

printf("\n");

}

return 0;

}

總結

以上是生活随笔為你收集整理的pat数素数 20 c语言,PAT乙级C语言1013 数素数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。