问题及描述:
/*
*烟台大学计算机与控制工程学院
作者:郗小艺
完成日期:2016年10月8号
问题描述:设从键盘输入一整数序列a1,a2,…an,试编程实现:当ai>0时,ai进队,当ai<0时,将队首元素出队,当ai=0时,表示输
入结束。要求将队列处理成环形队列,使用算法库中定义的数据类型及算法,程序中只包括一个函数(main函数),入队和
出队等操作直接写在main函数中即可。当进队出队异常(如队满)时,要打印出错信息。
*/
头文件及功能函数详见 第七周-项目一 建立顺序环形队列算法库
main.cpp文件代码
#include "sqqueue.h"
int main()
{
ElemType a,x;
SqQueue *qu; //定义队列
InitQueue(qu); //队列初始化
while (1) //无限循环
{
printf("输入a值(输入正数进队,负数出队,0结束):");
scanf("%d", &a);
if (a==0)
break;
else
{
if (a>0)
{
if (!enQueue(qu,a))
printf(" 队列满,不能入队\n");
}
else if (a<0)
{
if (!deQueue(qu, x))
printf(" 队列空,不能出队\n");
}
}
}
return 0;
} 运行结果:
知识点总结:
通过队列解决具体应用问题。
学习心得:
一种问题有多种解法。
博客介绍了如何运用队列解决一个特定的问题,即负数将正数从序列中移除。通过展示`main.cpp`文件的代码和运行结果,博主详细解析了实现过程。此外,博主强调了一种问题可以有多种解决方案,强调了灵活思考的重要性。
9490

被折叠的 条评论
为什么被折叠?



