gpt4 book ai didi

有人可以向我指出一个小的逻辑错误吗?

转载 作者:太空宇宙 更新时间:2023-11-04 02:03:00 25 4
gpt4 key购买 nike

我正在从一本书中执行以下程序,但不明白我哪里出错了。有人可以向我指出我遗漏的一些逻辑错误吗?

开发一个程序,输入每 jar 油的行驶里程和加仑数。该程序应计算并显示每 jar 油获得的每加仑英里数。处理完所有输入信息后,程序应计算并打印所有油箱获得的每加仑综合英里数。

#include <stdio.h>

int main(void) {
int total = 0, count = 0;
float gallons_used, mpg, miles;
while(gallons_used != -1) {
printf("Enter the gallons used (-1 to end): ");
scanf("%f", &gallons_used);
printf("Enter the miles driven: ");
scanf("%f", &miles);
mpg = miles / gallons_used;
printf("Miles / gallon for this tank was %f\n", mpg);
total += mpg;
count++;
}
total /= count;
printf("Average miles to the gallon was: %d\n", total);
return 0;
}

现在,看来我的循环恰到好处,直到我以 -1 的值退出它,因为它仍然要求那个坦克的里程数,显然输入它完全丢掉了总计结束。

最佳答案

您可以使用无限循环并在 gallons_used = -1 的情况下打破它

for(;;) { // <-- infinite loop
printf("Enter the gallons used (-1 to end): ");
scanf("%f", &gallons_used);
if (gallons_used == -1)
break; // <-- exit the loop
printf("Enter the miles driven: ");
scanf("%f", &miles);
mpg = miles / gallons_used;
printf("Miles / gallon for this tank was %f\n", mpg);
total += mpg;
count++;
}

关于有人可以向我指出一个小的逻辑错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24377498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com