| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 393 人关注过本帖
标题:求大神帮忙看看线性表的插入
只看楼主 加入收藏
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
结帖率:70%
  问题点数:0  回复次数:3   
求大神帮忙看看线性表的插入
#include<stdio.h>
#include<stdlib.h>
#define LIST_INIT_SIZE 100
#define LISTNCREMENT 10
typedef struct{
int *elem;
int length;
int listsize;
}Sqlist;
//构造线性表

int main()
{
int i=0,j=0,k=0,t=0;
Sqlist l1,l2,l3;
l1.listsize=LIST_INIT_SIZE;
l2.listsize=LIST_INIT_SIZE;
l3.listsize=LIST_INIT_SIZE;
l1.elem=(int *)malloc(l1.listsize*sizeof(int));
l2.elem=(int *)malloc(l2.listsize*sizeof(int));
l3.elem=(int *)malloc(l3.listsize*sizeof(int));
//定义线性表的容量
printf("请输入l1的长度:\n");
scanf("%d",&l1.length);
//输入l1的长度
printf("请输入l2的长度:\n");
scanf("%d",&l2.length);
//输入l2的长度
printf("请输入l1的元素:\n");
for(i=0;i<l1.length;i++)
{
scanf("%d",&l1.elem[i]);
}
//输入l1的元素
printf("请输入l2的元素:\n");
for(j=0;j<l2.length;j++)
{
scanf("%d",&l2.elem[j]);
}
//输入l2的元素
l3.length=l2.length;
printf("请输入要插入的位置:\n");
for(k=0;k<l3.length;k++)
{
scanf("%d",&l3.elem);
}
//输入要插入的位置
l1.length=l1.length+l2.length;
for(i=0;i<l3.length;i++)
{
t=l3.elem[i];
for(j=l1.length;j<t;j--)
{
l1.elem[j-1]=l1.elem[j];
}
l1.elem[t]=l2.elem[i];
}
//将插入l1的位置后的元素统一向后移一位
//将l2的值插入到l1中
for(i=0;i<l1.length;i++)
{
printf("%d",l1.elem[i]);
}
return 0;
}
检查时没问题
但运行时出现 已停止工作
我没分了给不了分能帮忙看看谢谢啦
搜索更多相关主题的帖子: include 线性表 
2017-03-07 20:29
mnmn4429
Rank: 4
等 级:业余侠客
帖 子:64
专家分:245
注 册:2017-2-21
  得分:0 
不想知道你想干嘛,但是有一个地方有个错误就是,在
l3的时候,for 输入东西那儿,你把int 要加入一个数组里
肯定是不可以的, 你可以加个[k]
也就是&l3.elem[k]
2017-03-08 00:30
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
  得分:0 
回复 2楼 mnmn4429
我改了以后能运行了 但是为啥出现乱码 如输入l1中的元素为1 11 3 9 6,l2中的元素为2 3,选择插入的位置为2 3 结果就成了 1 11 2 3 6 -842150451 -842150451
2017-03-08 18:50
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
  得分:0 
回复 2楼 mnmn4429
我刚又改了改 现在好了 谢谢你了
2017-03-08 19:14
快速回复:求大神帮忙看看线性表的插入
数据加载中...
 
   



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

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