gpt4 book ai didi

c - Do-While 循环正在工作,但没有得到最终输出

转载 作者:行者123 更新时间:2023-11-30 14:34:31 24 4
gpt4 key购买 nike

此代码的目的是请求所需的找零,然后输出可用于提供找零的最小数量的硬币。

不确定为什么我的代码没有输出任何内容?

#include <cs50.h>
#include <stdio.h>
#include <math.h>

float get_defined_float(string prompt);

int main(void)

{
float f = get_defined_float("Required Change: ");
}

float get_defined_float(string prompt)
{
float n;
do
{
n = get_float("Required Change: ");
}
while (n<=0);
return n;




int input = round(n * 100);
int quarters = input / 25;
int dimes = (input % 25) / 10;
int nickles = (input % 25 % 10) / 5;
int pennies = (input % 5) / 1;


int total = quarters + dimes + nickles + pennies;
printf("%d", total);
}

最佳答案

您的return语句位于输出 printf 上方在你的程序中声明。这意味着 get_defined_float 的后半部分是死代码 - 它永远不会运行。

看来您可能想将死代码移至您的 main 中常规,替代f对于 nint input = round(n * 100);声明。

您可能还需要在该输出语句中添加换行符 ( \n ),以便刷新输出缓冲区(通常为 TTY 进行行缓冲)。

打开一些编译器警告!

关于c - Do-While 循环正在工作,但没有得到最终输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58946058/

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