飞花落尽 发表于 2021-10-19 23:52:14

S1E16,课后作业动动手1为什么这个程序和小甲鱼的答案不一样?

#include <stdio.h>

int main(void)
{
        float initial = 10000;
        double money_1 = initial,money_2 = initial;
    int year = 1;
   
    for (year = 1;money_1 >= money_2;year++)
    {
            money_1 = initial * 1.1 * year;
            money_2 = money_2 * 1.05;
    }
   
        printf("%d年后,黑夜的投资额超过小甲鱼!\n",year);
        printf("小甲鱼的投资额是:%.2f\n",money_1);
        printf("黑夜的投资额是:%.2f",money_2);
       
    return 0;
}

大马强 发表于 2021-10-19 23:52:15

money_1 = initial * 1.1 * year;
这句是什么鬼
看了下答案是这样的 a_total += MONEY * 0.1; = > a_total= a_total + MONEY * 0.1
改完之后年份也不对,因为小甲鱼是从 0 开始计数的而你是 1 开始
#include <stdio.h>

int main(void)
{
      float initial = 10000;
      double money_1 = initial,money_2 = initial;
    int year = 1;
   
    for (year = 1;money_1 >= money_2;year++)
    {
            money_1 += initial * 0.1;
            money_2 = money_2 * 1.05;
    }
      printf("%d年后,黑夜的投资额超过小甲鱼!\n",year - 1);
      printf("小甲鱼的投资额是:%.2f\n",money_1);
      printf("黑夜的投资额是:%.2f",money_2);
      
    return 0;
}
页: [1]
查看完整版本: S1E16,课后作业动动手1为什么这个程序和小甲鱼的答案不一样?