gpt4 book ai didi

c - 使用递归用最少的硬币进行找零

转载 作者:行者123 更新时间:2023-11-30 17:26:52 25 4
gpt4 key购买 nike

您好,我在编写此函数时遇到问题。

目标是编写一个函数来计算找零所需的最少硬币数量。该函数必须使用递归,并且不能使用任何类型的循环。

我在这个问题上遇到很多麻烦的原因是返回类型是所有硬币的结构:

struct Martian {
int pennies; //Represent one cent
int nicks; //Represent five cents
int dodeks; //Represent twelve cents
};

该函数如下所示:

Martian change(int cents) 
{

}

这是一个家庭作业问题,所以我并不是要求答案,但我只是在试图弄清楚这个问题的基本情况应该是什么时遇到了很多麻烦。这是我到目前为止所拥有的:

Martian cool = {0, 0, 0};

if(cents < 0)
{
Martian cool = {0,0,0};
return cool;

}
else if(cents == 0)
{
Martian cool = {0, 0, 0};
cool.pennies = 1;
return cool;
}
else if(cents > 12)
{
cool.dodeks++;
cents -= 12;

}
else if(cents > 5)
{
cool.nicks++;
cents -= 5;
}


cool.dodeks += change(cents - 12).dodeks;
cool.nicks += change(cents - 5).nicks;
cool.pennies += cents;

return cool;

谢谢!

最佳答案

至少存在这些问题。

Martian 更改为 struct Martian声明和使用时。

定义结构的示例:

        struct Foo
{
int x;
int array[100];
};

声明和使用示例:

        struct Foo f;  
f.x = 54;
f.array[3]=9;

关于c - 使用递归用最少的硬币进行找零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26599646/

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