编写c程序 任意输入一组数据10个,判断有多少个素数,并显示结果_百度知 ...
发布网友
发布时间:2022-12-13 23:38
我来回答
共2个回答
热心网友
时间:2024-10-09 22:42
#include "stdio.h"
#include "math.h"
/* 判断num是否是素数,若是返回1,否则返回0 */
int isPrimeNumber(int num)
{
int i, k;
k = (int)sqrt(num);
if(num == 2)
return 1;
for(i=2; i<=k; i++)
{
if(num % i == 0)
break;
}
if(i > k)
return 1;
return 0;
}
/* 接收n个输入到数组中 */
void input(int arr[], int len)
{
int i = 0;
int temp;
while(1)
{
if(i >= len)
break;
printf("No.%d : ", i+1);
scanf("%d", &temp);
arr[i++] = temp;
}
}
void main()
{
int arr[10];
int len = 10;
int i;
input(arr, len);
printf("素数列表:\n");
for(i=0; i<len; i++)
if(isPrimeNumber(arr[i]) == 1)
printf("%d\n", arr[i]);
}
热心网友
时间:2024-10-09 22:39
#include <stdio.h>
#include<math.h>
void main(void)
{
int m,i,k,count=0,a[10];
printf("请输入10个整数:");
for(i=0; i<10; i++)
scanf("%d",&a[i]);
for(i=0; i<10; i++)
{
k=(int)sqrt(a[i]);
for(i=2;i<=k;i++)
if(m%i==0)
break;
if(i>k){
printf("%d 是素数。\n",m);
count++;
}
else
printf("%d 不是素数。\n",m);
}
printf("一共有%d个素数\n",count);
}