C语言顺序表的输出代码00000

img

img

1.这个报错是啥意思,哪里出错了?
2.这个查找顺序表的代码有错误吗?

你的main是不是拼写错啦

main函数没有定义
或者把main写成了mian?
代码你只能看到一半,你问我有没有错误?

  1. 报错信息,提示 main() 函数名拼写有误或有其他错误,仔细检查那段代码。
  2. 查找顺序表的最小值代码,第19行:L.length--; 这行多余应删除,这个函数是查找最小值,不是删除一个顺序表的元素。
不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/214304
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:C语言实现二分法查找代码和顺序查找代码
  • 您还可以看一下 纪佳琪老师的机器学习之决策树理论与代码实践课程中的 决策树原生代码实现:数据集熵的计算小节, 巩固相关知识点
  • 除此之外, 这篇博客: 【汇编实战开发笔记】一段汇编代码如何“反编译”成C代码?中的 2.1 大家可能遇到的问题 部分也许能够解决你的问题。
  • 以下回答由chatgpt基于相关博客总结生成:

    答案:

    1.错误报告信息: 段错误(core dumped) 这个错误意味着程序访问了一个非法的内存地址,导致程序崩溃。

    2.查找顺序表的代码有错误。 错误是在循环的条件判断语句中,将i<=length改为i<length即可。因为数组下标是从0开始的,所以长度为n的数组的有效下标范围是0到n-1。将循环条件改为i<length可以避免访问超出数组界限的元素。

    更新后的代码如下:

    #include <stdio.h>
    
    void displayList(int list[], int length) {
        for(int i=0; i<length; i++){
            printf("%d ", list[i]);
        }
    }
    
    int main() {
        int list[5] = {1, 2, 3, 4, 5};
        displayList(list, 5);
        return 0;
    }
    

    请注意,问题是在循环条件判断语句中,因此只需要更新循环条件就可以修复这个错误。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^