| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1545 人关注过本帖
标题:关于数据结构的删除运算及插入运算
只看楼主 加入收藏
你好,老表
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-12-6
结帖率:0
收藏
 问题点数:0 回复次数:1 
关于数据结构的删除运算及插入运算
#include <stdio.h>
#define  MAXSIZE 50
#define A 5
#define B 6
#define C 7
typedef int DataType;
typedef struct{
    DataType data[MAXSIZE];
    int length;
}SqList;
void outputSqList(SqList L)
{
        int i;
    for(i=0;i<L.length;i++)
        printf("%d\t",L.data[i]);
    printf("\n");
}
void InitSqList(SqList &L)
{
    L.length=0;
}
void InsertSqList(SqList &L,int i,DataType x)
{
    int j;
    if(i==L.length)
    {
        printf("\n顺序表已满,无法插入其他元素!");
        return;
    }
    if(i<1||i>L.length)
    {
        printf("\n插入的位置有误!");
        return;
    }
    for(j=L.length-1;j>=i-1;j--)
    {
        L.data[j+1]=L.data[j];
        L.data[i-1]=x;
        L.length++;
    }
}//插入运算
void DeleteSqList(SqList &L,int i)
{
    int j;
    if(L.length==0)
    {
        printf("\n顺序表为空,无法删除!");
        return;
    }
    if(i<1||i>L.length)
    {
        printf("\n指定的删除位置不存在!");
        return;
    }
    for(j=i;j<L.length;j++)
    {
        L.data[j]=L.data[j+1];
        L.length--;   
    }
}//删除运算
int main()
{
    SqList(L);
    int i;
   
    for(i=1;i<=10;i++)
    InsertSqList(L,i,i);
    outputSqList(L);
   
    DeleteSqList(L,A);
    printf("删除第%d个元素后:\n",A);
    outputSqList(L);
   
    printf("在第%d个位置插入%d后:\n",B,C);
    InsertSqList(L,B,C);
    outputSqList(L);
    return 0;
   
}
 






请问为什么停止运行了?
搜索更多相关主题的帖子: include 元素 
2017-03-05 15:54
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:0 



粗粗看了一下  
程序代码:
for(j=i;j<L.length;j++)
    {
        L.data[j]=L.data[j+1];
        L.length--;  

    }
}//删除运算
你把L.lenth--放到循环里面,那么执行一次删除运算之后L.lenth就不只是减少1了.
插入运算的部分也是如此。。。

另外我看不懂
int main()
{
    SqList(L);//这是什么鬼?我理解不了。如无意外停止运行的原因就在于此。SqList是个结构体类型名,后面跟个小括号,里面带个变量名。。貌似没这个语法


φ(゜▽゜*)♪
2017-03-06 07:26
快速回复:关于数据结构的删除运算及插入运算
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016996 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved