| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 402 人关注过本帖
标题:程序错误求助
只看楼主 加入收藏
lwp001
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2009-5-12
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:1 
程序错误求助
插入的时候总是不对  求大虾们指正下 谢谢!!!
#include<iostream.h>
#include"malloc.h"
struct node
{
   int data;

  struct node *next;
};
 struct node *next,*null,*p,*L,*s,*q;
 int j,e,n,k;
  
 void create( )
{

   
   L=(struct node *)malloc(sizeof(struct node));
   L->next=null;
   s=L;
   cout<<"请输入链表的元素(要求是整型,以-1结束输入):"<<endl;
   cin>>k;
   while(k!=-1)
   {
      
  p=(struct node *)malloc(sizeof(struct node));
  p->data=k;
  s->next=p;
  s=p;
   cin>>k;
   
   }
  p->next=null;
  
}

void showlianbiao()
{
cout<<"您所建立的链表如下:"<<endl;
 p=L->next;
  j=0;
 while(p)
 {
cout<<p->data<<" ";
p=p->next;
j++;
}
cout<<"链表元素个数:"<<j<<endl;
}
void insert( int i,int e)
{     
cout<<"输入插入的位置i:"<<endl;
       cin>>i;
       cout<<"输入要插入的元素e:"<<endl;
       cin>>e;
    if(i<1||i>j) cout<<"插入位置错误!"<<endl;
      
    else {
           n=0;
        while(n==i)
        {  
        p=p->next;n++;
        }  
        q=(struct node *)malloc(sizeof(struct node));
        q->data=e;
        q->next=p->next;
        p->next=q;
    }
    p=L->next;
    while(p)
    {
    cout<<p->data<<" ";
    p=p->next;
    }
        
}
int main()
{
   int i;
 cout<<"1--建立链表:"<<endl;
cout<<"2--显示链表:"<<endl;
cout<<"3--插入元素:"<<endl;
cout<<"4--删除元素:"<<endl;
 cout<<"请选择:"<<endl;
 cin>>i;
 switch(i){
 case 1: create(); main();break;
case 2: showlianbiao();main();break;
case 3: insert(i,e);main();break;
case 4: cout<<" d"<<endl;main();break;
    }
return 0;
}



[ 本帖最后由 lwp001 于 2009-10-12 17:03 编辑 ]
搜索更多相关主题的帖子: 程序错误 
2009-10-12 17:02
shl305
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:36
专家分:121
注 册:2009-3-13
收藏
得分:10 
#include<iostream.h>
#include"malloc.h"
struct node
{
   int data;

  struct node *next;
};
struct node *next,*null,*p,*L,*s,*q;
int j,e,n,k;
  
void create( )
{

   
   L=(struct node *)malloc(sizeof(struct node));
   L->next=null;
   s=L;
   cout<<"请输入链表的元素(要求是整型,以-1结束输入):"<<endl;
   cin>>k;
   while(k!=-1)
   {
      
  p=(struct node *)malloc(sizeof(struct node));
  p->data=k;
  s->next=p;
  s=p;
   cin>>k;
   
   }
  p->next=null;
  
}

void showlianbiao()
{
cout<<"您所建立的链表如下:"<<endl;
p=L->next;
  j=0;
while(p)
{
cout<<p->data<<" ";
p=p->next;
j++;
}
cout<<"链表元素个数:"<<j<<endl;
}
void insert( int i,int e)
{     
cout<<"输入插入的位置i:"<<endl;
       cin>>i;
       cout<<"输入要插入的元素e:"<<endl;
       cin>>e;
    if(i<1||i>j) cout<<"插入位置错误!"<<endl;
      
    else {
           n=0;
        p = L->next; //加一句
        while(n!=i) //条件写反了
        {  
        p=p->next;n++;
        }  
        q=(struct node *)malloc(sizeof(struct node));
        q->data=e;
        q->next=p->next;
        p->next=q;
    }
    p=L->next;
    while(p)
    {
    cout<<p->data<<" ";
    p=p->next;
    }
        
}
int main()
{
   int i;
cout<<"1--建立链表:"<<endl;
cout<<"2--显示链表:"<<endl;
cout<<"3--插入元素:"<<endl;
cout<<"4--删除元素:"<<endl;
cout<<"请选择:"<<endl;
cin>>i;
switch(i){
case 1: create(); main();break;
case 2: showlianbiao();main();break;
case 3: insert(i,e);main();break;
case 4: cout<<" d"<<endl;main();break;
    }
return 0;
}

2009-10-12 21:56
快速回复:程序错误求助
数据加载中...
 
   



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

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