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()函數從終端獲取數據。
關于c語言中怎么求出給定范圍內的所有質數問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。