判断应该这么写,因为是互斥条件
#include
float sum(int n)
{
float s;
if(n==1)
s=1;
else if(n%2==1)
s=sum(n-1)-1.0/n;
else if(n%2==0)
s=sum(n-1)+1.0/n;
return (s);
}
int main(int argc, char *argv[])
{
int n;
float s;
scanf("%d",&n);
s=sum(n);
printf("%f\n",s);
return 0;
}