数据结构(c语言)的队列有关问题,请高手帮忙!不知如何搞得那么多的异常!
数据结构(c语言)的队列问题,请高手帮忙!!!不知怎么搞得那么多的错误!!!
#include<stdio.h>
#include<stdlib.h>
#define Elemtype int
#define Q (*qe)
struct quenode
{
Elemtype data;
struct quenode *next;
}*p,*s,*h;
struct quefre
{
struct quenode *front, *rear;
};
void main(){
struct quefr *que;
int x,core;
void insert(quefr *que, x);
void creat(quefr *qe);
void outlin( quefr *qq);
do{
printf("a= ")
printf(" 主菜单 ");
printf(" 创建新队列");
scanf("%d",&core);
switch(core){
case 1:{
q=(struct quefr )malloc(sizeof(struct quefr ) );
creat(que);
outlin(que);
}break;
}
}while(core<=4);
}
void outlin(struct quefr *qq){
p=qq.front->next;
while(p!=NULL){
printf("p=%d",p->data);
p=p->next;
}
printf("\n outend \n");
}
void insert(struct quefr *que,int x){
s=(struct *quenode)malloc(sizeof(struct quenode));
s->data=x;
s->next=NULL;
Q.rear->next=s;
Q.rear=s;
}
void creat(struct quefr *qe){
int i,n,x;
printf("n=%d");
scanf("%d",&n);
h=(struct *quenode)malloc(sizeof (struct quenode));
h->next=NULL;
Q.front=h;
Q.rear=h;
for(i=1;i<=n;i++){
scanf("%d",&x);
insert(qe,x);
}
}
------解决方案--------------------
改好了,有其他问题加我Q:506341588
#include<stdio.h>
#include<stdlib.h>
#define Elemtype int
#define Q (*qe)
struct quenode
{
Elemtype data;
struct quenode *next;
}*p,*s,*h;
struct quefre
{
struct quenode *front, *rear;
};
void main(){
struct quefr *que;
int x,core;
void insert(quefr *que, x);
void creat(quefr *qe);
void outlin( quefr *qq);
do{
printf("a= ")
printf(" 主菜单 ");
printf(" 创建新队列");
scanf("%d",&core);
switch(core){
case 1:{
q=(struct quefr )malloc(sizeof(struct quefr ) );
creat(que);
outlin(que);
}break;
}
}while(core<=4);
}
void outlin(struct quefr *qq){
p=qq.front->next;
while(p!=NULL){
printf("p=%d",p->data);
p=p->next;
}
printf("\n outend \n");
}
void insert(struct quefr *que,int x){
s=(struct *quenode)malloc(sizeof(struct quenode));
s->data=x;
s->next=NULL;
Q.rear->next=s;
Q.rear=s;
}
void creat(struct quefr *qe){
int i,n,x;
printf("n=%d");
scanf("%d",&n);
h=(struct *quenode)malloc(sizeof (struct quenode));
h->next=NULL;
Q.front=h;
Q.rear=h;
for(i=1;i<=n;i++){
scanf("%d",&x);
insert(qe,x);
}
}
------解决方案--------------------
改好了,有其他问题加我Q:506341588
- C/C++ code
#include<stdio.h> #include<stdlib.h> #define Elemtype int #define Q (*que) struct quenode { Elemtype data; struct quenode *next; }*p,*s,*h; struct quefre { struct quenode *front, *rear; }; void main() { struct quefre *que; int core; void insert(quefre *que, int x); void creat(quefre *que); void outlin(quefre *qq); do{ printf(" 主菜单 "); printf(" 创建新队列"); scanf("%d",&core); switch(core) { case 1: { que=(struct quefre*)malloc(sizeof(struct quefre) ); creat(que); outlin(que); } break; } }while(core<=4); } void outlin(struct quefre *qq){ p=(*qq).front->next; while(p!=NULL){ printf("p=%d",p->data); p=p->next; } printf("\n outend \n"); } void insert(struct quefre *que,int x) { s=(struct quenode*)malloc(sizeof(struct quenode)); s->data=x; s->next=NULL; Q.rear->next=s; Q.rear=s; } void creat(struct quefre *que){ int i,n,x; printf("请输入n:"); scanf("%d",&n); h=(struct quenode*)malloc(sizeof (struct quenode)); h->next=NULL; Q.front=h; Q.rear=h; printf("请输入队列元素:"); for(i=1;i<=n;i++){ scanf("%d",&x); insert(que,x); } }