C语言单利计算代码无输出且无报错问题如何解决
问题原因
- C语言中未初始化的局部浮点变量会存放内存中的随机垃圾值,你的代码在通过
scanf获取用户输入的本金、利率、年限参数之前,就提前完成了单利的计算,此时参与计算的三个变量都是无效的垃圾值。 - 后续读取到用户输入的正确参数后,代码没有重新计算单利,直接输出了提前得到的错误结果,这类逻辑错误不属于编译/运行时的语法/崩溃问题,所以不会触发报错提示。
修复方案
调整单利计算逻辑的执行顺序,将计算步骤放在所有参数读取完成之后。也可增加输入提示冒号、输出换行等细节优化交互体验。
修复后完整代码
#include <stdio.h> int main() { float principle, rate, years; printf("Enter the principle: "); scanf("%f", &principle); printf("Enter the rate: "); scanf("%f", &rate); printf("Enter the years: "); scanf("%f", &years); float simpleInterest = (principle * rate * years)/100; printf("The simple interest is %f\n", simpleInterest); return 0; }
内容的提问来源于stack exchange,提问作者thesumeet
相关产品推荐
相关产品推荐

