函数fun是根据输入n,求下面分母为n以内(包含n)的素数构成的数列的和 ,输入10,输出:-0.138095。 要求在fun函数的注释语句之间编写程序,其它部分不得增删语句。 */ #include<stdio.h> #include<stdlib.h> double fun(int n) { /*************************Begin*********************/ /**************************End**********************/ } int main() { int n; double s,x; FILE *in,*out; printf("输入n:"); scanf("%d",&n); s=fun(n); printf("%lf\n",s); /*****************/ in=fopen("in2019-2-1-2.dat","r");
时间: 2023-06-29 09:18:17 浏览: 96
2.请编写函数fun,它的功能是:求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。_请编写函数fun,它的功能是 求出 1 到 1000 之间能被 7 或11整除、但不能同时被 7_Inspiration666的博客-CSDN博客.mht
以下是函数fun()的代码实现:
```c
int is_prime(int n) {
if (n < 2) {
return 0;
}
int i;
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
double fun(int n) {
int i;
double s = 0.0;
for (i = 2; i <= n; i++) {
if (is_prime(i)) {
s += 1.0 / i;
}
}
return -s;
}
```
该函数首先定义了一个辅助函数is_prime(),用于判断一个数是否为素数。is_prime()函数的实现与第一题中的实现类似,不再赘述。然后在fun()函数中,使用循环从2到n遍历每个数,如果当前的数是素数,则将1/i加入到s中。最后返回-s,即数列的和的相反数。
在主函数main()中,首先从标准输入读入n,然后调用fun()函数计算数列的和,最后输出结果。同时,程序还从文件"in2019-2-1-2.dat"中读入多组数据,但是没有对这些数据进行处理。
阅读全文