大家好,今天小编关注到一个比较有意思的话题,就是关于c语言100以内素数的问题,于是小编就整理了4个相关c语言100以内素数的解答,让我们一起看看吧。
C语言,输出1到100之间的全部素数?
方法一:
1、遍历1到100之间所有数,由于1的特殊性,不是素数也不是合数,所以可以从2开始遍历;
3、如果是素数,则输出,否则继续下一个。
参考代码:
#include <stdio.h>
#include <math.h>
int isPrime(int n)//判断素数函数。
{
int i;
for(i = 2; i <= (int)sqrt(n); i ++)//从2到算数平方根遍历。
if(n%i == 0) return 0;//存在约数,非素数,返回0.
return 1;//是素数,返回1.
}
int main()
{
int i;
for(i = 2; i <= 100; i ++)//遍历。
if(isPrime(i))//是素数。
("%d ", i);//输出素数。
return 0;
}
方法二是输出100个素数,基本思想是构造一个素数表,利用函数判断每个数是否能被其之前的素数整除,如果不能,则在素数表内加上该元素,不断循环(while循环结束条件是cnt即数组个数>100)。
c语言100以内所有的质数?
所谓质数是指一个自然数(0除外)除了1和它本身两个因数外再没有其它因数。在100以内,最小的质数是2,最大的质数是***,1既不是质数也不是合数。质数中除2以外,其它质数都是奇数。100以内所有质数有:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,***。
c语言编程输出100以内的质数?
#include<stdio.h>
int main()
{
int i,j;
int count=0;
for(i=2;i<100;i++)
{
for(j=2;j<=i/2;j++)
if(i%j==0)//如果i能被j整除 就不是质数 退出循环
运用c语言程序写出:求2~100之间的素数,将之存入数组,并输出?
参考代码:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define n 100
int main()
{
int a[n+1]={0};
int i,j;
for(i=2;i<=sqrt(n);i++){
int i, j = 2, n = 0, a[100] = {0};
for (i = 2; i < 101; i++) {
while (i % j != 0 && j <= i) {
j++;
}
if (j == i) {
a[n] = i;
printf("%d ", a[n]);
n++;
j = 2;
到此,以上就是小编对于c语言100以内素数的问题就介绍到这了,希望介绍关于c语言100以内素数的4点解答对大家有用。