c語言求出給定范圍內的所有質數。本站提示廣大學習愛好者:(c語言求出給定范圍內的所有質數)文章只能為提供參考,不一定能成為您想要的結果。以下是c語言求出給定范圍內的所有質數正文
程序功能:
輸入一個整數,要求打印出這個整數以內的所有質數。
程序示例:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
bool IsPrime(int x)
{
bool bResult = false;
int i, k;
k = (int)sqrt(x);
for (i = 2; i <= k; i++)
{
if (x % i == 0)
{
break;
}
}
if (i > k)
{
bResult = true;
}
else
{
bResult = false;
}
return bResult;
}
int main()
{
int a = 0;
int b = 0;
int i = 0;
printf("請輸入一個整數:");
scanf("%d",&a);
for (i = 3; i <= a; i++)
{
if (IsPrime(i))
{
printf("%d\n",i);
}
}
system("pause");
return 0;
}
程序解析:
1,IsPrime()函數用來判斷一個整數是不是質數,如果是返回true,否則返回false。在這個函數中因為調用了C語言庫函數sqrt(),所以要在頭文件中包含#include 。
2,scanf_s()函數用來獲取用戶輸入的數據,並將這個數據保存到局部變量中。
小結:
1,math.h頭文件中聲明了常用的一些數學運算,比如乘方,開方運算等等,如果你要使用C標准庫裡的函數,就需要包含聲該函數的頭文件。
2,我們可以使用scanf()函數從終端獲取數據。
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持!