首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和程序流程图,将应填入(n)处的字句写在对应栏内。 [说明] 当一元多项式中有许多系数为零时,可用一个单链表来存储,每个节点存储一个非零项的指受和对应系数。 为了便于进行运算,用带头节点的单链表存储,头节点中存储多项式中
阅读以下说明和程序流程图,将应填入(n)处的字句写在对应栏内。 [说明] 当一元多项式中有许多系数为零时,可用一个单链表来存储,每个节点存储一个非零项的指受和对应系数。 为了便于进行运算,用带头节点的单链表存储,头节点中存储多项式中
admin
2010-12-17
38
问题
阅读以下说明和程序流程图,将应填入(n)处的字句写在对应栏内。
[说明]
当一元多项式
中有许多系数为零时,可用一个单链表来存储,每个节点存储一个非零项的指受和对应系数。
为了便于进行运算,用带头节点的单链表存储,头节点中存储多项式中的非零项数,且各节点按指数递减顺序存储。例如:多项式8x
5
-2x
2
+7的存储结构为:
流程图图3-1用于将pC(Node结构体指针)节点按指数降序插入到多项式C(多项式POLY指针)中。
流程图中使用的符号说明如下:
(1)数据结构定义如下:
#define EPSI 1e-6
struct Node{ /*多项式中的一项*/
double c; /*系数*/
int e; /*指数*/
Struct Node *next;
};
typedef struct{ /*多项式头节点*/
int n; /*多项式不为零的项数*/
struct Node *head;
}POLY;
(2)Del(POLY *C,struct Node *p)函数,若p是空指针则删除头节点,否则删除p节点的后继。
(3)fabs(double c)函数返回实数C的绝对值。
[图3-1]
(5)
选项
答案
t:=NULL
解析
该流程图是用于将pC(Node结构体指针)节点按指数降序插入到多项式C(多项式POLY指针)中。需要特别注意特殊情况:C为空多项式,即插入第一项时的处理;当pC的指数比C中的最大指数还大时的处理;当pC的指数与C中某项的指数相同时,进行系数相加,若相加后为0时的处理。
根据结构体POLY的声明,可知C->head为NULL意味着多项式为空,将pC作为第一项插入,故空(1)应填C->head:=pC。
pC->e>C->head->e意味着pC的指数比C中的最大指数还大,此时应将将pC作为第一项插入,处理方式同上,故空(2)应填pC->next:=C->head。
先分析空(4),控制流可以从两条路到达空(4)处,一是t==NULL(到了多项式C的末尾),亦即pC的指数比C中最小的还小,此时须将pC插入到末尾;一是t->e=:pC->e(找到同指数项,进行合并),显然t!=NULL,此时不必在作任何操作。因此可通过判断t是否为NULL区分这两种情况,故空(4)处应填t:NULL。
要将pC插入到末尾,此时t==NULL,因此须正确记录其前驱方可插入(单链表),注意到空(4)分支t==NULL时的处理用到tp,易于判断tp正是用来记录前驱的。亦可at->e>pC->e时的处理:tp:=t、t:=t->next得到验证。纵观流程,tp没有赋初值,这样,空(3)处就应该是对其赋初值,故应填tp:=NULL。
再来看空(5),此时是t->e<pC->e,注意到C是降序排序(对指数而言)的,也就是说t以前(不包括t)的指数均大于pC,以后(包括t)的均小于pC,这样pC就应该插在t以前(据上述分析,亦即tp以后)。而(5)后的控制流是回到判断t:NULL,因此,此处应填t:=NULL。这样,就可将pC正确的插入tp之后,t之前,这个工作由空(4)的分支t==NULL完成。
转载请注明原文地址:https://kaotiyun.com/show/cvDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某软件公司项目组的程序员在程序编写完成后均按公司规定撰写文档,并上交公司存档。此情形下,该软件文档著作权应由______享有。
在字长为16位、32位、64位或128位的计算机中,字长为______位的计算机数据运算精度最高。
调用函数时若是引用调用方式,则是将________________。下面所定义的函数f1为值调用方式,函数f2为引用调用方式。若有表达式x=f1(5),则函数调用执行完成后,该表达式中x获得的值为________________。
操作系统的主要任务是________________。
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(2)
操作系统通过______来组织和管理外存中的信息。
在开发一个字处理软件时,首先快速发布了一个提供基本文件管理、编辑和文档生成功能的版本,接着发布提供更完善的编辑和文档生成功能的版本,最后发布提供拼写和语法检查功能的版本,这里采用了()过程模型。
计算机采用分级存储体系的主要目的是为了解决()的问题。
缺陷探测率DDP是衡量一个公司测试工作效率的软件质量成本的指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80个,测试人员A发现的缺陷数量为50个,测试人员B发现的缺陷数为50个,测试人员A和测试人员B发现的缺陷不重复,客户反馈缺
随机试题
横断层面上识别胰尾的标志性结构
肝硬化患者侧支循环形成时最重要交通支是
A、主要含香豆素类成分B、主要含木脂素类成分C、主要含三萜皂苷类成分D、主要含甾体皂苷类成分E、主要含挥发油五味子
编制费用计划过程中最重要的方法,就是()的分解。
FIDIC合同规定,工程接收证书的颁发,表明了()。
关于单价合同说法正确的是()。
下列对金融工具现货交易与期货交易的交易方式和结算方式的表述错误的是( )。
教师的任用方式一般有三种,它们是派用制、聘用制和()。
下列词语没有错别字的一项是()
设有定义:chars[81];inti=0;以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()。
最新回复
(
0
)