/* 烟台大学计算机学院 文件名称:xiangmu.cpp 作者:张延飞 完成日期:2017年10月23日 问题描述:设从键盘输入一整数序列a1,a2,…an,试编程实现: 当ai>0时,ai进队,当ai<0时,将队首元素出队,当ai=0时,表示输入结束。 要求将队列处理成环形队列,使用算法库中定义的数据类型及算法,程序中只包括一个函数(main函数),入队和出队等操作直接写在main函数中即可。 当进队出队异常(如队满)时,要打印出错信息。 输入描述:整数 输出描述:无 用到环形顺序队算法库sqqueue.h */ #include <stdio.h> #include <malloc.h> #include "../sqqueue.h" int main() { SqQueue *p; int x; InitQueue(p);//初始化队列 int ai; while(1) { printf("输入a值(输入正数进队,负数出队,0结束):"); scanf("%d",&ai); if(ai>0)//判断a[i]是否大于0 { if(!enQueue(p,ai)) { printf("队满无法入队\n"); } } if(ai<0) { if(!deQueue(p,x)) { printf("队空无法出队\n"); } } if(ai==0) { break; } } } 运行结果: 学习心得: 学会了用环形队列的算法处理问题