資源簡介
由用戶輸入n個10以內的數,每輸入i(0~9),就把它插入到第i號隊列中,最后把10個隊列中非空隊列,按隊列號從小到大的順序串接成一條鏈,并輸出該鏈的所有元素。
代碼片段和文件信息
#include
using?namespace?std;
#define???MAXSIZE???1000?
struct???queue?
{?
?????????int???data[MAXSIZE];?
?????????int???frontrear;?
?????????queue???*next;?????????//隊列中指向下一個隊列的指針?
}*q[10];???????????????????????//建立10個隊列型指針?
int???main()?
{???????
????????queue???*qhead*r*pelem*qelem;?
????????qhead=(queue???*)malloc(sizeof(queue));?
????????qhead->?next=NULL;?????????????????//建立隊列鏈頭結點qhead?
????????r=qhead;?????????????????????????????????
????????for(int?j=0;j?<10;j++)?
????????{?
????????????q[j]=(queue???*)malloc(sizeof(queue));?
????????????q[j]->?front=q[j]->?rear=0;?
????????????r->?next=q[j];?
????????????r=q[j];???????????????????????//尾插法建立隊列鏈?
????????}?
????????r->?next=NULL;?
????????int???i;?
cout<<“輸入數字0~9,用-1結束“< while(scanf(“%d“&i)==1&&(i+1))?????????????????//由用戶輸入i?
????????{?
??????????????q[i]->?rear=(q[i]->?rear+1)%MAXSIZE;?????????//將i入隊到第i號隊列中?
?????????
評論
共有 條評論