gpt4 book ai didi

CS50x pset3(为什么我的程序没有通过Check50?)

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

我完成了问题集 3 helpers.c 程序,它在 haystack 总数达到 10 时完美运行,但当我在 haystack 少于 10 时按 Control-D 时停止工作。相反,程序会跳过一行,我可以像在 not pad 中一样自由地书写。因为,它无法通过 haystacks 中的 3 或 4,所以我的程序无法通过 Check50。有人能解决这个问题吗?

如果您需要我的代码,这里是:

bool search(int value, int values[], int n)
{
if(value < 0)
{
return false;
}

for(int i = 0; i < n; i++)
{
if (value == values[i])
{
return true;
}
}

return false;

}

/**
* Sorts array of n values.
*/
void sort(int values[], int n)
{
bool tf;
do
{
tf = false;
for(int i=0; i < n-1; i++)
{
if(values[i] > values[i+1])
{
int temp = values[i];
values[i] = values[i+1];
values[i+1] = temp;
tf = true;
}
}
}
while(tf == false);
return;
}

最佳答案

您的排序算法有缺陷。它只是对整个数组进行一轮排序,并按顺序部分排列,但不是完全排列。

你可以使用冒泡排序(引用https://en.wikipedia.org/wiki/Bubble_sort或者cs50的讲座),我无法提供冒泡排序的代码,因为它违反了类(class)的荣誉准则。

关于CS50x pset3(为什么我的程序没有通过Check50?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41064809/

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