PTA練習:小於m的最大的10個素數(C語言)
阿新 • • 發佈:2018-12-16
給定一個整數m(50<m<20000),找出小於m的最大的10個素數。
輸入格式:
輸入在一行中給出一個正整數m(50<m<20000)。
輸出格式:
在一行中按遞減順序輸出10個滿足條件的素數,每個素數輸出佔6列。沒有其它任何附加格式和字元。
輸入樣例:
229
輸出樣例:
227 223 211 199 197 193 191 181 179 173
感謝中國青年政治學院的同學修正資料!
個人理解:另外寫一個判斷素數的功能的函式,程式明瞭,judge函式靈活搬運or更改;
#include <stdio.h>
int main()
{
int judge(int n);
int m, i, count = 0;
scanf("%d", &m);
for ( i = m-1; i > 1; i--)
{
if(judge(i))
{
printf("%6d", i);
count++;
}
if (count == 10)break;
}
}
int judge(int n)
{
int i;
for (i = 2; i < n; i++)
if (n%i == 0)break;
if (i < n) return 0;
else return 1;
}