1樓:匿名使用者
你的**是想把front到rear的值全部輸出但是你下面的操作自己檢查一下沒有改變front的值,也沒有改變rear的值,所以front!=rear是死迴圈
如果好一點的話
void printqueue(linkqueue *q)/*依次輸出佇列*/
while(q->front!=q->rear)/*老師告訴我說是這裡的while是死迴圈,為什麼是死迴圈呢,不是很懂,請細說。請幫我改為正確的**,謝謝。*/
//exit(0);
}試試可不可以,不行再追問
2樓:馮老師(必果學院
黑色的提示框是程式執行結果視窗,不是錯誤的視窗**錯誤說明如下:
while(q->front!=q->rear)//在本迴圈體之中,q->front q->rear的值始終沒有變化
//故而在這裡肯定是乙個死迴圈
//改正後的**如下:
qnode* s = q->front;
while(s!=q->rear)
另外,所有的函式當中不應該有exit
exit是乙個系統函式,表示結束程式,而不是退出函式如果需要退出函式可以使用return來達到該目的
資料結構(使用c語言)佇列
3樓:
#include "stdio.h"
#include "malloc.h"
#include "stdlib.h"
#include "conio.h"
#define max 80
typedef struct
seque;
seque *init_seque()
int empty_seque(seque *s)int in_seque(seque *s,int x)}int out_seque(seque *s,int *x)}void print_seque(seque *s)}void main()
}while(k!=0);}
4樓:金魚
對順序迴圈佇列,常規的設計方法是使用隊尾指標和隊頭指標,隊尾指標用於指出當前胡隊尾位置下標,隊頭指標用於指示當前隊頭位置下標。現要求:
(1)設計乙個使用隊頭指標和計數器胡順序迴圈迴圈佇列抽象資料型別,其中包括:初始化,入佇列,出佇列,取隊頭元素肯判斷佇列是否非空;
#include "stdio.h"
#include "malloc.h"
#include "stdlib.h"
#include "conio.h"
#define max 80
typedef struct
seque;
seque *init_seque()
int empty_seque(seque *s)int in_seque(seque *s,int x) }int out_seque(seque *s,int *x)}void print_seque(seque *s)}void main()
}while(k!=0);}
資料結構C語言,資料結構和C語言有什麼區別?
typedef struct qnode qnode,queueptr 定義兩個新資料型別qnode,queueptr,相當於 typedef struct qnode qnode typedef struct qnode queueptr 使用方法 qnode qdata struct qnode...
資料結構c語言版嚴蔚敏編寫的大學期末考試卷
怎麼學習資料結構 嚴蔚敏的c語言版 談談如何學習資料結構 1.如果你沒有學過c語言,或者c語言學的不好的時候內把資料結構當成容一本數學書來學,它所講述的都是一些簡單的圖論。在你的大腦中的主線不能丟失 線性結構,樹結構和圖結構。當你不再考慮複雜的程式設計時,僅僅研究個個離散點之間的關係,似乎資料結構也...
C語言資料結構演算法和C 資料結構演算法有什麼區別嗎??進來看看
你就直接學c 也應該要把c語言搞清楚,c語言的 寫起來要比c 繁瑣一些,不過學習的時候也理解更深刻。不用換,演算法 資料結構是程式設計的 核心,無論什麼語言 所用到的演算法 資料結構是內 一樣的容 唯一的影響可能是書裡一些c語言的 你可能不太懂 會對你的學習有一定的影響,不過影響不大 c 和c語言 ...