| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1012 人关注过本帖
标题:利用线性表的插入,实现数组插入
只看楼主 加入收藏
gaoce227
Rank: 4
来 自:山东
等 级:业余侠客
帖 子:134
专家分:218
注 册:2008-4-5
收藏
 问题点数:0 回复次数:2 
利用线性表的插入,实现数组插入
本人初学数据结构,就遇到了难题。这个代码有一个警告,请帮我一下,怎样才运行出来。谢谢



#define LIST_INIT_SIZE 100
#define LISTINCREMENT  10
#include<stdio.h>
#include<malloc.h>
 typedef struct
    {
        char *elem;
        int length;
        int listsize;
    }SqList;
int InitList_Sq(SqList &L);
int ListInsert_Sq(SqList &L,int i,char e);
void main()
{
    int m;
    char c;
    SqList *aa=new SqList[7];
    InitList_Sq(aa[7]);
    printf("输入被插入数组:\n");
    for(int s=0;s<7;s++)
        scanf("%c",&aa[s]);
    printf("输入待插入字符:\n");
    scanf("%c",c);
    ListInsert_Sq(aa[7],m=4,c);
        for(int j=0;j<8;j++)
            printf("%c",aa[j]);
}
int InitList_Sq(SqList &L){
    L.elem=(char *)malloc(LIST_INIT_SIZE *sizeof(char));
    if(!L.elem)return -2;
    L.length=0;
    L.listsize=LIST_INIT_SIZE;
    return 1;
}
int ListInsert_Sq(SqList &L,int i,char e)
{
    if(i<i || i>L.length+1)return 0;
    if(L.length>=L.listsize){
        char *newbase=(char *)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(char));
        if(!newbase)return -2;
        L.elem=newbase;
        L.listsize+=LISTINCREMENT;
    }
    char *q=&(L.elem[i-1]);
    char *p;
    for(p=&(L.elem[L.length-1]);p>=q;--p)*(p+1)=*p;
    *q=e;
    ++(L.length);
    return 1;
}
搜索更多相关主题的帖子: 线性 
2008-09-27 08:29
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
scanf("%c",&c);//你是指这行吧...
没写 &

2008-09-27 22:49
gaoce227
Rank: 4
来 自:山东
等 级:业余侠客
帖 子:134
专家分:218
注 册:2008-4-5
收藏
得分:0 
回复 2# blueboy82006 的帖子
写了也不行
2008-09-28 00:05
快速回复:利用线性表的插入,实现数组插入
数据加载中...
 
   



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

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