`
ncgxcy211
  • 浏览: 31072 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

一个c语言数据结构的问题

阅读更多
我先不说什么,先看下面的代码:
cpp 代码
  1. void delete_pos_sequence_list(sequence_list *slt,int position)   
  2. {   
  3.   int i;   
  4.   if(slt->size==0)   
  5.   {   
  6.          printf("\n顺序表是空的!");   
  7.          exit(1);   
  8.   }   
  9.   if(position<0 | | position>=slt->size)   
  10.   {   
  11.         printfI("\n指定的删除位置不存在!");   
  12.         exit(1);   
  13.    }   
  14.   for(i=position;i< slt- >size-1;i--)   
  15.   {   
  16.      slt->a[i]=slt->a[i+1];   
  17.   }   
  18.   slt->size--;   
  19. }  

这是我从书上看到的一个数据结构的代码,主要是实现删除顺序表中的第position位置的节点。我看了很久总觉得这个代码有点问题,就是在第14行for语句中,那个i--应该是i++吧,要是i总减永远也比slt->size小啊。那么循环就一直下去,不会出来了啊。

请高手给小弟指明下,是不是有问题,还是我理解错误。谢谢了。

我看了下,有的地方显示有问题:第9行应该是:if (position<0 || position >=slt->size)  晕,在编辑里是正确的,显示出来是错的。主要是说的position必须不小与0或者不大于等于slt->size。

第14行看不到,应该是:for(i=position;i< slt- >size-1;i--)   

分享到:
评论
3 楼 ncgxcy211 2007-03-20  
恩,知道了,我也这样认为,呵呵。谢谢大家了。
2 楼 Arath 2007-03-19  
这个代码...
如果是书本上的实在是误人子弟了
for(i=position;i< slt- >size-1;i--)   
  {   
     slt->a[i]=slt->a[i+1];   
  }   
应该是i++, 但是更加有效的方法是用memcpy之类的库函数,这类函数会有优化,速度快
1 楼 simohayha 2007-03-19  
就应该是i++.

相关推荐

    C语言数据结构迷宫问题

    在给定的信息中,我们看到的是一个使用C语言实现的基于栈的数据结构来解决迷宫问题的示例。迷宫问题通常涉及到在一个二维网格中找到从起点到终点的有效路径,而这里的解决方案是通过广度优先搜索(BFS)或者深度优先...

    C语言数据结构图的遍历课程设计(附源码及说明书)

    在本课程设计中,我们将深入探讨C语言实现数据结构中的一个重要概念——图的遍历。图是一种非线性数据结构,由顶点和边组成,广泛应用于计算机科学的多个领域,如网络路由、社交网络分析等。本次设计的核心任务是...

    C语言数据结构——教程

    《C语言数据结构——教程》 C语言是计算机科学领域中的基础编程语言,以其高效、灵活和可移植性而闻名。在深入学习C语言的过程中,数据结构是不可或缺的一部分,它是理解算法和程序设计的关键。本教程将围绕C语言的...

    西安电子科技大学C语言数据结构PPT

    C语言数据结构PPT。。。西安电子科技大学上课专用PPt

    c语言数据结构(清华大学)

    学习C语言数据结构不仅能够加深对算法和数据结构理论的理解,还能够培养使用计算机解决问题的能力,这对于后续进行软件开发、系统设计等实际工作至关重要。正如上述描述所言,学数据结构的确需要耐心和细心,坚持...

    专家讲述C语言数据结构.rar_c 数据结构_c语言数据结构_数据结构

    总的来说,"专家讲述C语言数据结构"是一个全面的学习资源,它将帮助程序员提升其在C语言编程和数据结构设计与实现方面的能力。通过系统学习,程序员不仅可以解决具体问题,还能为更高级的软件开发打下坚实的基础。

    C语言数据结构实现二叉树的建立与遍历.cpp

    C语言数据结构实现二叉树的建立与遍历.cpp

    C语言数据结构库(队列,栈,链表,树的增删改查)

    本资料包提供了一套完整的C语言数据结构库,特别关注于队列、栈、链表和树这四种基本数据结构的增删改查操作。 1. 队列:队列是一种先进先出(FIFO)的数据结构,类似于现实生活中的排队。在这个库中,你可以找到...

    C语言描述的数据结构与算法教程

    数据结构与算法是计算机科学的基础,C语言作为一门强大的编程语言,被广泛用于描述和实现这些概念。本教程旨在帮助初学者理解数据结构和算法,并通过C语言进行实践。同时,教程还涉及到机器学习的基本算法,使学习者...

    c语言数据结构的队列实现

    c语言数据结构的队列实现,新建队列,入队列,出队列,删除队列

    《数据结构》(C语言版)教程

    2. **链表**:非连续存储的数据结构,每个节点包含数据和指向下一个节点的指针。链表分为单链表、双链表和循环链表,理解其插入、删除操作的实现。 3. **栈**:后进先出(LIFO)的数据结构,常用于函数调用、表达式...

    C语言数据结构与算法WORD版

    《C语言数据结构与算法》是一本深入探讨C语言编程中的数据组织和处理方法的教程。数据结构是计算机科学中的核心概念,它涉及到如何高效地存储和检索数据,而算法则是解决问题的步骤和方法,两者在编程中都起着至关...

    华中师范计算机874c语言数据结构 最全资料

    《874数据结构与C语言程序设计》是华中师范大学计算机科学专业考研的重要参考书目,涵盖了C语言和数据结构两大核心...在解决实际问题时,灵活运用所学的数据结构和C语言,这将对考研成绩和未来编程工作产生积极影响。

    【C语言数据结构 课程设计】一些常见常考的C语言数据结构算法源码(源代码+详细注释)

    【C语言数据结构 课程设计】一些常见常考的C语言数据结构算法源码(源代码+详细注释) 【优秀课程设计】主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。 ...

    c语言 数据结构 快速排序算法

    c语言版本的数据结构的快速排序算法,适用于新手学习

    C语言数据结构源代码

    这个“C语言数据结构源代码”压缩包提供了用C语言实现的数据结构基础操作,包括栈、队列、链表、查找和排序等关键概念。下面将对这些知识点进行详细阐述。 1. **栈(Stack)**:栈是一种后进先出(LIFO)的数据结构...

    C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.zip

    C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例...

    C语言与数据结构

    3)C语言数据类型丰富,具有现代语言的各种数据类型,用户还能扩充它,实现各种复杂的数据结构,完成各种问题的数据描述。 4)C语言是一种结构化程序设计语言,层次清晰,便于按模块化方式组织程序,易于调试和维护。C...

    c语言数据结构期末大作业-家族族谱管理

    c语言数据结构期末大作业-家族族谱管理 要求设计实现具有下列功能的家谱管理系统: (1)输入文件以存放最初家谱中各成员的信息,成员的信息中均应包含以下内容: 姓名、出生日期、婚否、地址、健在否、死亡日期...

    C语言 数据结构哈希表

    C语言数据结构 除留余数法 二次探测再散列解决冲突

Global site tag (gtag.js) - Google Analytics