【问题标题】:principal = 10000, interest rate = 5% , 10000 → 20000 when will it double?本金 = 10000, 利率 = 5% , 10000 → 20000 什么时候翻倍?
【发布时间】:2018-05-22 12:09:15
【问题描述】:
#include <stdio.h>

int main()
{
    int x=5;  //x = interest rate(5%)
    int y=10000; //y = principal

    int n = 0;   //n = after years
    while (1)
    {
        n++;
        y += y*(x/100);
        if(y == 20000)
            break;

    }

    printf("%d years later, double.",n);

    return 0;
}

当我运行它时,什么也没有发生。

描述资源路径位置类型 无法打开输出文件 mm.exe: Permission denied mm C/C++ Problem

如果您告诉我出了什么问题,我将不胜感激。

【问题讨论】:

  • 你做过调试吗?卡在哪里了?
  • 描述资源路径位置类型无法打开输出文件 mm.exe: Permission denied money C/C++ 问题
  • 我不确定这与任何事情有什么关系,但是查看您的代码,y == 20000 不太可能是真的。尝试将其更改为y &gt;= 20000

标签: principal


【解决方案1】:

由于您将 X 作为整数,并且它的值为 5,因此在

y+= y*(x/100)

相当于

y+= 0

as (5/100) 与整数除法产生 0。这导致 while(1) 无限循环,因此永远不会允许程序终止。

此外,权限被拒绝错误看起来可以通过更改保存文件位置来修复。 Here is my source and some extra info

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    相关资源
    最近更新 更多