第7周项目3 - 负数把正数赶出队列

来源:互联网 发布:淘宝经营地怎么改 编辑:程序博客网 时间:2024/05/22 07:02

问题及代码:

    /*           Copyright (c)2015,烟台大学计算机与控制工程学院           All rights reserved.           文件名称:第7周项目3 - 负数把正数赶出队列.cpp           作    者:魏永恒        完成日期:2015年10月23日          版 本 号:v1.0               问题描述:设从键盘输入一整数序列a1,a2,…an,试编程实现:               当ai>0时,ai进队,当ai<0时,将队首元素出队,当ai=0时,               表示输入结束。要求将队列处理成环形队列,               使用环形队列算法库中定义的数据类型及算法,               程序中只包括一个函数(main函数),入队和出队等操作直接在main函数中调用即可。               当进队出队异常(如队满)时,要打印出错信息。      输入描述:若干数据。     程序输出:若干数据。     */  
环形队列算法库

    #include <stdio.h>      #include <malloc.h>      #include "sqqueue.h"            int main()      {          ElemType a,x;          SqQueue *qu;    //定义队列          InitQueue(qu);  //队列初始化          while (1)          {              printf("输入a值(输入正数进队,负数出队,0结束):");              scanf("%d", &a);              if (a>0)              {                  if (!enQueue(qu,a))                      printf("  队列满,不能入队\n");              }              else if (a<0)              {                  if (!deQueue(qu, x))                      printf("  队列空,不能出队\n");              }              else                  break;          }          return 0;      }  
运行结果:

知识点总结:

环形队列的应用。

0 0