C语言编程 10
.编写一个判断素数的函数ifp。在主函数中调用该函数,输出整型数组a[10]中的每个素数,并统计素数的个数和所有素数的和。...
. 编写一个判断素数的函数ifp。在主函数中调用该函数,输出整型数组a[10] 中的每个素数,并统计素数的个数和所有素数的和。
展开
1个回答
展开全部
#include <stdio.h>
#include <conio.h>
#define ARR_LEN 255 /*数组长度上限*/
/* 试除法判断素数 */
/* 大于1的自然数num,若其不能被2~num^1/2(num的平方根)之间的任一自然数整除,则其为素数 */
/* num是素数返回1,否则返回0 */
int isPrime (int num) {
int i;
if (num <= 1) /* 素数必须是大于1的自然数 */
return 0;
if (num%2==0 && num!=2) /* 除2之外的偶数显然不是素数 */
return 0;
for (i=2; i*i<=num; i++)
if (num%i == 0)
return 0;
return 1;
}
int main (void) {
int arr[ARR_LEN] = {3,5,1,7,4,9,6,8,10,4};
int len = 10;
int primeSum = 0, primeCnt = 0;
int i;
printf ("素数:");
for (i=0; i<len; i++) {
if (isPrime (arr[i])) {
printf ("%d ", arr[i]);
primeSum += arr[i];
primeCnt++;
}
}
putchar ('\n');
printf ("素数累加和:%d\n素数个数:%d\n", primeSum, primeCnt);
getch (); /*屏幕暂留*/
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询