编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n(利用指针函数)。
时间: 2023-11-07 09:05:06 浏览: 70
这个问题可以回答,以下是代码示例:
```c++
#include <stdio.h>
double* get_results(int n) {
static double results[100];
double *p = results;
int i;
if(n % 2 == 0) {
for(i = 2; i <= n; i += 2) {
*p = 1.0 / i;
p++;
}
} else {
for(i = 1; i <= n; i += 2) {
*p = 1.0 / i;
p++;
}
}
return results;
}
int main() {
int n = 6;
double *p = get_results(n);
for(int i = 0; i < n / 2; i++, p++) {
printf("%.2f ", *p);
}
printf("\n");
n = 7;
p = get_results(n);
for(int i = 0; i < (n + 1) / 2; i++, p++) {
printf("%.2f ", *p);
}
printf("\n");
return 0;
}
```
当n为偶数时,打印的是1/2 1/4 1/6;当n为奇数时,打印的是1/1 1/3 1/5 1/7。