第1关:判断一个正整数是否为素数的函数
100
任务要求
参考答案
评论
任务描述
相关知识
编程要求
测试说明
任务描述
本关任务:编写一个 prime ()函数,判断一个正整数是否为素数,并且函数体里输出判断结果,该函数没有返回值。在主函数中输入10个正整数,调用prime ()函数判断是否为素数。

相关知识
素数,指在大于 1 的自然数中,除了 1 和该数自身外,无法被其他自然数整除的数。

编程要求
根据提示,在右侧编辑器 Begin-End 区间补充代码,在主函数中从后台获取10个正整数,调用prime ()函数判断这10个正整数是否为素数,并输出判断结果。

测试说明
平台会对你编写的代码进行测试:

测试输入:41 13 2 32 9 7 6 30 5 8

预期输出:
41 是素数.
13 是素数.
2 是素数.
32 不是素数.
9 不是素数.
7 是素数.
6 不是素数.
30 不是素数.
5 是素数.
8 不是素数.

#include <stdio.h>
#include<math.h>
void  prime(int m);                         //prime()函数声明
int main()
{
   
	int a[10],i;  
	for(i=0;i<10;i++)
	{
   
		scanf("%d",&a[i]); 
	}
	for(i=0;i<10;i++)
	{
   
		prime(a[i]);  //调用无返回值函数,判断a[i]是否是素数
	}
	return 0; 
}
/*****定义void prime(int m) *****/
/********** Begin **********/
 void prime(int m)
 {
   
     int flag=1;
     if(m<=1){
   
         printf("%d 不是素数.\n",m);
     }else{
   

         for(int i=2;i<=sqrt(m);i++){
   
            if(m%i==0){
   
                printf("%d 不是素数.\n",m);
               flag=0;
                break;
            }
         }
         if(flag){
   

        printf("%d 是素数.\n",m);
         }
    }
 }
	
/********** End **********/