请编写函数fun,其功能是:计算并输出3到n之间(含3
请编写函数fun,其功能是:计算并输出3到n之间(含3和n)所有素数的平方根之和。例如,在主函数中从键盘给n输入100后,输出为:sum=148.874270。
注意:要求n的值大于2但不大于100。部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
/**********code.c**********/
#include <math.h>
#include <stdio.h>
double fun(int n)
{
}
main()
{
int n;
double sum;
printf("\n\nInput n: ");
scanf("%d",&n);
sum=fun(n);
printf("\n\nsum=%f\n\n",sum);
}答案
double fun(int n)
{
int i,j=0;
double s=0;
for(i=3;i<=n;i++)
{
int flag=1;
for(j=2;j<=i/2;j++)
if(i%j==0)
{
flag=0;
break;
}
if (j==i)
s=s+sqrt(i);
}return s;
}