1. 程式人生 > >列印100--200之間的素數

列印100--200之間的素數

/******************
列印100–200之間的素數
******************/
素數:只能被一和它本身整除的數
分析:用for迴圈將100–200之間的數與2–i進行取模運算,如果模最終等於0,說明除1和它本身外有一個數能整除它,則證明它不是素數;如果到程式結束模都不等於0,說明這個數是素數,則列印這個數。
優化:①.如果一個數i在i/2下都沒有找到一個數能整除它,則它就是素數;②.如果一個數在sqrt i (i的開方)下都沒有找到一個數能整除它,則到它本身為止也沒有數能整除。

程式碼如下:

#include <stdio.h>
#include<math.h>

int main()
{
	int i, j, k = 0;
	for (i = 100; i <= 200; i++)
	for (j = 2; j <= sqrt(i); j++)
	if (i%j == 0)
		break;
	else if (j > sqrt(i) - 1)
	{
		printf("%d,", i);
		k++;
		if (k % 5 == 0)
			printf("\n");
	}
	else
		continue;
	return 0;
}

結果如下:

在這裡插入圖片描述