正在加载图片...
int DeQueue(SeqQueue *pQ, int *pe) 0)&&(pQ->front = pQ->rear)) return(0) *pe= pQ->element [pQ->front] pQ->front =(pQ->front +1)% MAXSIZE if(pQ->flag=1)//若原来是满队列,则出队一个后变为不满 pQ->fl void maino Seqqueue Q int e Init(&Q EnQueue(&Q, 10) EnQueue( &Q, 20) DeQueue(&Q, &e) printf("出队的元素是:%d\n",e) printf("队列中剩下的的元素是:") for(i =Qfront Q rear (i 1)%MAXSIZE) printf(%d\t",Q element [il) 3.9(1)将栈S中元素逆置 (2)将栈S中元素e删除 (3)将队列Q中元素逆置 补充练习: 1、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指 针,则当做出栈处理时,top变化为 A)top不变 B)top= C)top-- D)top++ 2、在具有n个单元的顺序存储的循环队列中,假定 front和rear分别为队头指针和队尾指针, 则判断队满的条件为 A) rear%n=front B)front%n+1=rear C)rear%n=front D)rear%n+1=front 3、一个中缀算术表达式为1+(3-x)*y,则其对应的后缀算术表达式为 A)13+x-y* B)13x+y*C)13x-y*+D)13xy-+ 4、在一个链队列中,假定 front和rear分别为队首和队尾指针,则插入*s结点的操作应执 行 A)front->next=s: front=s B)s->next=rear: rear=s} int DeQueue(SeqQueue *pQ, int *pe) { if((pQ->flag == 0)&&(pQ->front == pQ->rear)) return (0); *pe = pQ->element[pQ->front]; pQ->front = (pQ->front + 1) % MAXSIZE; if(pQ->flag == 1) //若原来是满队列,则出队一个后变为不满 pQ->flag = 0; return(1); } void main() { SeqQueue Q; int e, i; Init(&Q); EnQueue(&Q,10); EnQueue(&Q,20); EnQueue(&Q,30); DeQueue(&Q,&e); printf("出队的元素是:%d \n",e); printf("队列中剩下的的元素是:"); for(i = Q.front; i != Q.rear; i = (i + 1)%MAXSIZE) printf("%d\t",Q.element[i]); } 3.9 (1)将栈 S 中元素逆置 (2)将栈 S 中元素 e 删除 (3)将队列 Q 中元素逆置 补充练习: 1、在一个具有 n 个单元的顺序栈中,假定以地址低端(即 0 单元)作为栈底,以 top 作为栈顶指 针,则当做出栈处理时,top 变化为 。 A) top 不变 B) top=0 C) top-- D) top++ 2、在具有 n 个单元的顺序存储的循环队列中,假定 front 和 rear 分别为队头指针和队尾指针, 则判断队满的条件为 。 A) rear%n=front B) front%n+1=rear C) rear%n=front D)rear%n+1=front 3、一个中缀算术表达式为 1+(3-x)*y,则其对应的后缀算术表达式为 。 A) 1 3 +x –y* B) 1 3 x +-y * C)1 3 x –y *+ D) 1 3 x y -+* 4、在一个链队列中,假定 front 和 rear 分别为队首和队尾指针,则插入*s 结点的操作应执 行 。 A) front->next=s; front=s; B)s->next=rear; rear=s;
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有