2.2 存钱问题
#include<stdio.h> #include<math.h> int main () { int x1,×2,x3,x5,x8, y1, y2, y3, y5, y8; /*定义变量*/ double max=0.0, result; /*result变量存放最后结果*/ /*使用for循环穷举所有可能的存款方案*/ for(x8=0;x8<=2;x8++) for(x5=0; x5<=(20-8*x8)/5;x5++) for(x3=0; x3<=(20-8*x8-5*x5)/3;x3++) for (x2-0;x2<-(20-8*×8-5*×5-3*x3)12;x2十+) x1-20-8*x8-5*x5-3*x3-2*×2:/*存款期限限定条件*//*判断条件*/ resu1t=2000.O*pow((1+0.0063*12) ,x1) *pow((1+2*0.0066*12),x2) *pow ((1+3*0.0069*12),x3)*pow((1+5*0.0075*12),x5)*pow((1+8*0.0084*12),x8); /*y1,y2,y3,y5, y8用于记录获利最多的存放方式*/if (result>max) max=result; /*max变量存放当前的最大值*/ y1=x1; y2=x2;y3-x3; y5=x5; y8=x8; /*输出结果*/ printf("获得利息最多的存款方式为:n"); printf ("8年期限的存了%d次\n", y8); printf("5年期限的存了%d次\n",y5); printf("3年期限的存了%d 次\n",y3); printf("2年期限的存了%d次\n", y2); printf("1年期限的存了%d次\n",y1); printf("存款人最终的获得的本利合计:%0.2f\n", result); }