C语言编程题求非素数

Python024

C语言编程题求非素数,第1张

#include<stdio.h>

int isprime(int n)

{for(int i=2i*i<=ni++)

   if(n%i==0)return 0

 return 1  

}

void fun(int m,int *k,int x[])

{*k=0

 for(int i=2i<mi++)

   if(!isprime(i))x[(*k)++]=i

}

int main()

{int m,i,k,a[500]

 scanf("%d",&m)

 fun(m,&k,a)

 for(i=0i<ki++)

   printf("%d ",a[i])

 return 0 

}

1、首先打开CodeBlocks,创建一个新项目。

2、项目语言,选择“c”, 我们将项目名称命名为“primeNumber”。

3、然后下一步点击“finish”。

4、创建好项目后,我们打开 “main.c”文件。

5、素数即质数,也就是除了1和它本身以外不再有其他因数,首先是实现输入口。

6、输入口完成后,接下来就是判断素数。 要判断素数,我们要从它的特点开始找。素数的因子 只有1和它本身。那么,就是说,我们可以通过找到这个数的所有因数,进行比对即可。

7、先定义好相关的变量,这里result是用来存储因子之和的,用循环,遍历所有可能因子。

其中 if判断,i是不是prime的因数。 %是求余数的运算符。当能被整除时,结果为0。

8、执行完for循环后,result中存入的就是 prime的因数之和,其中也包括它本身。接下来只要判断 prime+1 是否与result相等。如果相等,就表示result中是1+数本身,即为素数。