#include "stdio.h" #define maxsize 50 typedef int elemtype;
typedef struct {elemtype data[maxsize]; int front,rear; } queue; elemtype e;
/***********************************************/ void init_queue(queue *h) {h->front=h->rear=0; } /********************************************/ int empty_queue(queue h) {return h.front==h.rear;} /********************************************/ int full_queue(queue h) {return (h.rear+1)%maxsize==h.front;} /********************************************/ void append_queue(queue *p) {int i,n,line; clrscr(); line=10; gotoxy(20,line); printf("How many numbers which you will append ?"); scanf("%d",&n); i=0; while(i<n) { if(full_queue(*p)) {clrscr(); gotoxy(16,11); printf("Sorry ! The queue is full ! Cann't append it!"); break; } else { line=line+2; if(line>24) {clrscr();line=2;} gotoxy(20,line); printf("Please input NO.%d number:",i+1); scanf("%d",&e); p->rear=(p->rear+1)%maxsize; p->data[p->rear]=e; } i++; } getch(); } /*****************************************************/ void output(queue h) {int i,num=0; clrscr(); gotoxy(20,10); if(empty_queue(h)) printf("Sorry ! The queue is emtpy ! "); else {printf(" "); for(i=h.front;i!=h.rear;) {i=(i+1)%maxsize; printf("%5d",h.data[i]);num++; if(num%10==0)printf(" "); } } gotoxy(20,22); printf("Press Any key to Return ."); getch(); } /********************************************/ void delete_queue(queue *h) { clrscr(); gotoxy(20,11); if(empty_queue(*h)) printf("Sorry ! The queue is emtpy ! "); else { e=h->data[h->front+1]; h->front=(h->front+1)%maxsize; printf("The element that came out is %d. ",e); } getch(); } /********************************************/ void getelem(queue h,elemtype *p) { clrscr(); gotoxy(20,11); if(empty_queue(h)) printf("Sorry ! The queue is emtpy ! "); else { *p=h.data[h.front+1]; printf("The elemment which you get is %d.",*p); } getch(); } /********************************************/ void quit() { clrscr(); gotoxy(20,12); printf("e use it again ! "); getch(); exit(0); } /********************************************/ void main() { int n; queue qe; init_queue(&qe);
while(1) {clrscr(); gotoxy(20,7); printf(" ===== menu ===== "); gotoxy(20,9); printf("******************************** "); gotoxy(20,10);printf("* 1. append 2. deleted * "); gotoxy(20,11);printf("* 3. getelem 4. output * "); gotoxy(20,12);printf("* 0. quit * "); gotoxy(20,13);printf("******************************** "); gotoxy(20,16); printf("Please input your choice : "); scanf("%d",&n); while(n<0||n>4) {printf(" Input Error ! Please input again ! "); scanf("%d",&n); } switch(n) {case 1:append_queue(&qe); break; case 2:delete_queue(&qe); break; case 3:getelem(qe,&e); break; case 4:output(qe); break; case 0:quit(); } } }
乐凝网络怎么样?乐凝网络是一家新兴的云服务器商家,目前主要提供香港CN2 GIA、美国CUVIP、美国CERA、日本东京CN2等云服务器及云挂机宝等服务。乐凝网络提供比同行更多的售后服务,让您在使用过程中更加省心,使用零云服务器,可免费享受超过50项运维服务,1分钟内极速响应,平均20分钟内解决运维问题,助您无忧上云。目前,香港HKBN/美国cera云服务器,低至9.88元/月起,支持24小时无理...
数脉科技六月优惠促销发布了!数脉科技对香港自营机房的香港服务器进行超低价促销,可选择30M、50M、100Mbps的优质bgp网络。更大带宽可在选购时选择同样享受优惠,目前仅提供HKBGP、阿里云产品,香港CN2、产品优惠码续费有效,仅限新购,每个客户可使用于一个订单。新客户可以立减400元,或者选择对应的机器用相应的优惠码,有需要的朋友可以尝试一下。点击进入:数脉科技官方网站地址数脉科技是一家成...
官方网站:点击访问王小玉网络官网活动方案:买美国云服务器就选MF.0220.CN 实力 强 强 强!!!杭州王小玉网络 旗下 魔方资源池 “我亏本你引流活动 ” mf.0220.CNCPU型号内存硬盘美国CERA机房 E5 2696v2 2核心8G30G总硬盘1个独立IP19.9元/月 续费同价mf.0220.CN 购买湖北100G防御 E5 2690v2 4核心4G...