jila_68
سه شنبه 31 فروردین 1389, 22:02 عصر
سلام
میشه مشکل برنامه ای رو که نوشتم بگید و بگید که چرا درست کار نمی کنه
این برنامه نام و شماره دانشجویی n دانشجو رو میگیره و در یک لیست پیوندی یکطرفه قرار میده تا اینجا که درست کار میکنه ولی حالامن می خوام یه شماره دانشجویی بهش بدم و اون رو توی لیست پیداکنه اگه باشه حذفش کنه اگه نباشه یه پیغام بده ولی این کدی که من نوشتم میاد از اون عنصر به بعد رو برام چاپ میکنه
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
struct node{
char name[30];
int stno;
node *link;
}*p,*q,*start,*temp;
int main()
{
clrscr();
int n,i,num;
start=NULL;
cout<<"please entera number=";
cin>>n;
for (i=1;i<=n;i++)
if (start==NULL)
{
p=new(node);
cout<<"please enter a student 1's name=";
gets(p->name);
cout<<"please enter a 1's stno=";
cin>>p->stno;
start=p;
}
else
{
q=new(node);
cout<<"please enter a student "<<i<<"'s name=";
gets(q->name);
cout<<"please enter student "<<i<<"'s stno=";
cin>>q->stno;
p->link=q;
q->link=NULL;
p=q;
}
cout<<"please enter a number student=";
cin>>num;
p=start;
while(start != NULL)
{
if(start->stno==num)
{
p->link=start->link;
p->link=NULL;
delete p;
}
else cout<<"not found";
start=start->link;
p=start;
for( ;p; )
{
cout<<p->name<<"->"<<p->stno<<endl;
p=p->link;
}
}
getch();
return 0;
}
میشه مشکل برنامه ای رو که نوشتم بگید و بگید که چرا درست کار نمی کنه
این برنامه نام و شماره دانشجویی n دانشجو رو میگیره و در یک لیست پیوندی یکطرفه قرار میده تا اینجا که درست کار میکنه ولی حالامن می خوام یه شماره دانشجویی بهش بدم و اون رو توی لیست پیداکنه اگه باشه حذفش کنه اگه نباشه یه پیغام بده ولی این کدی که من نوشتم میاد از اون عنصر به بعد رو برام چاپ میکنه
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
struct node{
char name[30];
int stno;
node *link;
}*p,*q,*start,*temp;
int main()
{
clrscr();
int n,i,num;
start=NULL;
cout<<"please entera number=";
cin>>n;
for (i=1;i<=n;i++)
if (start==NULL)
{
p=new(node);
cout<<"please enter a student 1's name=";
gets(p->name);
cout<<"please enter a 1's stno=";
cin>>p->stno;
start=p;
}
else
{
q=new(node);
cout<<"please enter a student "<<i<<"'s name=";
gets(q->name);
cout<<"please enter student "<<i<<"'s stno=";
cin>>q->stno;
p->link=q;
q->link=NULL;
p=q;
}
cout<<"please enter a number student=";
cin>>num;
p=start;
while(start != NULL)
{
if(start->stno==num)
{
p->link=start->link;
p->link=NULL;
delete p;
}
else cout<<"not found";
start=start->link;
p=start;
for( ;p; )
{
cout<<p->name<<"->"<<p->stno<<endl;
p=p->link;
}
}
getch();
return 0;
}