循环队列(完整可运行代码)
- 格式:doc
- 大小:16.50 KB
- 文档页数:3
约瑟夫⽣死游戏约瑟夫⽣死游戏⼀、约瑟夫⽣死游戏30个⼈围成⼀个圈由第⼀个⼈数起,依次报数,数到第九个⼈,便把他剔除,然后再从他的下⼀个⼈数起,数到第九个⼈,再将他剔除剩下15个乘客为⽌,问那些位置将是被扔下⼤海的位置。
⼆、实验⽬的n个⼈围成⼀个圈由第⼀个⼈数起,依次报数,数到第x个⼈,便把他剔除,然后再从他的下⼀个⼈数起,数到第x个⼈,再将他剔除,依次继续,直到剩下的⼈数⼩于等于n/2。
三、功能分析1、构建约瑟夫链表:使整个游戏在链表中运⾏,使得结点在删除时不需要移动⼤量的结点;2、确定n的值:进⽽使链具化体,从⽽可以构建⼀个具体的链表;3、更新链表:对剔除结点后的链表进⾏重新连接,构成⼀个新的链表,使得循环继续进⾏;4、输⼊:输⼊n的值进⾏链表具体化,输⼊间隔值m,使得间隔被确定,程序得以有效正确的进⾏;5、输出:输出要剔除的结点的数值。
四、系统设计1、利⽤类定义构造成员函数以及成员templateclass List{public:List(){first=new LinkNode;first->link=first;}List(T x){first=new LinkNode(x);first->link=first;}List(List&L);~List(){}void Insert(int i,T x);T getHead(){return first->data;}LinkNode* getfirst(){return first;}void xiuf(LinkNode* a){first=a;} LinkNode*Locate(int i); protected:LinkNode*first;};2、定义成员函数templateList::List(List&L){T value;LinkNode*srcptr=L.getHead(); LinkNode*destptr=first=new LinkNode; destptr->data=srcptr->data;while(srcptr->link!=first){value=srcptr->link->data;destptr->link=new LinkNode(value); destptr=destptr->link;srcptr=srcptr->link;last=srcptr;}};templateLinkNode* List::Locate(int i){if(i<0)return NULL;LinkNode* current=first;int k=1;while(k{current=current->link;k++;if(current==first)return NULL;}return current;};3、创建含有n个结点的单循环链表队列的顺序表⽰和实现和顺序栈相似,在队列的顺序存储结构中,除了⽤⼀组地址连续的存储单元依次存放从队列头到队列尾的元素之外,尚需附设两个指针front和rear分别指⽰队列头元素及队列尾元素的位置。
¥TR考点:1.栈按先进后出的原则组织数据,所以入栈最早的最后出栈。
如:元素12345ABCDE依入栈,出栈顺序为EDCBA54321。
2.循环队列有队头和队尾两个指针,但是循环队列仍是线性结构的;在循环队列中只需要队头和队尾两个指针来共同反映队列中元素的动态变化情况3.链式存储结构既可以针对线性结构也可以针对非线性结构,链式存储结构中每个都是由数据域与指针域两部分组成,增加了存储空间。
4.对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好5.队列是先进先出的线性表。
6.二叉树的基本性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的节点多一个。
7.冒泡排序与简单选择插入排序与简单选择排序法在最坏情况均需要比较n(n-1)/2次,而堆排序在最坏情况下需要比较的次数是nlog2(n).【8.系统软件:操作系统(OS)、数据库管理系统(DBMS)、编译程序、汇编程序、网络软件。
9. 软件生命周期:将软件产品从提出、实现、使用维护到停止使用退役的过程。
10.数据库应用系统中的核心问题是数据的设计。
11.结构化程序设计的思想:自顶向下、逐步求精、模块化、限制使用goto语句。
12.可行性分析阶段—可行性分析报告总体设计阶段—概要设计说明书概要设计阶段—集成测试计划需求分析阶段—软件需求规格说明书<13.算法的有穷性:算法程序的运行时间是有限的14.树是简单的非线性结构,所有二叉树作为树的一种也是一种非线性结构15.循环队列的队头指针与队尾指针都不是固定的,随着入队与出队操作要进行变化。
因为是循环利用的队列结构,所以对头指针有时可能大于队尾指针有时也可能小于队尾指针。
16.算法复杂度用来衡量算法的优劣,它包括算法的时间复杂度和空间复杂度时间复杂度:指执行所需要的计算工作量空间复杂度:指执行这个算法所需要的内存空间(计算机存储空间)17.软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心。
数据结构与算法系列研究五——树、⼆叉树、三叉树、平衡排序⼆叉树AVL树、⼆叉树、三叉树、平衡排序⼆叉树AVL⼀、树的定义树是计算机算法最重要的⾮线性结构。
树中每个数据元素⾄多有⼀个直接前驱,但可以有多个直接后继。
树是⼀种以分⽀关系定义的层次结构。
a.树是n(≥0)结点组成的有限集合。
{N.沃恩}(树是n(n≥1)个结点组成的有限集合。
{D.E.Knuth})在任意⼀棵⾮空树中:⑴有且仅有⼀个没有前驱的结点----根(root)。
⑵当n>1时,其余结点有且仅有⼀个直接前驱。
⑶所有结点都可以有0个或多个后继。
b. 树是n(n≥0)个结点组成的有限集合。
在任意⼀棵⾮空树中:⑴有⼀个特定的称为根(root)的结点。
⑵当n>1时,其余结点分为m(m≥0)个互不相交的⼦集T1,T2,…,Tm。
每个集合本⾝⼜是⼀棵树,并且称为根的⼦树(subtree)树的固有特性---递归性。
即⾮空树是由若⼲棵⼦树组成,⽽⼦树⼜可以由若⼲棵更⼩的⼦树组成。
树的基本操作1、InitTree(&T) 初始化2、DestroyTree(&T) 撤消树3、CreatTree(&T,F) 按F的定义⽣成树4、ClearTree(&T) 清除5、TreeEmpty(T) 判树空6、TreeDepth(T) 求树的深度7、Root(T) 返回根结点8、Parent(T,x) 返回结点 x 的双亲9、Child(T,x,i) 返回结点 x 的第i 个孩⼦10、InsertChild(&T,&p,i,x) 把 x 插⼊到 P的第i棵⼦树处11、DeleteChild(&T,&p,i) 删除结点P的第i棵⼦树12、traverse(T) 遍历树的结点:包含⼀个数据元素及若⼲指向⼦树的分⽀。
●结点的度: 结点拥有⼦树的数⽬●叶结点: 度为零的结点●分枝结点: 度⾮零的结点●树的度: 树中各结点度的最⼤值●孩⼦: 树中某个结点的⼦树的根●双亲: 结点的直接前驱●兄弟: 同⼀双亲的孩⼦互称兄弟●祖先: 从根结点到某结点j 路径上的所有结点(不包括指定结点)。
青少年软件编程等级考试Python二级(理论试卷)模拟卷9试卷编号:867513试卷录入者:机器人包老师(玩得趣科教中心)试卷总分:100出卷时间:2020-2-16 16:15答题时间:40分钟本试卷从考试酷examcoo网站导出,文件格式为mht,请用WORD/WPS打开,并另存为doc/docx格式后再使用1.以下选项对于import保留字描述错误的是Aimport可以用于导入函数库或者库中的函数B可以使用from jieba import lcut 引入jieba库C使用import jieba as jb,引入函数库jieba,取别名jbD使用import jieba 引入jieba库正确答案: B2.以下选项中不可用作Python标识符的是3.14姓名__Name__\#;Python语言不支持面向对象Python语言是解释型语言Python语言是编译型语言3.14不是整数类型的数值type(100)表达式结果可能是<class 'int'>,也可能是<class 'float'>oct(100)表达式结果获得十六进制数hex(100)表达式结果获得八进制数正确答案: A6.运行以下程序,输出结果的是:322.52.50正确答案: C7.17. 运行以下程序,输出的Python数据类型是:字符串类型浮点数类型整数类型复数类型正确答案: B8.下面代码的输出结果是:3.141593.141593Pi=3.143.1416Python通过try、except等保留字提供异常处理功能ZeroDivisionError是一个变量未命名错误NameError是一种异常类型仅循环非正常结束后执行(以break结束)仅循环正常结束后执行总会执行永不执行正确答案: B11.以下代码执行的输出结果是:出错数据可视化Web开发ArcadeTensorFlowCaffe2matplotibopenpyxl生成一个[0.0, 1.0)之间的随机小数生成一个k比特长度的随机整数设置初始化随机数种子a生成一个随机整数正确答案: C16.下面代码的输出结果是407408153159正确答案: A17.给出下面代码:执行代码出错Python语言,是,脚本,语言Python语言是脚本语言无输出正确答案: CPython使用del保留字定义一个函数函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。
目录计算机二级MSoffice高级应用模拟试题及答案(1) (2)计算机二级MSoffice高级应用模拟试题及答案(2) (10)计算机二级MSoffice高级应用模拟试题及答案(3) (19)计算机二级MSoffice高级应用模拟试题及答案(4) (28)计算机二级MSoffice高级应用模拟试题及答案(5) (35)计算机二级MSoffice高级应用模拟试题及答案(6) (47)计算机二级MSoffice高级应用模拟试题及答案(7) (56)计算机二级MSoffice高级应用模拟试题及答案(8) (64)计算机二级MSoffice高级应用模拟试题及答案(9) (76)计算机二级MSoffice高级应用模拟试题及答案(10) (83)计算机二级MSoffice高级应用模拟试题及答案(1)一、选择题(每小题1分,共20分)1.一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、c、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是()。
A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.54321EDCBA2.下列叙述中正确的是()。
A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定的3.在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。
A.0(n)B.0(/22)C.0(1092n)D.0(nl092n)4.下列叙述中正确的是()。
A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间5.数据流图中带有箭头的线段表示的是()。
《算法与数据结构》第1-6章课堂测验(双号)一、选择题1、已知一个栈的进栈序列是1,2,3,…,n,其输出序列是p1,p2,…,pn,若p1=n,则pi的值。
( B )(A) i (B) n-i(C) n-i+1 (D) 不确定2、设n个元素进栈序列是1,2,3,…,n,其输出序列是p1,p2,…,pn,若p1=3,则p2的值。
( c )(A) 一定是2 (B) 一定是1(C) 不可能是1 (D) 以上都不对3、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( B )[n0=n2+1]A.6B.11C.15D.不确定4、在下述结论中,正确的是(d )①只有一个结点的二叉树的度为0;②二叉树的度为2;③二叉树的左右子树可任意交换;④深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树。
A.①②③B.②③④C.②④D.①④5、一棵树高为K的完全二叉树至少有()个结点。
( c )A.2k–1B.2k-1 +1C.2k-1D.2k二、简答题1简述下列术语:线性表,顺序表,链表。
答:线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。
每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域线性表:最常用且最简单的一种数据结构。
一个线性表是n个数据元素的有限序列。
顺序表:是指用一组连续的存储单元一次存储线性表中的数据元素。
物理结构和逻辑结构都相邻。
链表:逻辑结构相邻的数据元素物理结构不一定相邻。
采用指针的形式连接起来。
2何时选用顺序表,何时选用链表作为线性表的存储结构合适?各自的主要优缺点是什么?不需要经常大量的修改表或需要随机存取的情况下可以选用顺序表;相反需要经常大量的修改表,但不是频繁的随机存取的情况下可选用链式表。
2022年3月计算机二级C语言笔试真题文字word版详细答案解析22022年3月全国计算机等级考试二级C语言真题一、选择题1、下列叙述中正确的是:A、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构D、循环队列是一直逻辑结构2、下列叙述中正确的是A、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈和队列都是非线性结构D、以上三种说法都不对3、一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A、4B、6C、10D、164、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式B、外模式C、概念模式D、逻辑模式5、在满足实体完整性约束的条件下A、一个关系中可以没有候选关键词B、一个关系中只能有一个候选关键词C、一个关系中必须有多个候选关键词D、一个关系中应该有一个或者多个候选关键词6、有三个关系R、S和T如下:RSTABCABCABCa12bc2311ab1221ab2311则由关系R和S得到关系T的操作是A、自然连接B、并C、差D、交7、软件生命周期中的活动不包括A、软件维护B、市场调研C、软件测试D、需求分析8、下面不属于需求分析阶段任务的是A、确定软件系统的功能需求B、确定软件系统的系统的系能需求B、制定软件集成测试计划D、需求规格说明书审评9、在黑盒测试方式中,设计测试用例的主要根据是A、程序外部功能B、程序内部逻辑C、程序数据结构D、程序流程图10、在软件设计中不使用的工具是A、系统结构图B、程序流程图C、PAD图D、数据流图(DFD图)11、针对简单程序设计,以下叙述的实施步骤正确的是A、确定算法和数据结构、编码、调试、整理文档B、编码、确定算法和数据结构、调试、整理文档C、整理文档、确定算法和数据结构、编码、调试D、确定算法和数据结构、调试、编码、整理文档12、关于C语言中数的表示,以下叙述正确的是2022年3月全国计算机等级考试二级C语言真题A、只有整型数在允许范围内能精确无误的表示,实型数会有误差B、只要在在允许范围内整型和实型都能精确表示C、只有实型数在允许范围内能精确无误的表示,整型数会有误差D、只有八进制表示的数在不会有误差13、以下关于算法叙述错误的是A、算法可以用伪代码、流程图等多种形式来描述B、一个正确的算法必须有输入C、一个正确的算法必须有输出D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码14、以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名15、设有以下语句Charch1,ch2,canf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A、A和B之间用逗号间隔B、A和B之间不能有任何间隔符C、A和B之间可以用回车间隔D、A和B之间用空格间隔16、以下选项中非法的字符常量是A、’\\102’B、’\\65’C、’\\某ff’D、’\\019’17、有以下程序#includeMain(){IntA=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d,%d,%d\\n”,A,B,C)}程序运行后输出的结果是A0,4,5B4,4,5C4,4,4D0,0,018、设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A、某++;printf((“%d\\n”,某);B、n=++某;printf((“%d\\n”,n);C、++某;printf((“%d\\n”,某);D、n=某++;printf((“%d\\n”,n);19、以下选项中,能表示逻辑值“假”的是A1B0.000001C0D100.020、有以下程序#includeMain(){inta;Scanf(“%d”,&a);If(a++<9)printf((“%d\\n”,a);Eleprintf((“%d\\n”,a--);}2022年3月全国计算机等级考试二级C语言真题程序运行时键盘输入9,则输出的结构是A、10B11C9D821、有以下程序#includeMain(){int=0,n;For(n=0;n<3;nCae2;+=2;break;Cae3;+3;Cae4;+=4;}printf((“%d\\n”,);}}程序运行后的结果是A1,2,4B1,3,6C3,10,14D3,6,1022、若k是int类型变量,且有以下for语句For(k=-1;k<0;k++)printf(某某某某\\n”);下面关于语句执行情况的叙述中正确的是A、循环体执行一次B、循环体执行两次C、循环体一次也不执行D、构成无限循环23、有以下程序#includeMain(){charA,B,C;B=’1’;C=’A’For(A=0;A<6;A++){if(A%2)putchar(B+A);Eleputchar(C+A);}}程序运行后输出的结果是A1B3D5FBABCDFECA2C4E6D12345624、设有如下定义语句Intm[]={2,4,6,8},某k=m;以下选项中,表达式的值为6的是A某(k+2)Bk+2C某k+2D某k+=225、fun函数的功能是:通过键盘输入给某所指的整型数组所有元素赋值。
计算机二级JAVA分类模拟题159选择题1、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。
则实体部门和职员间的联系是______。
A.1:1联系 B.m:1联系 C.1:m联系 D.m:n联系2、下列标识符(名字)命名原则中,正确的是______。
A.类名的首字母小写 B.变量和方法名的首字母大写C.接口名的首字母小写 D.常量完全大写3、下列循环执行的次数为______。
int y=2,x=4;while(--x!=x/y){}A. 1B. 2C. 3D. 04、阅读如下代码。
if(x==0) { System.out.println("冠军");}else if(x>-3) { System.out.println("亚军");}else{ System.out.println("季军");}若要求打印字符串“季军”,则变量x的取值范围是______。
A.x=0&x<=-3 B.x>0 C.x>-3 D.x<=-35、面向对象设计时,对象信息的隐藏主要是通过( )实现的。
A.对象的封装性 B.子类的继承性C.系统模块化 D.模块的可重用性6、下面属于面向对象语言的是______。
A. Java语言B. 机器语言C. C语言D. 汇编语言7、下列关于数据库设计的叙述中,正确的是______。
A.在需求分析阶段建立数据字典 B.在概念设计阶段建立数据字典C.在逻辑设计阶段建立数据字典 D.在物理设计阶段建立数据字典8、下列命令中,哪个命令能为远程对象生成stub和skeleton?A.rmic B.rmiregistry C.rmid D.serialver9、对排序文件的初始状态不作任何要求的排序方法有______。
A. 直接插入和快速排序B. 直接插入和归并排序C. 归并和快速排序D. 归并和直接选择排序10、下列关于Applet的叙述中,正确的是______。
2007年9月全国计算机等级考试二级C语言真题及参考答案一、选择题((1)-(10)每题2分,(11)-(50)每题1分.共60分))下列各题A)、B)、C)、D)四个选项中,只有一个是正确的,请将正确选项涂写在答题卡上,答在试卷上不得分。
(1)软件是指A)程序 B)程序和文档C)算法加数据结构 D)程序、数据和相关文档的集合(2)软件调试的目的是A)发现错误 B)改正错误C)改善软件的性能 D)验证软件的正确性(3)在面向对象方法中,实现信息隐蔽是依靠A)对象的继承 B)对象的多态C)对象的封装 D)对象的分类(4)下列叙述中,不符合良好程序设计风格的是A)程序的效率第一,清晰第二 B)程序的可读性好C)程序中有必要的注释 D)输入数据前要有提示信息(5)下列叙述中正确的是A)程序执行的效率与数据的存储结构密切相关B)程序执行的效率只取决于程序的控制结构C)程序执行的效率只取决于所处理的数据量D)以上三种说法都不对(6)下列叙述中正确的是A)数据的逻辑结构与存储结构必定是一一对应的B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线线结构D)以上三种说法都不对(7)冒泡排序在最坏情况下的比较次数是A)n(n+1)/2 B)nlog2n C)n(n-1)/2 D)n/2(8)一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为A)219 B)221 C)229 D)231(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库技术的根本目标是要解决数据的共享问题C)数据库管理系统就是数据库系统D)以上三种说法都不对(10)下列叙述中正确的是A)为了建立一个关系,首先要构造数据的逻辑关系B)表示关系的二维表中各元组的每一个分量还可以分成若干数据项C)一个关系的属性名表称为关系模式D)一个关系可以包括多个二维表(11)C语言源程序名的后缀是A).exe B).C C).obj D).cp(12)可在C程序中用做用户标识符的一组标识符是A)and B)Date C)Hi D)case_2007 y-m-d Dr.Tom Bigl(13)以下选项中,合法的一组C语言数值常量是A)028 B)12. C).177 D)0x8A. 5e-3 OXa23 4c1.5 10,000-0xf 4.5e0 Oabc 3.e5(14)以下叙述中正确的是A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以命名任意一个函数作为主函数(15)若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是A)scanf("%d",a,b,c); B)scanf("%d%d%d",a,b,c);C)scanf("%d",p); D)scanf("%d",&p);(16)以下关于long、int和short类型数据占用内存大小的叙述中正确的是A)均占4个字节 B)根据数据的大小来决定所占内存的字节数C)由用户自己定义 D)由C语言编译系统决定(17)若变量均已正确定义并赋值,以下合法的C语言赋值语句是A)x=y==5; B)x=n%2.5; C)x+n=I; D)x=5=4+1;(18)有以下程序段int j; float y; char name[50];scanf("%2d%f%s",&j,&y,name);当执行上述程序段,从键盘上输入55566 7777abc后,y的值为A)55566.0 B)566.0 C)7777.0 D)566777.0(19)若变量已正确定义,有以下程序段i=0;do printf("%d,",i);while(i++);printf("%d\n",i)其输出结果是A)0,0 B)0,1 C)1,1 D)程序进入无限循环(20)有以下计算公式若程序前面已在命令中包含math.h文件,不能够正确计算上述公式的程序段是A)if(x>=0) y=sqrt(x); B)y=sqrt(x)else y=sqrt(-x); if(x<0) y=sqrt(-x);C)if(x>=0)y=sqrt(x); D)y=sqrt(x>=0?x:-x);If(x<0)y=sqrt(-x);(21)设有条件表达式:(EXP)?i++;j--,则以下表达式中(EXP)完全等价的是A)(EXP= =0) B)(EXP!=0) C)(EXP= =1) D)(EXP!=1)(22)有以下程序#includemain(){int y=9;for( y>0;y--)if(y%3= =0) printf("%d",--y);}程序的运行结果是A)741 B)963 C)852 D)875421(23)已有定义:char c; ,程序前面已在命令行中包含ctype.h文件,不能用于判断c 中的字符是否为大写字母的表达式是A)isupper(c) B)’A’<=c<=’Z’C)’A’<=c&&c<=’Z’ D)c<=(‘2’-32)&&(‘a’-32)<=c(24)有以下程序#includemain(){int i,j,m=55;for(i=1;i<=3;i++)for(j=3;j<=i;j++) m=m%j;printf("%d\n",m);}程序的运行结果是A)0 B)1 C)2 D)3(25)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元(26)已知字符’A’的ASCⅡ代码值是65,字符变量c1的值是’A’,c2的值是’D’。
二级Python语言程序设计模拟3一、单项选择题1、按照“后进先出”原则组织数据的数据结构是A.队列 B.栈 C.双向链表 D.二叉树2、以下选项的叙述中,正确的是A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定3、关于数据的逻辑结构,以下选项中描述正确的是A.存储在外存中的数据B.数据所占的存储空间量C.数据在计算机中的顺序存储方式D.数据的逻辑结构是反映数据元素之间逻辑关系的数据结构4、以下选项中,不属于结构化程序设计方法的是A.自顶向下 B.逐步求精 C.模块化 D.可封装5、以下选项中,不属于软件生命周期中开发阶段任务的是A.软件测试 B.概要设计 C.软件维护 D.详细设计6、为了使模块尽可能独立,以下选项中描述正确的是A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强7、以下选项中叙述正确的是A.软件交付使用后还需要进行维护 B.软件一旦交付就不需要再进行维护C.软件交付使用后其生命周期就结束 D.软件维护指修复程序中被破坏的指令8、数据独立性是数据库技术的重要特点之一,关于数据独立性,以下选项中描述正确的是 A.数据与程序独立存放 B.不同数据被存放在不同的文件中C.不同数据只能被对应的应用程序所使用 D.以上三种说法都不对9、以下选项中,数据库系统的核心是A.数据模型 B.数据库管理系统 C.数据库 D.数据库管理员10、一间宿舍可以住多个学生,以下选项中描述了实体宿舍和学生之间联系的是A.一对一 B.一对多 C.多对一 D.多对多11、以下选项中不是Python文件读操作方法的是A.read B.readline C.readlines D.readtext12、以下选项中说法不正确的是A.静态语言采用解释方式执行,脚本语言采用编译方式执行B.C语言是静态语言,Pylhon语言是脚本语言C.编译是将源代码转换成目标代码的过程D.解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程13、拟在屏幕上打印输出“Hello word",以下选项中正确的是A.print(Hello World) B.print('Hello World')C.printf("Hello World") D.printf('Hello World')14、以下选项中,不是Python语言特点的是A.强制可读:Python语言通过强制缩进来体现语句间的逻辑关系B.变量声明:Python语言具有使用变量需要先定义后使用的特点C.平台无关:Python程序可以在任何安装了解释器的操作系统环境中执行D.黏性扩展:Python语言能够集成C、C++等语言编写的代码15、IDLE环境的退出命令是A.exit() B.esc() C.close() D.回车键16、以下选项中,不符合Python语言变量命名规则的是A.keyword_33 B.keyword33_ C.33_keyword D._33keyword17、以下选项中,不是Python语言保留字的是A.for B.while C.continue D.goto18、以下选项中,Python语言中代码注释使用的符号是A.// B./*… …*/ C.! D.#19、关于Python语言的变量,以下选项中说法正确的是A.随时命名、随时赋值、随时变换类型 B.随时声明、随时使用、随时释放C.随时命名、随时赋值、随时使用 D.随时声明、随时赋值、随时变换类型20、Python语言提供的3个基本数字类型是A.整数类型、二进制类型、浮点数类型 B.整数类型、浮点数类型、复数类型C.十进制类型、二进制类型、十六进制类型 D.整数类型、二进制类型、复数类型21、以下选项中,不属于IPO模式一部分的是A.Input(输入) B.Program(程序) C.Process(处理) D.Output(输出)22、以下选项中,属于Python语言中合法的二进制整数是A.0b1708 B.081010 C.081019 D.0bC3F23、关于Python语言的浮点数类型,以下选项中描述错误的是A.浮点数类型与数学中实数的概念一致B.浮点数类型表示带有小数的类型C.Python语言要求所有浮点数必须带有小数部分D.小数部分不可以为024、关于Python语言数值操作符,以下选项中描述错误的是A.x/y表示x与y之商B.x//y表示x与y之整数商,即不大于x与y之商的最大整数C.x**y表示x的y次幂,其中,y必须是整数D.x%y表示x与y之商的余数,也称为模运算25、以下选项中,不是Python语言基本控制结构的是A.顺序结构 B.程序异常 C.循环结构 D.跳转结构26、关于分支结构,以下选项中描述不正确的是A.if语句中语句块执行与否依赖于条件判断B.if语句中条件部分可以使用任何能够产生True和False的语句和函数 C.二分支结构有一种紧凑形式,使用保留字if和elif实现D.多分支结构用于设置多个判断条件以及对应的多条执行路径27、关于Python函数,以下选项中描述错误的是A.函数是一段具有特定功能的语句组B.函数是一段可重用的语句组C.函数通过函数名进行调用D.每次使用函数需要提供相同的参数作为输入28、以下选项中,不是Python中用于开发用户界面的第三方库是A.turtle B.PyQt5 C.wxPython D.PyGTK29、以下选项中,不是Python中用于进行数据分析及可视化处理的第三方库是 A.numpy B.pandas C.mayavi2 D.mxnet30、以下选项中,不是Python中用于进行Web开发的第三方库是A.flask B.Django C.scrapy D.pyramid31、下面代码的执行结果是>>>1.23e-4+5.67e+8j.realA.0.000123 B.1.23 C.5.67e+8 D.1.23e432、下面代码的执行结果是>>>s="11+5in">>>eval(s[1:-2])A.16 B.6 C.11+5 D.执行错误33、下面代码的执行结果是>>>abs(-3+4j)A.3.0 B.4.0 C.5.0 D.执行错误34、下面代码的执行结果是>>>x=2>>>x *=3+5**2A.13 B.15 C.56 D.819235、下面代码的执行结果是ls=[[1,2,3],[[4,5],6],[7,8]]print(len(ls))A.1 B.3 C.4 D.836、下面代码的执行结果是a="Python等级考试"b="="c=">"print("{0:{1}{3}{2}}".format(a,b,25,c))A.===============Python等级考试B.Python等级考试===============C.>>>>>>>>>>>>>>>Python等级考试D.Python等级考试>>>>>>>>>>>>>>>37、给出如下代码:while True:guess=eval(input())if guess==0x452//2:break作为输入能够结束程序运行的是A.break B.553 C.0x452 D."0x452//2"38、下面代码的执行结果是ls=["2020","20.20","Python"]ls.append(2020)ls.append([2020,"2020"])print(ls)A.['2020','20.20','Python',2020,2020,'2020']B.['2020','20.20','Python',2020]C.['2020','20.20','Python',2020,[2020,'2020']]D.['2020','20.20','Python',2020,['2020']]39、设city.csv文件内容如下:巴哈马,巴林,孟加拉国,巴巴多斯白俄罗斯,比利时,伯利兹下面代码的执行结果是f=open("city.csv","r")ls=f.read().split(",")f.close()print(ls)A.['巴哈马','巴林','孟加拉国','巴巴多斯','白俄罗斯','比利时','伯利兹']B.['巴哈马','巴林','孟加拉国','巴巴多斯\n白俄罗斯','比利时','伯利兹']C.['巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹']D.['巴哈马','巴林','孟加拉国','巴巴多斯','\n','白俄罗斯','比利时','伯利兹'] 40、下面代码的执行结果是d={}for i in range(26):d[chr(i+ord("a"))]=chr((i+13)%26+ord("a"))for c in "Python":print(d.get(c,c),end="")A.Plguha B.Cabugl C.Python D.Pabugl二、基本编程题(共15分)41、根据输入字符串s,输出一个宽度为15字符,字符串s居中显示,以“=”填充的格式。
DS博客作业02--栈和队列0.PTA得分截图1.本周学习总结(0-4分)1.1 总结栈和队列内容⼀.栈栈的定义栈是⼀种只能在⼀端进⾏插⼊或删除操作的线性表,俗称:后进先出。
表中允许进⾏插⼊、删除操作的⼀端称为栈顶。
栈的进栈出栈规则:1.栈顶出栈->栈底最后出栈;2.时进时出->元素未完全进栈时,即可出栈。
栈的分类:1.顺序栈利⽤⼀组地址连续的存储单元依次存放⾃栈底到栈顶的数据元素,同时附设指针 top 指⽰栈顶元素在顺序栈中的位置,附设指针 base 指⽰栈底的位置。
同样,应该采⽤可以动态增长存储容量的结构。
如果栈已经空了,再继续出栈操作,则发⽣元素下溢,如果栈满了,再继续⼊栈操作,则发⽣元素上溢。
栈底指针 base 初始为空,说明栈不存在,栈顶指针 top 初始指向 base,则说明栈空,元素⼊栈,则 top++,元素出栈,则 top--,故,栈顶指针指⽰的位置其实是栈顶元素的下⼀位(不是栈顶元素的位置)。
2.链栈其实就是链表的特殊情形,⼀个链表,带头结点,栈顶在表头,插⼊和删除(出栈和⼊栈)都在表头进⾏,也就是头插法建表和头删除元素的算法。
显然,链栈插⼊删除的效率较⾼,且能共享存储空间。
栈的基本运算InitStack(&s):初始化栈。
构造⼀个空栈s。
DestroyStack(&s):销毁栈。
释放栈s占⽤的存储空间。
StackEmpty(s):判断栈是否为空:若栈s为空,则返回真;否则返回假。
Push(&S,e):进栈。
将元素e插⼊到栈s中作为栈顶元素。
Pop(&s,&e):出栈。
从栈s中退出栈顶元素,并将其值赋给e。
GetTop(s,&e):取栈顶元素。
返回当前的栈顶元素,并将其值赋给e。
顺序栈的功能操作代码实现1.图像表⽰2.结构体定义typedef struct{ ElemType data[MaxSize];int top; //栈顶指针} Stack;typedef Stack *SqStack;3.基本运算<1>初始化栈initStack(&s)void InitStack(SqStack &s){ s=new Stack;s->top=-1;}<2>销毁栈ClearStack(&s)void DestroyStack(SqStack &s){ delete s;}<3>判断栈是否为空StackEmpty(s) bool StackEmpty(SqStack s){ return(s->top==-1);}<4>进栈Push(&s,e)bool Push(SqStack &s,ElemType e){ if (s->top==MaxSize-1)return false;s->top++; //栈顶指针增1s->data[s->top]=e;return true;}<5>出栈Pop(&s,&e)bool Pop(SqStack &s,ElemType &e){if (s->top==-1) //栈为空的情况,栈下溢出 return false;e=s->data[s->top];//取栈顶指针元素s->top--; //栈顶指针减1return true;}<6>取栈顶元素GetTop(s)bool GetTop(SqStack *s,ElemType &e) { if (s->top==-1) //栈为空的情况return false;e=s->data[s->top];return true;}4.顺序栈的四要素栈空条件:top=-1栈满条件:top=MaxSize-1进栈e操作:top++; st->data[top]=e 退栈操作:e=st->data[top]; top--;链栈的功能操作代码实现1.图像表⽰2.结构体定义typedef int ElemType;typedef struct linknode{ ElemType data; //数据域struct linknode *next; //指针域} LiNode,*LiStack3.基本运算<1>初始化栈initStack(&s)void InitStack(LiStack &s){ s=new LiNode;s->next=NULL;}<2>销毁栈ClearStack(&s)void DestroyStack(LiStack &s){ LiStack p;while (s!=NULL){ p=s;s=s->next;free(p);}}<3>判断栈是否为空StackEmpty(s)bool StackEmpty(LiStack s){return(s->next==NULL);}<4>进栈Push(&s,e)void Push(LiStack &s,ElemType e){ LiStack p;p=new LiNode;p->data=e; //新建元素e对应的节点*pp->next=s->next; //插⼊*p节点作为开始节点s->next=p;}<5>出栈Pop(&s,&e)bool Pop(LiStack &s,ElemType &e){ LiStack p;if (s->next==NULL) //栈空的情况return false;p=s->next; //p指向开始节点e=p->data;s->next=p->next; //删除*p节点free(p); //释放*p节点return true;}<6>取栈顶元素GetTop(s,e)bool GetTop(LiStack s,ElemType &e){ if (s->next==NULL) //栈空的情况return false;e=s->next->data;return true;}4.链栈的四要素栈空条件:s->next=NULL栈满条件:不考虑进栈e操作:结点插⼊到头结点后,链表头插法退栈操作:取出头结点之后结点的元素并删除之对于栈的C++模板类:stack#include<stack>1.stack<int> s:初始化栈,参数表⽰元素类型2.s.push(t):⼊栈元素t3.s.top():返回栈顶元素4.s.pop():出栈操作只是删除栈顶元素,并不返回该元素。
G-M指令详解概述众所周知,3D打印机执行的是一堆指令,这一堆指令都来源于一个指令集,即G-M指令集。
而固件就负责解释这些指令,并将命令指派给电子原件,从而完成打印任务。
因此,固件和指令集必须相互配合,否则打印机不会正常工作。
开源的3D打印机使用的固件多种多样,但和这些固件匹配的指令集绝大多数指令都相同,即RepRap G-M指令集。
由于Marlin 固件使用的最为广泛,笔者就以Marlin固件的指令集为例作叙述。
了解G-M指令有什么用?这用处可大了。
帮助使用者更方便地调试打印机,检测打印机的问题,扩展打印机菜单功能…反正好处多多,不管你信不信,反正我是信了。
废话不多说,进入正题。
G-M指令集就是一些以G或M开头的代码,有时候还会掺杂一些以其其他字母以标示参数意义,比如T、S、F、P等。
具体意义见下表,表中nnn表示因此,能够被Marlin固件识别的代码应该是像下面的样子:N3 T0*57N4 G92 E0*67N5 G28*22N6 G1 F1500.0*82N7 G1 X2.0 Y2.0 F3000.0*85N8 G1 X3.0 Y3.0*33详解注释G-Code一行中分号“;”后面的内容为解释性语句,即注释。
固件会忽略其内容。
为了减少通信量,可以把注释信息都去掉。
标记代码N 和*,比如N123 [...G Code 写在这里...] *71。
这是行码和标记码。
RepRap的固件会以一个本地计算的值来对比标记码,如果两者值不同,就会要求重复输入该条指令。
行码和检查码都可以去掉,RepRap仍会工作, 但它不会做检查。
你必须同时使用,或同时放弃使用。
检查码cs 是通过对对应的指令(包括它的的行码)的原始字节数据进行异或位运算得出的。
int cs = 0;for(i = 0; cmd[i] != '*' && cmd[i] != NULL; i++)cs = cs ^ cmd[i];cs &= 0xff; // Defensive programming...检查码cs的值即是其*符号右边的十进制数字,RepRap固件希望每次命令的行代码都是逐次增加1的大小,不然的话,它会返回一个错误。
(1)计算机专业冲刺班复习资料一、计算机网络1.基础知识点1)组成数据通信网络的基本要素为信源、信宿、传输系统3项。
3)10BASE-T标准规定的网络的网络拓扑结构是星形,网络速率是10Mb/S,网络所采用的网络介质是双绞线。
4)传统的加密方法可以分成两类:替代密码和换位密码。
现代密码学采用的算法主要有:秘密密钥算法和公开密钥算法。
5)数据传输通常可以分成5个阶段:(1)建立通信链路;(2)建立数据传输链路;(3)传送通信控制信号和传输数据信息;(4)数据传输结束,双方通过控制信息确认传输结束;(5)切断数据传输链路。
6)在WWW中,使用统一资源定位器URL来唯一地标识和定位因特网中的资源,它由3部分组成:客户与服务器之间所使用的通信协议和主机域名(或IP地址)和文件路径和文件名。
7)使用同样网络操作系统的两个局域网络连接时,为使连接的网络从网络层到应用层都能一致,连接时必须使用网桥。
8)涉及OSI模型层次最多的设备是网关。
9)FTP工作时使用2条TCP连接来完成文件传输。
10)在Window2000操作系统中,配置IP地址的命令是ipconfig。
若用ping命令来测试本机是否安装了TCP/IP协议,则正确的命令是ping127.0.0.1。
如果要列出本机当前建立的连接,可以使用的命令是nettat–a。
2.交换和路由的区别是什么?VLAN有什么特点?交换是指转发和过滤帧,是交换机的工作,它在OSI参考模型的第二层。
而路由是指网络线路当中非直连的链路,它是路由器的工作,在OSI参考模型的第三层。
交换和路由的区别很多。
首先,交换是不需要IP的,而路由需要,因为IP就是第三层的协议,第二层需要的是MAC地址;再有,第二层的技术和第三层不一样,第二层可以做VLAN、端口捆绑等,第三层可以做NAT、ACL、QOS等。
VLAN是虚拟局域网的英文缩写,它是一个纯二层的技术,它的特点有三:控制广播,安全,灵活性和可扩展性。
1。
以下选项对于import保留字描述错误的是import可以用于导入函数库或者库中的函数可以使用from jieba import lcut 引入 jieba库使用import jieba as jb,引入函数库jieba,取别名jb使用import jieba 引入jieba库正确答案: B2.以下选项中不可用作Python标识符的是3.14姓名__Name__Pi正确答案: A3.Python可以将一条长语句分成多行显示的续行符号是:\#;‘正确答案: A4.关于Python语言的特点,以下选项描述正确的是Python语言不支持面向对象Python语言是解释型语言Python语言是编译型语言Python语言是非跨平台语言正确答案: B5.关于Python整数类型,以下选项描述正确的是:3.14不是整数类型的数值type(100)表达式结果可能是〈class 'int'>,也可能是〈class 'float'〉oct(100)表达式结果获得十六进制数hex(100)表达式结果获得八进制数正确答案: A6.运行以下程序,输出结果的是:322。
52。
50正确答案: C7.17。
运行以下程序,输出的Python数据类型是:字符串类型浮点数类型整数类型复数类型正确答案: B8。
下面代码的输出结果是:3.141593.141593Pi=3.143。
1416正确答案: A9.以下关于异常处理的描述,错误的选项是:Python通过try、except等保留字提供异常处理功能ZeroDivisionError是一个变量未命名错误NameError是一种异常类型异常语句可以与else和finally语句配合使用正确答案: B10。
for或者while与else搭配使用时,关于执行else语句块描述正确的是仅循环非正常结束后执行(以break结束)仅循环正常结束后执行总会执行永不执行正确答案: B11.以下代码执行的输出结果是:出错正确答案: B12。
二级C语言分类模拟题516(总分51, 做题时间90分钟)选择题1.下列程序的输出结果是______。
#include<stdio.h>main(){int a[2][3]={{1, 2, 3}, {4, 5, 6}}, (*p)[3], i; p=a;for(i=0; i<3; i++){ if(i<2)p[1][i]=p[1][i]-1;elsep[1][i]=1;}printf("%d\n", a[0][1]+a[1][1]+a[1][2]);}SSS_SINGLE_SELA 8B 7C 12D 9分值: 2.5答案:B[解析] 本题考查for循环及if…else语句嵌套,第1次执行for循环,p[1][0]=p[1][0]=p[1][0]-1=3;第2次执行for循环,p[1][1]=p[1][1]-1=4;第3次执行for循环,p[1][2]=1,最后输出的是a[0][1]+a[1][1]+a[1][2]=2+4+1=7。
2.以下叙述中正确的是______。
SSS_SINGLE_SELA 使用break语句可以使流程跳出switch语句体B break语句不能用于提前结束for语句的本层循环C continue语句使得整个循环终止D 在for语句中,continue与break的效果是一样的,可以互换分值: 2答案:A[解析] break跳出switch语句或循环语句,contiune结束本次循环,继续进行剩余的循环。
所以答案选择A。
3.有以下程序:#include<stdio.h>void fun(int*s, int n1, int n2){ int i, j, t;i=n1; j=n2;while (i<j){ t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i++; j--; }}main(){ int a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 0}, i, *p=a;fun(p, 0, 3); fun(p, 4, 9); fun(p, 0, 9);for(i=0; i<10; i++) printf("%d", *(a+i));程序的输出结果是SSS_SINGLE_SELA 0987654321B 4321098765C 5678901234D 0987651234分值: 1答案:C4.以下叙述中正确的是______。
计算机专业基础综合考试模拟试卷(四)一、单项选择题:第1~40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项最符合试题要求。
1.若循环队列以数组Q[0..m−1]作为其存储结构,变量rear表示循环队列中的队尾元素的实际位置,其移动按rear=(rear+1) MOD m进行,变量length表示当前循环队列中的元素个数,则循环队列的队首元素的实际位置是()。
A.rear−length B.(rear−length+m) MOD mC.(1+rear+m−length) MOD m D.(rear+length−1) MOD m 2.若一个栈以向量V[1…n]存储,初始栈顶指针top为n+1,则x进栈的正确操作是()。
A.top=top+1; V[top]=x B.V[top]=x; top=top+1C.top=top-1; V[top]=x D.V[top]=x; top=top-1 3.若一棵深度为6的完全二叉树的第6层有3个叶子结点,则该二叉树共有()个叶子结点。
A.17 B.18 C.19 D.20 4.在一棵非空二叉树的中序遍历序列中,根结点的右边()。
A.只有右子树上的所有结点B.只有右子树上的部分结点C.只有左子树上的部分结点D.只有左子树上的所有结点5.某二叉树结点的中序序列为BDAECF,后序序列为DBEFCA,则该二叉树对应的森林包括()棵树。
A.1 B.2 C.3 D.4 6.在具有n个顶点的图G中,若最小生成树不唯一,则()。
A.G的边数一定大于n-1 B.G的权值最小的边一定有多条C.G的最小生成树代价不一定相等D.上述选项都不对7.以下关于图的叙述中,正确的是()。
A.强连通有向图的任何顶点到其他所有顶点都有弧B.图与树的区别在于图的边数大于或等于顶点数C.无向图的连通分量指无向图中的极大连通子图D.假设有图G={V,{E}},顶点集V′⊆V,E′⊆E,则V′和{E′}构成G的子图8.在关键字随机分布的情况下,用二分查找树的方法进行查找,其平均查找长度与()量级相当。
1)顺序循环队列类型定义为:
#define N 20typedef struct
{ int data[N];
int front, rear;
}queue_type;
2)编写循环队列出队函数dequeue
3)编写循环队列入队函数enqueue
4)编写函数:void aa(queue_type *q);
调用出对函数把队列q中的元素一一出对列,如果是负数直接抛弃;如果是正数,则调用入
队函数,插入到q的队尾。5)编写main函数,首先建立一个队列,其中的数据元素为:{2,
3, -4, 6, -5, 8, -9, 7, -10, 20};然后调用aa函数,并将aa函数调用前后队列的数据元素分别
输出到屏幕上。
#include
#define N 20
typedef int elemtype;
int count;
typedef struct queue_type
{ elemtype data[N];
int front;
int rear;
}queue_type;
void initqueue(queue_type *q)
{
q->front=q->rear=0;
return;
}
int enqueue(queue_type *q,elemtype x)
{
if((q->rear+1) % N == q->front)
return 0;
else
{
q->rear=(q->rear+1)%N;
q->data[q->rear]=x;
return(true);
}
}
int dequeue(queue_type *q,elemtype *x)
{
if(q->rear == q->front)
return(NULL);
else
{
q->front=(q->front+1) % N;
*x=q->data[q->front];
}
return 0;
}
void aa(queue_type *q)
{
int i;
q->front=0;
q->rear=count;
i=count;
elemtype out;
while(i--)
{
dequeue(q,&out);
count--;
if(out>0)
{
enqueue(q,out);
count++;
}
}
}
int main()
{
elemtype x,temp;
int i,j,k;
queue_type Q;
initqueue(&Q);
printf("Now, let's make a stack! Please input the number:\n");
scanf("%d",&count);
i=count;
printf("Please input the data:\n");
scanf("%d",&x);
while(--i)
{
enqueue(&Q,x);
scanf("%d",&x);
}
enqueue(&Q,x);
j=count;
while(j--)
{
dequeue(&Q,&temp);
printf("%d ",temp);
}
aa(&Q);
k=count;
printf("\nQueue After 'aa':\n");
while(k--)
{
dequeue(&Q,&temp);
printf("%d ",temp);
}
return 0;
}