C 中的质数程序
2021-07-06 22:20:10
深夜i
--
--
C
的
质
数
程
序
C语言素数程序,检查一个数是素数还是合数,打印素数。 如果一个数只能被 1 和它自己整除,那么它就是素数。
2 是唯一的偶数和最小的素数。 前几个素数是 2, 3, 5, 7, 11, 13, 17, ....素数在计算机科学和数学中有很多应用。 大于 1 的数可以分解为质数,例如 120 = 23*31*51 (8*3*5)。
C语言中的质数
#include <stdio.h>
int main()
{
int n, i = 3, count, c;
printf("Enter the number of prime numbers to print\n");
scanf("%d", &n);
if (n >= 1) {
printf("First %d prime numbers are:\n",n);
printf("2\n");
}
for (count = 2; count <= n;)
{
for (c = 2; c <= i - 1; c++)
{
if (i%c == 0)
break;
}
if (c == i)
{
printf("%d\n", i);
count++;
}
i++;
}
return 0;
}
程序输出:
下载质数程序。
素数与否的C程序
#include<stdio.h>
int main()
{
int n, c;
printf("Enter a number to check if it's prime\n");
scanf("%d", &n);
for (c = 2; c <= n/2; c++)
{
if (n%c == 0)
{
printf("%d is a composite number.\n", n);
break;
}
}
if (c == n/2 + 1)
printf("%d is prime.\n", n);
return 0;
}
使用函数求素数的C程序
#include<stdio.h>
int check_prime(int);
int main()
{
int n, result;
printf("Enter an integer to check whether it's prime or not.\n");
scanf("%d",&n);
result = check_prime(n);
if (result == 1)
printf("%d is prime.\n", n);
else
printf("%d isn't prime.\n", n);
return 0;
}
int check_prime(int a)
{
int c;
for (c = 2; c <= a - 1; c++)
{
if (a%c == 0)
return 0;
}
if (c == a)
return 1;
}
有许多动态逻辑来检查素性,下面给出一种方法。
for (c = 2; c <= (int)sqrt(n); c++)
仅检查数字的 2 到平方根就足够了。
上一篇:
idea打包java可执行jar包
下一篇:
C中的阿姆斯特朗数
评论区