| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 548 人关注过本帖
标题:哪位高手请帮我改一下,这个程序没有错误,但运行不出来,谢谢了!
只看楼主 加入收藏
松涛雨露
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2011-4-18
结帖率:50%
收藏
 问题点数:0 回复次数:3 
哪位高手请帮我改一下,这个程序没有错误,但运行不出来,谢谢了!
#include<iostream>

#define M 100
#define N 10
using namespace std;
typedef struct LNode{
    int *elem;
    int length;//当前长度
    int listsize;//当前分配的存储容量
}sqList;
struct LNode *InitList_sq(sqList *l);//新建顺序表L
 void GetElem_sq(sqList *l,int i,int e);//查找
void ListInsert_sq(sqList *l,int i,int e);//插入
int ListDelete_sq(sqList *l,int i,int e);//删除
 
int main ()
{
    int x,k,y,e;
    struct LNode *L;
    L=NULL;

      L=InitList_sq(L);//新建顺序表L
      for(int c=0;x!=' ';c++){  //初始化
           cin>>x;
           L->elem[c+1]=x;
       }
       cin>>k;
       if(k<1||k>M) exit (0);
       GetElem_sq(L,k,e);//查找
       ListInsert_sq(L,k, e);//插入
       for(int j=0;j<M+1;j++){
           cout<<L->elem[j+1]<<" ";
           cout<<endl;
       }
       y=ListDelete_sq(L,k, e);//删除
       cout<<y<<endl;
       for(int f=0;f<M;f++){
           cout<<L->elem[f+1]<<" ";
           cout<<endl;
       }
       return 0;
}
struct LNode *InitList_sq(sqList *l)                        //构造空的L
{

    l->elem=(int*)malloc(M *sizeof(int));
    if(!l->elem)  exit (0);
    l->length=0;
    l->listsize=M;
    return l;
   
}
void GetElem_sq(sqList *l,int i,int e)            //查找,用e返回L中第a个元素的值
{
    struct LNode *p;
     p=l;
     if(!p->elem) exit (0);
     for( int j=0;j<i;j++)
        p->elem[j+1];
     e=p->elem[j+1];
     cout<<e<<endl;


   
}
void ListInsert_sq(sqList *l,int i,int e)           //在L中第a个位置之前插入新的元素数据e,L的长度加1
{
    int *q,*p,*s,j=1;
    //q=L.elem;

    if(i<1||i>l->length+1) exit (0);
    if(l->length>=l->listsize){
        s=(int*)realloc(l->elem,(l->listsize+N)*sizeof(int));
        if(!s) exit(0);
        l->elem=s;
        l->listsize+=N;

        q=&(l->elem[i-1]);
        for(p=&(l->elem[l->length-1]);p>=q;--p)
            *(p+1)=*p;
        *q=e;
        l->length++;
        //return l;
    }

}
int ListDelete_sq(sqList *l,int i,int e)          //删除L的第a个数据元素,并用e返回其值,L的长度减1
{
    int *q,*p,j=0;



    if((i<1)||(i>l->length)) exit (0);
       q=&(l->elem[i-1]);
       e=*q;
                                                           
    //cout<<e<<endl;
    p=l->elem+l->length-1;
    for(++q;q<=p;++q)
        *(q-1)=*q;
    free(q);
    l->length--;                                           //L 长度减一
    return e;
}
搜索更多相关主题的帖子: include 新建 
2011-04-23 18:16
默默学习
Rank: 4
等 级:业余侠客
帖 子:134
专家分:200
注 册:2010-6-22
收藏
得分:0 
居然没分。。
2011-04-23 19:42
松涛雨露
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2011-4-18
收藏
得分:0 
回复 2楼 默默学习
什么意思?麻烦你帮我改一改。。。谢谢。。。
2011-04-23 22:20
songkun123
Rank: 2
等 级:论坛游民
帖 子:19
专家分:15
注 册:2011-4-16
收藏
得分:0 
呵呵!
2011-04-24 09:25
快速回复:哪位高手请帮我改一下,这个程序没有错误,但运行不出来,谢谢了!
数据加载中...
 
   



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

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