哈岁NB 发表于 2019-8-6 11:33:44

各位大佬想问下哪里出现错误了

#inlude <stdio.h>

int main()
{
       
        double awards = 4000000;
        int count = 0;
       
        do
        {
                awards -= 500000;
                awards += awards*0.08;
               
                count++;
        }while(awards <= 0);
       
        printf("%d年后,小甲鱼一贫如洗\n",count);
       
        return 0;
       
}
应该是显示十二年为什么我的显示是一年呢?

mqcake 发表于 2019-8-7 07:56:23

说明你的while循环只执行了一次呗。那就看看while条件是不是搞错了。换成awards>=0 试试;

蓝炎彼岸花 发表于 2019-8-7 13:20:40

你while里面的表达式错了,当符合表达式执行循环,你的表达式是余额<=0, 意思就是<=0的时候才执行循环。应该是大于0执行循环。代码如下:
#include <stdio.h>

int main()
{
      
      double awards = 4000000;
      int count = 0;
      
      do
      {
                awards -= 500000;
                awards += awards*0.08;
               
                count++;
      }while(awards > 0);
      
      printf("%d年后,小甲鱼一贫如洗\n",count);
      
      return 0;
      
}

King.c 发表于 2019-8-8 09:19:36

因为你打印的内容太敏感。
页: [1]
查看完整版本: 各位大佬想问下哪里出现错误了