PTA 7-6 队列模拟

7-6 队列模拟

分数 25

全屏浏览题目

作者 sy

单位 宁波财经学院

设从键盘输入一整数序列a1,a2,...an,试编程实现:当ai>0 时,ai 进队,当ai<0 时,将队首元素出队,当ai=0 时,表示输入结束。要求将队列处理成环形队列,使用环形队列算法库中定义的数据类型及算法,程序中只包括一个函数(main 函数),入队和出队等操作直接在main 函数中调用即可。当进队出队异常(如队满)时,要打印出错信息。

输入格式:

输入一系列整数,以0结束。环形队列最多可存储10个元素。

输出格式:

输出最后队列中的元素。如果队列满,则显示“队列已满”,如果出队列时无元素可出,显示“wrong”

输入样例1:

在这里给出一组输入。例如:

1 2 3 -4 -5  6 7 -8 0

输出样例1:

在这里给出相应的输出。例如:

The Queue is:6 7 

输入样例2:

在这里给出一组输入。例如:

1 2 -4 -5  -6 7 -8 0

输出样例2:

在这里给出相应的输出。例如:

wrong

输入样例3:

在这里给出一组输入。例如:

1 2 3 4 5  6 7 8 9 10 11 12 0

输出样例3:

在这里给出相应的输出。例如:

Queue is full!
The Queue is:1 2 3 4 5 6 7 8 9 10 

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include <iostream>
using namespace std;
int main(){int n,i=0,k=0,sum=0,w=0;/*n是输入的元素,i是输入元素的个数,k是输出元素的个数sum是用来统计剩余元素的个数,w是用来对剩余的元素重新放在一个新的数组里面,方便输出。*/int s[100]={0},a[10]={0};/* s数组是用来进行队列的输入和输出a数组是用来进行最后队列剩余元素的打印*/do{cin>>n;if(n>0){s[i]=n;i++;}//判断n大于0,队列输入else if(n<0){s[k]=0;k++;}//判断n小于0,队列输出}while(n!=0);sum=i-k;//计算队列剩余元素的个数for(int j=k;j<i;j++){a[w]=s[j];w++;}//重新整理运行完成的队列if(sum<=0){printf("wrong");}else if(sum<=10){printf("The Queue is:");for(int i=0;i<w;i++){printf("%d ",a[i]);}//for循环输出,每个元素}else{printf("Queue is full!\n");printf("The Queue is:");for(int i=0;i<10;i++){printf("%d ",a[i]);}//for循环输出,每个元素}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/140294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10. 深度学习——模型优化

机器学习面试题汇总与解析——模型优化 本章讲解知识点 前言低秩近似剪枝与稀疏约束参数量化二值网络知识蒸馏紧凑的网络结构本专栏适合于Python已经入门的学生或人士,有一定的编程基础。本专栏适合于算法工程师、机器学习、图像处理求职的学生或人士。本专栏针对面试题答案进…

(1)(1.14) LightWare SF10/SF11激光雷达

文章目录 前言 1 串行连接 2 I2C 连接 3 参数说明 前言 Lightware SF20 和 LW20 是体积小、测距远&#xff08;100m&#xff09;、精度高的测距仪。有两种型号&#xff0c;LW20/Ser 使用串行接口&#xff0c;LW20/I2C 使用 I2C 接口。 1 串行连接 对于串行连接&#xff0…

java数据结构--堆

目录 一.概念 二.堆中最重要三个方法 三.大顶堆 四.基于数组实现大顶堆 五.堆排序 六.小顶堆 七.基于数组实现小顶堆 八.ProiorityQueue和Heap 示例&#xff1a; 九.求数组中第K大元素 十.求数据流中第K大元素 十一.求数据流的中位数 一.概念 堆&#xff08;Heap&…

软件开发项目文档系列之十六如何撰写系统运维方案

前言 项目运维方案是为了确保项目的稳定运行和可持续发展而制定的指导性文档。本文将详细介绍项目运维方案的各个方面&#xff0c;包括硬件和软件基础设施、监控和警报、备份和恢复、安全性、团队组织和沟通等方面。本博客将提供示例和最佳实践&#xff0c;以帮助您更好地理解…

什么是ajax,ajax有什么特点?

AJAX&#xff08;Asynchronous JavaScript and XML&#xff09;是一种用于在后台与服务器进行异步通信的技术。它使用 JavaScript、XML&#xff08;或 JSON&#xff09;和 XMLHttpRequest 对象来实现在不刷新整个页面的情况下更新部分页面内容。 特点&#xff1a; 异步通信&a…

Ubuntu显示毫秒级时间

Ubuntu显示毫秒级时间 1. 打印当前时间 1. 打印当前时间 date 时间&#xff0c;转化成毫秒级 $ date # Mon 03 Apr 2023 11:09:47 PM CST$ echo -e "$(date %T).$((10#$(date %N)/1000000))" # 23:09:55.552谢谢

一些分享| 在线笔记、GIF图片生成方法

文章目录 在线笔记视频转GIF 本片博客旨在挖掘一些好用且免费的在线平台&#xff0c;持续更新中~ 正所谓科技解放双手&#xff0c;使用在线平台可以方便快捷地学习办公&#xff0c;节省时间。 在线笔记 语雀 https://www.yuque.com/dashboard 语雀是笔者用得最长最久的平台了…

maven: Cannot access nexus-all xxx in offline mode错误的解决

1. 絮絮叨叨 之前&#xff0c;同事告诉过一个加速编译的mvn命令 mvn -o -T 4C clean install -DskipTests -Dmaven.compile.forktrue 忽然&#xff0c;上周在公司的蛇口编译机器&#xff0c;执行这个命令就行不通了 错误信息&#xff0c;由于编以输出太多被淹没了&#xff0c…

Leetcode—102.二叉树的层序遍历【中等】

2023每日刷题&#xff08;二十四&#xff09; Leetcode—102.二叉树的层序遍历 C语言BFS实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ /*** Return an array of arr…

线性表——编写一个函数,将数组中两个顺序表的位置互换,即将(b1,b2,b3,...,bn)放在(a1,a2,a3,...,an)的前面。

题目&#xff1a;已知在一维数组A[mn]中依次存放两个线性表&#xff08;a1,a2,a3,...,an&#xff09;和&#xff08;b1,b2,b3,...,bn&#xff09;。编写一个函数&#xff0c;将数组中两个顺序表的位置互换&#xff0c;即将&#xff08;b1,b2,b3,...,bn&#xff09;放在&#xf…

ubuntu下载各个版本chrome方法

Ubuntu/debian 在这里面找版本 https://unix.stackexchange.com/a/612981然后添充进去 http://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_[HERE_THE_FULL_VERSION]_amd64.deb比如&#xff1a;https://dl.google.com/linux/chro…

Springboot项目部署及多环境开发

一、项目部署 我们之前写的代码都是部署在本地的tomcat上&#xff0c;别人是无法访问我们写的程序的。在实际开发中&#xff0c;我们都要将开发完毕的项目部署到公司的服务器上。 我们的代码需要经过编译打包生成一个jar包&#xff0c;这个过程需要借助一个插件来实现。 创建sp…

【微软技术栈】C#.NET 如何使用本地化的异常消息创建用户定义的异常

本文内容 创建自定义异常创建本地化异常消息 在本文中&#xff0c;你将了解如何通过使用附属程序集的本地化异常消息创建从 Exception 基类继承的用户定义异常。 一、创建自定义异常 .NET 包含许多你可以使用的不同异常。 但是&#xff0c;在某些情况下&#xff0c;如果它们…

STL简介+浅浅了解string——“C++”

各位CSDN的uu们好呀&#xff0c;终于到小雅兰的STL的学习了&#xff0c;下面&#xff0c;让我们进入CSTL的世界吧&#xff01;&#xff01;&#xff01; 1. 什么是STL 2. STL的版本 3. STL的六大组件 4. STL的重要性 5. 如何学习STL 6.STL的缺陷 7.为什么要学习string类 …

pinpoint监控tomcat应用,页面显示No data collected

pinpoint安装部署教程大家都可以搜到。这里就不说了。单说一下 页面没有数据的情况。 部署环境&#xff0c;pinpoint安装部署在A服务器上。现在是在C、D、E、F……linux机器上安装pinpoint-agnet 1. 将文件 pinpoint-agent-1.8.5.tar.gz 上传到 服务器C、D、E、F…… 2. 解压…

第十八章DOM操作控制

DOM操作分类&#xff1a; jQuery中的DOM操作 一。设置和获取样式值 1.追加样式 addClass&#xff1a;追加CSS效果 removeClass&#xff1a;去除CSS内容 2.切换样式 3.判断是否含有指定样式&#xff1a;判断的是布尔类型的值 二。内容操作&#xff1a; 1.HTML代码操作 2.TEXT代…

【算法与设计模式】

一、数据结构与算法 1、算法性能评估 时间复杂度、空间复杂度 2、数据结构 数组与列表 队列 堆栈 链表 二叉树 多叉树 递归算法 二、设计模式 1、单例 &#xff08;1&#xff09;GIL&#xff1a;线程互斥锁。保证同一时刻只有一个线程在进行。 &#xff08;2&#xff09…

Git GUI、SSH协议和IDEA中的Git使用详解

目录 前言 一、Git GUI的使用 1. 什么是Git GUI 2. 常见的Git GUI工具 3.使用 4.使用Git GUI工具的优缺点 优点&#xff1a; 缺点&#xff1a; 二、SSH协议 1.什么是SSH协议 2.SSH的主要特点和作用 3.SSH密钥认证的原理和流程 4. SSH协议的使用 三、IEDA使用git …

js随机生成颜色

封装一个函数 返回一个随机颜色 不传参数或者传true返回十六进制&#xff0c; 传false返回rgb模式 script>function Random(n, m) {if (n > m) {let temp nn mm temp}return Math.floor(Math.random() * (m - n 1)) n}function getRandomColor(flag true) {if (fl…

Linux常用命令——bzip2recover命令

在线Linux命令查询工具 bzip2recover 恢复被破坏的.bz2压缩包中的文件 补充说明 bzip2recover命令可用于恢复被破坏的“.bz2”压缩包中的文件。 bzip2是以区块的方式来压缩文件&#xff0c;每个区块视为独立的单位。因此&#xff0c;当某一区块损坏时&#xff0c;便可利用b…