gpt4 book ai didi

c - C中的结构查找大于某个变量的元素

转载 作者:行者123 更新时间:2023-11-30 18:54:27 24 4
gpt4 key购买 nike

您好,我试图使用 C 中的数据结构找到 2007 年之后价格最高的元素,尝试了各种语句,但我似乎无法做到。这是一段代码。有人可以对我的问题提出建议吗?

LIST *sortKM1(LIST *pFirst)
{
LIST *b = pFirst;
LIST *p = pFirst;
LIST *b1, *bus1 = NULL;

for (p = pFirst; p != NULL; p = p->pNext)
{

if ((b->body.price) < (p->body.price)&& (p->body.year)>2007))
{
b = p;
}

}
b1 = newElement(bus1, b->body);
return b1;
}

最佳答案

这种简化应该可以解决以下问题:如果没有记录年份> 2007,则答案不正确,并且如果第一个记录<= 2007年却是最高价,那也是不正确的。此外,您不需要创建新记录:只需将指针返回到最佳记录即可。

如果没有找到符合年份条件的记录,则返回NULL,如果成功则返回记录指针。

LIST *sortKM1(LIST *pFirst) {
LIST *b = NULL, *p;
int price = -1; // match the var type to the LIST struct

for (p = pFirst; p != NULL; p = p->pNext)
{
if (price < p->body.price && p->body.year > 2007)
{
price = p->body.price;
b = p;
}
}
return b;
}

关于c - C中的结构查找大于某个变量的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30309911/

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