gpt4 book ai didi

CS50 PSET 1 贪婪

转载 作者:行者123 更新时间:2023-11-30 20:25:04 29 4
gpt4 key购买 nike

我对编程真的很陌生,我刚刚开始在哈佛的 CS50 上尝试一些问题集。如果有人能向我指出为什么我的代码是错误的,我将不胜感激。

编译并运行代码后,没有任何输出。

另一方面,有人可以向我解释一下“round”是如何工作的吗?我真的没有从终端上的人那里得到它。谢谢!

<小时/>
#include <stdio.h>
#include <math.h>
int main(void)
{
printf(" O hai! How much change is owed?\n");

float change;
change=GetFloat();
double round(double change);
int x= change*100;

int i=0;

while(x>25) {
x=x-25;
i++;
return i;
}

while(x>10) {
x= x-10;
i++;
return i;
}

while(x>5) {
x=x-5;
i++;
return i;
}

while(x>1) {
x=x-1;
i++;
return i;
}

printf("%d\n",i);

}

最佳答案

第一件事当用户输入美元后您应该立即将其乘以 100 以将其转换为美分并使用round函数。使用

change = round(change) ;

在你的代码中因为变化是一个浮点值但我们需要整数的钱来计算使用的硬币数量所以我们使用round将其改为整数因为我们无法使用浮点值来计算使用的硬币数量

然后:返回我;不应使用语句在每个循环中将其从每个循环中删除。

如果你在每个 lopp 中使用它它会计算那些特定的硬币然后将退出程序。因此,删除所有这些 return i 语句你可以写 return 0 ;之后printf("%d\n", i); 语句!

关于CS50 PSET 1 贪婪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30640633/

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