c语言求出给定范围内的所有质数
时间:2021-03-12 09:56:00|栏目: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()函数从终端获取数据。