我想用C语言来写一个简单的链式队列,但是一直报错

我想用C语言来写一个简单的链式队列,但是一直报错,应该是指针没学好,在q->front=NULL就出错了,麻烦大佬们能提示一下吗?非常感谢!

#include<stdio.h>
#include<stdlib.h> 
struct node{
    int a;
    struct node* next;
};

typedef struct node* ptrq;

struct pn{
    struct node* front;
    struct node* rear;
};



typedef struct pn* Queue;

void makempty(struct pn** q);

void addq(struct pn** q);

void delqueue(struct pn** q);

int main()
{
    Queue q;
    q->front=NULL;
    q->rear=NULL;
    for(int i=0;i<2;i++)
    addq(&q);
    delqueue(&q);
 } 

void addq(struct pn** q)
{
    int num;
    ptrq mid;
    mid=(ptrq*)malloc(sizeof(struct node));
    printf("please enter the num you want to enter:\n");
    scanf("%d",&num);
    mid->a=num;
    mid->next=NULL;
    if(!(*q)->front)
    {
        (*q)->rear=mid;
        (*q)->front=mid;
    }
    else
    {
        (*q)->rear->next=mid;
        (*q)->rear=(*q)->rear->next;
    }
}

void makempty(struct pn** q)
{
    (*q)->front=NULL;
    (*q)->rear=NULL;
}

void delqueue(struct pn** q)
{
    int num,i=1;
    printf("enter the num you want to delete:\n");
    scanf("%d",&num);
    ptrq mid;
    mid=(*q)->front;
    while(mid->a!=num||!mid)
    {
        mid=mid->next;
        i++;
    }
    if(mid==NULL)
    printf("the num you enter is not found!\n");
    else
    printf("the num you enter is located in %d",i);
}

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

6
链式队列的一个问题,为什么第一种可以运行,第二种没有报错但是运行会中断?
1
C++实现链式队列,在Xcode中遇到Thread 1: EXC_BAD_ACCESS (code=1, address=0x8)
0
顺序存储循环队列 希望大佬帮我回答一下 谢谢谢
1
双队列实现堆栈方面的一个问题,这里的队列是优先级队列的话怎么实现,C语言谢谢
0
使用循环链表实现一个双向队列并且实现出队列和进队列的编程算法, 使用C语言的编程?
0
一个队列的表示方式问题,实现队列的入队和出队,要求是使用的C语言的程序实现
0
三元组队列的查询的算法,采用C语言编程的技术的实现的方式
1
特殊的队列~删除队列的中间元素
0
循环队列的旋转的一个算法问题怎么利用C语言的程序的编写来求解的
1
队列安排,用单链表写的,想问一下代码哪里有问题
0
使用数据结构里面的队列的方式来实现,怎么采用C语言的程序编写的技术编写的算法?
1
来个阻塞队列的代码实现,谢谢
1
C# 在webApi中写rabbitMQ队列的消费者,无法进入consumer.Received += (model, ea) => { }
0
设计一个带有优先级的队列的问题,运用的是C语言的程序代码编写的设计的思维的方式?
0
数据结构队列问题的综合的运用计算,怎么采用C语言的程序设计的方法来编写的代码实现算法的求解?
2
数据结构图(用C语言)当中为什么邻接表用结构体变量报错,用邻接矩阵不报错?
0
双倍的队列的问题,这种数据结构的程序用C语言的代码如何才能正确地实现的呢?
1
求一个代码c语言实现图的深度遍历(递归)、非递归算法以及实现图的广度遍历(队列)
0
牛的排序的队列的问题,怎么使用C语言的程序的编写的代码的形式的具体的代码去实现
0
构造队列的一个算法的问题,怎么采用C语言的程序的设计的编写的过程的技术实现的