指向函式的指標

iamzxf發表於2013-12-17

    編寫一個函式,當輸入n為偶數時,呼叫函式求1/2+1/4+…+1/n的值,當輸入n為奇數時,呼叫函式求1/1+1/3+…+1/n的值。要求利用指向函式的指標實現。

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <string.h>

float (*f)(int n);
float sum(int n);

int main()
{
	int number;
	scanf("%d", &number);
	f=sum;
	printf("the result is %f.\n",(*f)(number));
	return 0;
}

float sum(int n)
{
	float temp=0.;
	int i;
	if (n%2)
	{
		for(i=1;i<=n;i+=2)
			temp=temp+1./i;
	}
	else{
		for(i=2;i<=n;i+=2)
			temp=temp+1./i;
	}
	return temp;
}


相關文章