网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

阅读以下应用程序说明和C程序,将C程序段中(1)~(7)空缺处的语句填写完整。

【说明】

某超市集团为发展业务向社会公开招聘N个工种的工作人员,每个工种各有不同的编号(1至M)和计划招聘人数。每位应聘者需申报两个工种,并参加集团组织的考试。该集团公司将按应聘者的成绩从高分至低分的顺序进行排队录取。具体录取原则是:从高分到低分依次对每位应聘者先按其第一志愿录取;当不能按其第一志愿录取时,便将他的成绩扣去5分后,重新排队,并按其第二志愿录取。

以下C程序为输出各工种实际招聘的应聘人员,每个工种都保留一个录取者的有序队列。录取处理循环直至招聘额满或已对全部应聘者都作了录取处理后跳出。

C程序中,类型STU包含有应聘者的基本信息:编号、成绩、志愿、排队成绩和录取志愿号。数组 rzl)的每个元素对应一个工种,包含有计划招聘人数和已录取的人数。

【C程序】

include

define N 36

define EDMARK 5

typedef struct stu {

int no, total, z[2], sortm, zi;

struct stu *next;

} STU;

struct rznode {

int lmt, count;

STU *next;

} rz [N];

STU *head = NULL, *over = NULL;

int all

FILE *fp;

char dataf [ ] = "zp2008.dat" ;

print(STU *p)

{ for (;p!=NULL; p = p->next)

printf( "%d(%d) \t" , p->no, p->total

}

insert(STU **p, STU *u)

{ STU *v, *q;

for (q = *p;q != NULL; v = q , (1) )

if (q-> sortm < u->sortm)

break;

if ( q == *p)

(2);

else

(3);

u->next = q ;

}

main ( )

{ int zn, i, no, total, zl, z2 ;

STU *p, *v, *q;

fp = fopen(dataf, "r" );

if (fp == NULL)

{ printf ("Can't open file %s.kn" ,dataf);

exit (0);

}

fscanf (fp, "%d" ,&zn);

for (all = 0, i = 1; i <= zn; i++)

{ fscanf (fp, "%d", &rz [ i ].lmt ;

rz[i].count = 0;

rz[i].next = NULL;

all +=(4);

}

for (;;)

{ if (( fscanf(fp, "%d%d%d%d" ,&no,&total,&zl,&z2)) != 4 )

break;

p = ( STU *) malloc (sizeof (STU));

p->no = no;

p->total = p->sortm = total;

p->zi = 0;

p->z[0] = z1;

p->z[1] = z2;

(5);

}

fclose (fp);

for (;all && head != NULL;)

{ p = head;

head = head->next;

if (rz[p->z[p->zi]].count <(6))

{ rz[p->z[p->zi]].count ++;

insert(&rz[p->z[p->zi]].next,p);

all--;

continue;

}

if (p->zi >= 1 )

{ p->next = over;

ver = p;

continue;

}

p->sortm -= DEMARK;

(7);

insert(&head,p);

}

for (i = 1; i <= zn; i++ )

{ printf("%d:\n" ,i);

print( rz[i ].next);

printf(" \n");

}

printf( "over:\n" );

print(head);

print(over);

printf(" \n");

}


参考答案

更多 “ 阅读以下应用程序说明和C程序,将C程序段中(1)~(7)空缺处的语句填写完整。【说明】某超市集团为发展业务向社会公开招聘N个工种的工作人员,每个工种各有不同的编号(1至M)和计划招聘人数。每位应聘者需申报两个工种,并参加集团组织的考试。该集团公司将按应聘者的成绩从高分至低分的顺序进行排队录取。具体录取原则是:从高分到低分依次对每位应聘者先按其第一志愿录取;当不能按其第一志愿录取时,便将他的成绩扣去5分后,重新排队,并按其第二志愿录取。以下C程序为输出各工种实际招聘的应聘人员,每个工种都保留一个录取者的有序队列。录取处理循环直至招聘额满或已对全部应聘者都作了录取处理后跳出。C程序中,类型STU包含有应聘者的基本信息:编号、成绩、志愿、排队成绩和录取志愿号。数组 rzl)的每个元素对应一个工种,包含有计划招聘人数和已录取的人数。【C程序】includedefine N 36define EDMARK 5typedef struct stu {int no, total, z[2], sortm, zi;struct stu *next;} STU;struct rznode {int lmt, count;STU *next;} rz [N];STU *head = NULL, *over = NULL;int allFILE *fp;char dataf [ ] = "zp2008.dat" ;print(STU *p){ for (;p!=NULL; p = p->next)printf( "%d(%d) \t" , p->no, p->total}insert(STU **p, STU *u){ STU *v, *q;for (q = *p;q != NULL; v = q , (1) )if (q-> sortm < u->sortm)break;if ( q == *p)(2);else(3);u->next = q ;}main ( ){ int zn, i, no, total, zl, z2 ;STU *p, *v, *q;fp = fopen(dataf, "r" );if (fp == NULL){ printf ("Can't open file %s.kn" ,dataf);exit (0);}fscanf (fp, "%d" ,zn);for (all = 0, i = 1; i <= zn; i++){ fscanf (fp, "%d", rz [ i ].lmt ;rz[i].count = 0;rz[i].next = NULL;all +=(4);}for (;;){ if (( fscanf(fp, "%d%d%d%d" ,no,total,zl,z2)) != 4 )break;p = ( STU *) malloc (sizeof (STU));p->no = no;p->total = p->sortm = total;p->zi = 0;p->z[0] = z1;p->z[1] = z2;(5);}fclose (fp);for (;all head != NULL;){ p = head;head = head->next;if (rz[p->z[p->zi]].count <(6)){ rz[p->z[p->zi]].count ++;insert(rz[p->z[p->zi]].next,p);all--;continue;}if (p->zi >= 1 ){ p->next = over;ver = p;continue;}p->sortm -= DEMARK;(7);insert(head,p);}for (i = 1; i <= zn; i++ ){ printf("%d:\n" ,i);print( rz[i ].next);printf(" \n");}printf( "over:\n" );print(head);print(over);printf(" \n");} ” 相关考题
考题 请根据试题的要求,将汇编程序代码中(1)~(8)空缺处的内容填写完整。

考题 请使用[说明]中给出的词语,将销售事件序列图中的(A)~(D)空缺处的内容填写完整。

考题 阅读以下程序说明和C++程序,将程序段中(1)~(7)空缺处的语句填写完整。[说明]使用MFC的CSocket类在两个或者多个应用程序之间建立通信。服务器应用程序先创建一个特殊的 Socket,用于监听客户应用程序的连接请求,然后再创建新的Socket来完成连接。从客户和服务器两端读取该连接,直到一个需要处理的报文到来为止。以下C++程序将封装这些功能,这样所有应用程序需要完成的只是创建一个Socket连接,然后处理到来的报文。这将包括一个新的服务器Socket类、新客户端Socket类和新的报文队列类。创建新的服务器Socket类程序的框架如下。第1个函数ListenEx()用于通知Socket开始监听客户应用程序。第2个函数OnAccept()在接收到连接请求时被调用。在其中创建新的Socket,并立刻设置它开始从客户应用程序读取报文,这些是通过调用第3个函数RecvThread()来完成的,该函数位于它自己的线程中。[C++程序][ListenEX()函数]

考题 请仔细阅读以下关于某传输系统的技术说明、状态转换图及Java程序,根据要求回答问题1~问题2。[说明]传输门是传输系统中的重要装置。传输门具有Open(打开)、Closed(关闭)、Opening(正在打开)、 StayOpen(保持打开)和Closing(正在关闭)5种状态。触发状态的转换事件有click、complete和timeout3种。事件与其相应的状态转换如图7-16所示。下面的[Java代码1]与[Java代码2]分别用两种不同的设计思路对传输门进行状态模拟,请填补代码段中的空缺语句。[Java代码1]请将以上[Java代码1]与[Java代码2]程序段中,(1)~(7)空缺处的语句填写完整。

考题 请使用[说明]中数据字典条目定义形式,将以下(1)和(2)空缺处的内容填写完整。初录数据=(1) 复录数据=(2)

考题 请认真阅读以下关于某传输系统的技术说明、状态转换图及C++代码,根据要求回答问题1~问题2。[说明]传输门是传输系统中的重要装置。传输门具有Open(打开)、Closed(关闭)、Opening(正在打开)、 StayOpen(保持打开)和Closing(正在关闭)5种状态。触发状态的转换事件有click、complete和timeout3种。事件与其相应的状态转换如图7-15所示。下面的[C++代码1]与[C++代码2]分别用两种不同的设计思路对传输门进行状态模拟,请填补代码段中的空缺语句。[C++代码1]请将以上[C++代码1]与[C++代码2]程序段中的(1)~(7)空缺处的语句填写完整。

考题 阅读以下函数说明和C代码,将C程序中(1)~(5)空缺处的语句填写完整。[说明]函数int Toplogical(LinkedWDigraphG)的功能是对图G中的顶点进行拓扑排序,并返回关键路径的长度。其中,图G表示一个具有n个顶点的AOE-网,图中顶点从1~n依次编号,图G的存储结构采用邻接表表示,其数据类型定义如下。例如,某AOE-网如图6-22所示,其邻接表存储结构如图6-23所示。[函数]

考题 阅读以下说明和C++代码。[说明]已知类SubClass的getSum方法返回其父类成员与类SubClass成员j的和,类 SuperClass中的getSum为纯虚拟函数。程序中的第23行有错误,请修改该错误并给出修改后的完整结果,然后完善程序中的空缺,分析程序运行到第15行且尚未执行第15行的语句时成员变量j的值,最后给出程序运行后的输出结果。[C++代码]

考题 阅读以下交换机配置说明,根据要求回答问题。[说明]某公司租用了一段C类地址203.12.11.0/24~203.12.14.0/24,如图7-8所示。其网间地址是 172.11.5.14/24。要求公司内部网络中所有PC都能上网。交换机Switch1的部分配置命令如下,请将(1)~(4)空缺处的内容填写完整,以完成交换机的相关配置(注:填写答案时,配置语句的关键字要求拼写完整)。

考题 阅读以下说明和x86汇编语言代码,根据要求回答问题1至问题3。【说明】在某嵌入式安全监测系统中,对某任务的加工操作需通过数据采集(Collect_task)、计算(Calculate_task)这两个不同的程序段来完成,并且执行程序段Collect_task和Calculate _task的顺序及次数有如下约定:Collect_task(2次)→Calculate_task(1次)→Collect_task(5次)→Calculate_task(4次)→Collect_task(2次)→Calculate_task(2次)表6-22 所示为x86系统部分指令及寄存器说明。采用逻辑尺控制法实现以上要求的汇编程序如下:【汇编程序代码】N EQU (1)RULE EQU (2)CODE SEGMENTASSUME CS:CODESTART: MOV AX,RULEMOV CL,NLOP: SAL AX,1JC (3)Collect: CALL Collect_task ;执行Collect_task程序段JMP (4)Calculate:CALL Calculate_task ;执行Calculate_task程序段NEXT: (5)JNZ (6)MOV AH,4CH ;功能号送入AH寄存器INT (7) ;结束程序运行,中断返回(8)END START请根据试题的要求,将汇编程序代码中(1)~(8)空缺处的内容填写完整。