程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 循環隊列(C語言版)

循環隊列(C語言版)

編輯:關於C語言

循環隊列(C語言版)


#include 
using namespace std;

#define MAXSIZE 50
typedef int QueueElementType; 
typedef struct 
{
	QueueElementType elem[MAXSIZE];
    int front;      //指向當前隊頭元素
    int rear;       //指向隊尾元素的下一個位置
}SeqQueue;

void InitQueue(SeqQueue &Q);
void InputQueue(SeqQueue &Q);
bool EnterQueue(SeqQueue &Q,QueueElementType x);
QueueElementType DeleteQueue(SeqQueue &Q);
QueueElementType BackQueue(SeqQueue Q);//返回隊尾元素
bool IsFull(SeqQueue Q);
bool IsEmpty(SeqQueue Q);
void OutputQueue(SeqQueue Q);
int  QueueLength(SeqQueue Q);

int main()
{
    int x;
    SeqQueue q;
	InitQueue(q);
    InputQueue(q); 
    x = BackQueue(q); 
    cout<<"隊尾元素為:"<>m;
    while(m!=-1)
    {
        if(IsFull(Q))
            cout<<"當前隊列已滿,無法插入"<>m;
        }
        
    }   
}

bool EnterQueue(SeqQueue &Q,QueueElementType x)
{
    if((Q.rear+1)%MAXSIZE == Q.front)
        return false;
    Q.elem[Q.rear] = x;
    Q.rear = (Q.rear+1)%MAXSIZE;
    return true;
}

QueueElementType DeleteQueue(SeqQueue &Q)
{
    if(IsEmpty(Q))
    {
        cout<<"當前隊列為空,出隊列失敗!"<

 

\

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved