阅读以下说明和C程序,填充函数中的空缺。 [说明] N个游戏者围成一圈,从1~N

题型:填空题

问题:

阅读以下说明和C程序,填充函数中的空缺。
[说明]
N个游戏者围成一圈,从1~N顺序编号,游戏方式如下;从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,直到剩余一个游戏者为止,该游戏者即为获胜者。
下面的函数playing(Linklist head)模拟上述游戏过程并返回获胜者的编号。其中,N个人围成的圈用一个包含N个结点的单循环链表来表示,如图1所示,游戏者的编号放在结点的数据域中。


在函数中,以删除结点来模拟游戏者退出圈子的处理。整型变量c(初值为1)用于计数,指针变量p的初始值为head(如图1所示)。游戏时,从p所指向的结点开始计数,p沿链表中的指针方向遍历结点,c的值随p的移动相应地递增。当c计数到2时,就删除p所指结点的下一个结点(因下一个结点就表示报数到3的游戏者),如图2所示,然后将c设置为0后继续游戏过程。


结点类型定义如下:
typedef struct node
int code; /*游戏者的编号*/
struct node *next;
NODE, *LinkList;
[C函数]
int P1aying(LinkList head,int n)
/*head指向含有n个结点的循环单链表的第一个结点(即编号为1的游戏者)*/
LinkList p=head,q;
int thewinner,c=1;
while(n>______)
if(c==2) /*当c等于2时,p所指向结点的后继即为将被删除的结点*/
q=p->next;
p->next=______;
printf("%d\t",q->code); /*输出退出圈子的游戏者编号*/
free(q);
/*if*/
p=______;
/*while*/
theWinner=______;
free(p);
return theWinner; /*返回最后一个游戏者(即获胜者)的编号*/

考点:计算机软件水平考试初级程序员程序员
题型:填空题

慢性呼吸衰竭患者机械通气的指征,错误的是()

A.PaCO2进行性升高

B.PaCO2升高达到80mmHg以上

C.严重的低氧血症,积极氧疗后,PaO2仍<40mmHg

D.呼吸频率超过35次/min

E.并发肺性脑病

题型:填空题

何谓煤的元素分析法?煤的可燃元素有哪些?

题型:填空题

腕部餐叉样样畸形发生于()

A.前臂双骨折 

B.尺骨下段骨折 

C.桡骨远端伸直型骨折 

D.桡骨远端屈曲型骨折 

E.腕舟骨骨折 

题型:填空题

当感染性心内膜炎诊断明确后,应急诊或尽快安排手术的情况有()

A.应用抗生素后,体温逐渐下降,无感染中毒症状,血流动力学稳定

B.感染控制,但主动脉右冠瓣穿孔,重度反流,左心功能下降

C.血培养阳性

D.虽经足量抗生素治疗后,二尖瓣前叶上的赘生物直径最大约12mm,多次心脏超声示赘生物逐渐增大,治疗期间曾有1次突然腹痛病史

E.患者发生右大脑半球出血

题型:填空题

定期检验时,专为升降物料和悬挂吊盘用的提升钢丝绳,安全系数小于()时,应当及时更换。

A.5

B.6

C.7

D.9

更多题库