代码忽略 C 中的 IF 命令,FOR 的问题

标签 c if-statement for-loop while-loop

我之前曾在这里发帖,但我始终无法获得所需的帮助。 我正在做一个学校项目,但我的程序无法正常运行。

程序应提示用户输入使用的加仑数和 3 jar 汽油各自行驶的英里数。该程序应该 然后计算并显示每个油箱获得的每加仑英里数。一次 3个坦克的处理完成,程序将计算整体 英里数(总加仑数/总英里数)并显示友好的“再见”消息。

我遇到的问题是我无法将其显示给 OVERALL Millage。循环3次后结束。 我知道不同的循环语句需要满足条件,但我无法让 FOR 循环正常工作。我真的很沮丧,因为我知道这不应该这么难。

代码

#include <stdio.h>
int main(void) 
{
    int miles,i=3;
    float gallons, mg, overall = 0, avg = 0;
    while(i>0) 
    {
        printf("Enter the gallons used: ");
        scanf("%f", &gallons);
        printf("Enter miles driven: ");
        scanf("%d", &miles);
        mg = miles/gallons;
        printf("The miles/gallon for this tank was : %f\n", mg);
        overall += miles;
        avg += gallons;i--;
    }

    if(gallons == 0) 
    {
        printf("\n\n The overall miles/gallon was: %f\n", overall/avg);
        exit(0);
    }
    return 0;
}

最佳答案

如果我正确阅读了您的代码,那么阻止打印总里程的是以下最终 if 语句:

if (gallons == 0)

如果删除它,则应打印总里程。使用这种模式:

while (i > 0)
{
    // your while loop here
}

printf("\n\n The overall miles/gallon was: %f\n", overall/avg);
exit(0);

关于代码忽略 C 中的 IF 命令,FOR 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42329018/

相关文章:

c - 多进程计算中如何保证结果的重复性

c - for 循环 C 中的 OR 运算符

C - 传递变量参数

php mysql 查询循环if语句

arrays - postgresql 插入语句中的 perl 数组

javascript - JSON 对象和 HTML 表

Java:A类中的队列

java - 找不到 arrayindexoutofbounds 错误

c - ARMv8a 中的这种简单分页是如何工作的

javascript - !== 比较运算符应该为 True 但不是