请编写函数fun,其功能是:计算并输出3~n之间所有素数的平方根之和。 例如,若主函数从键盘给n输入100后,则输出为sum=148.874270。 注意:n的值要大于2但不大于100。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中

admin2019-03-19  16

问题 请编写函数fun,其功能是:计算并输出3~n之间所有素数的平方根之和。
例如,若主函数从键盘给n输入100后,则输出为sum=148.874270。
注意:n的值要大于2但不大于100。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include
#include
double fun(int n)
{
}
main()
{
  int n;
  double sum;
  FILE*out:
  printf(“Input n=”);
  searlf(“%d”,&n);
  SHm=fun(n);
  printf(“\nsum=%f\n”,sum);
/********************/
  out=fopen(“out.dat”,“W”);
  fprintf(out,“%f\n”,fun(180));
  felose(out);
/********************/
}

选项

答案double fun(int n) { int m,k,i; double s=0.0; for(m=3;m<=n;m++) { k=sqrt(m); for(i=2;i<=k;i++) if(m%i==0)break; if(i>=k+1) s+=sqrt(m); } return s: }

解析 本题考查:素数的判定方法及求平方根函数sqrt的使用。
首先确定n的范围,然后确定循环条件,最后根据素数的判定方法确定条件语句。
转载请注明原文地址:https://kaotiyun.com/show/bBRp777K
0

最新回复(0)