熊的作业1
一:求分数序列前n项之和
#include "stdio.h" double fenmu(int n) { if(n==1) return 1; else if(n==2) return 2; else return fenmu(n-1)+fenmu(n-2); } double fenzi(int n) { return fenmu(n+1); } double sum1(int n) { double a=0; int b; for(b=1;b<=n;b++) a+=(fenzi(b)/fenmu(b)); return a; } int main() { int n; double sum; printf("please enter n:\n"); scanf("%d",&n); sum=sum1(n); printf("sum=%.2lf\n",sum); return 0; }
二:计算1!+3!+5!+......+(2n-1)!
#include "stdio.h" int jiecheng(int n) { if(n==1) return 1; else return n*jiecheng(n-1); } int sum1(int n) { int i,sum=0; for(i=1;i<=n;i++) sum+=jiecheng(2*i-1); return sum; } int main() { int n,sum; scanf("%d",&n); sum=sum1(n); printf("sum=%d\n",sum); return 0; }
三:计算水费,分段
#include "stdio.h" double pay1(double n) { int i,sum=0; if(n<0) return 0; else if(n>=0&&n<=15) return 4*n/3; else return 2.5*n-10.5; } int main() { double n,pay; printf("please enter water consumption:\n"); scanf("%lf",&n); pay=pay1(n); printf("water rent=%.2lf\n",pay); return 0; }