函数指针求倒数和

题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n。
当输入n为奇数时,调用函数1/1+1/3+…+1/n(利用指针函数)。

指针函数:本质是一个函数,不过它的返回值是一个指针。
函数指针:本质是一个指针,该指针的地址指向了一个函数,所以它是指向函数的指针。

123456789101112131415161718192021222324252627282930313233343536373839404142
#include <stdio.h>float Odd(int n)//求偶数的函数{    float i = 2;    float sum = 0.0;    while (i <= n)    {        sum = sum + 1/i;        i = i + 2;    }    return sum;}float Even(int n)//求奇数的函数{    float i = 1;    float sum = 0.0;    while (i <= n)    {        sum = sum + 1/i;        i = i + 2;    }    return sum;}int main() {    int input = 0;    printf("请输入一个数字:->");    scanf("%d",&input);    float Odd(int input);//声明这两个函数    float Even(int input);    float (*p)(int);    if (input % 2 == 0)    {        p = Odd;    }    else    {        p = Even;    }    float result = p(input);    printf("%lf",result);    return 0;}
🔍 ×