【计算机类职业资格】初级程序员下午试题-57及答案解析.doc

上传人:proposalcash356 文档编号:1330117 上传时间:2019-10-17 格式:DOC 页数:18 大小:162.50KB
下载 相关 举报
【计算机类职业资格】初级程序员下午试题-57及答案解析.doc_第1页
第1页 / 共18页
【计算机类职业资格】初级程序员下午试题-57及答案解析.doc_第2页
第2页 / 共18页
【计算机类职业资格】初级程序员下午试题-57及答案解析.doc_第3页
第3页 / 共18页
【计算机类职业资格】初级程序员下午试题-57及答案解析.doc_第4页
第4页 / 共18页
【计算机类职业资格】初级程序员下午试题-57及答案解析.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、初级程序员下午试题-57 及答案解析(总分:105.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)阅读以下技术说明和流程图,根据要求回答问题 1 至问题 3。说明图 4-8 的流程图所描述的算法功能是将给定的原字符串中的所有前部空白和尾部空白都删除,但保留非空字符。例如,原字符串“ FileName ”,处理变成“File Name”。图 4-9、图 4-10 和图 4-11 分别详细描述了图 4-8 流程图中的处理框 A、B、C。假设原字符串中的各个字符依次存放在字符数组 ch 的各元素 ch(1)、ch(2)、ch(n)中,字符常量 KB表示空白字符。图 4-

2、8 所示的流程图的处理过程是:先从头开始找出该字符串中的第一个非空白字符 ch(i),再从串尾开始向前找出位于最末位的非空白字符 ch(j),然后将 ch(i)、ch(j)依次送入 ch(1)、ch(2)、中。如果字符串中没有字符或全是空白字符,则输出相应的说明。在图 4-8 流程图中,strlen()是取字符串长度函数。图 4-8 算法总流程图图 4-9 处理框 A 对应的流程图图 4-10 处理框 B 对应的流程图图 4-11 处理框 C 对应的流程图(分数:15.00)(1).问题 1请将图 4-9、图 4-10 和图 4-11 流程图中(1)(4)空缺处的内容填写完整。(分数:5.00

3、)_(2).问题 2在图 4-8 流程图中,判断框 P 中的条件可表示为:i U(5) /U。(分数:5.00)_(3).问题 3函数 f_str(char *str,char del)的功能是;将非申字符串 str 分割成若干个子字符串并输出,del 表示分割时的标志字符。例如,若 str 的值为“66981636666257”,del 的值为“6”,调用此函数后,将输出 3 个子字符串,分别为“981”、“3”和“257”。请将函数 f_str 中(6)(8)空缺处的内容填写完整。函数void f_str(char *str,char del) int i,j,len;len = strl

4、en(str);i = 0;while (ilen) while (U (6) /U)i+; /* 忽略连续的标志字符 */* 寻找从 srti开始直到标志字符出现的一个子字符串 */j = i+1;while (strj !=del U(7) /U=“/0“; /* 给找到的字符序列置字符串结束标志 */printf (“ %s/t“, U(8) /U;(分数:5.00)_二、B试题二/B(总题数:1,分数:15.00)1.说明某种传感器的输出值 Ratio 依赖于环境温度 temp(-40temp50)。对一组环境温度值(ITEMS 个),已经测量得到了相应的 Ratio 值(如表 4-1

5、0 表格所示)。表 4-10 粗略地描述了曲线 Ratio(temp)。B表 4-10 曲线 Ration(temp)的列表值/B 环境温度 temp 传感器的输出值 Ratio-40 0.20-20 0.60-10 0.800 1.0010 1.1730 1.5050 1.80校正系数 K 是 Ratio 的倒数,因此也依赖于环境温度 temp。在数据处理中,需要用更多的列表值细致地描述曲线 K(temp),如表 4-11 所示。B表 4-11 曲线 K(temp)的列表值/B 环境温度 temp 校正系数 K-40 5.00-39 4.55-38 4.17-37 3.85 -20 1.67

6、-19 1.61 -10 1.25-9 1.22 -19 0.56在表 4-11 中,各温度值所对应的 K 值是对表 4-10 进行线性插值再求倒数得到的,具体的计算方法如下。1) 根据 temp 值,在表 4-10 中用二分法查找;2) 若找到相应的温度值,则按相应的 Ratio 值求倒数得到 K 值;3) 若没找到相应的温度值,则可确定 temp 所在的温度区间Tp1,Tp2,同时获得了相应的 Ratio1 和 Ratio2,再按如下公式计算 K 值:(分数:15.00)_三、B试题三/B(总题数:1,分数:15.00)2.说明以下C 程序是对某电码明文(原文)进行加密形成密文。其加密算法

7、如下。假定原文为 C1C2C3Cn,加密后形成的密文为 S1S2S3Sn其中 n 为小于 256 的任意自然数。首先读入正整数 Key(Key1)作为加密钥匙,并将密文字符位置按顺时针方向连成一个环,如图 4-12 所示。图 4-12 密文字符环示意图加密时从 S1位置起顺时针计数,当数到第 Key 个字符位置时,将原文中的字符放入该密文字符位置中,同时从环中除去该字符位置;接着从环中下一个字符位置起继续计数,当再次数到第 Key 个字符位置时,将原文中字符 C2放入其中,并从环中除去该字符位置;依此类推,直至 n 个原文字符全部放入密文环中。由此产生的 S1S2Sn即为原文的密文。例如,原文

8、:One World One Dream。当 Key=5 时,其密文为:me OnWlanD oOedrer;当 Key=6 时该原文的密文为:oeDn OedrrOn Wma le。程序使用示例如图 4-13 所示。(分数:15.00)_四、B试题四/B(总题数:1,分数:15.00)3.说明 函数 int Toplogical (LinkedWDigraph G)的功能是对图 G 中的顶点进行拓扑排序,并返回关键路径的长度。其中,图 G 表示一个具有 n 个顶点的 AOE-网,图中顶点从 1n 依次编号,图 G 的存储结构采用邻接表表示,其数据类型定义如下。 typedef struct

9、Gnode /* 邻接表的表节点类型 */ int adjvex; /* 邻接顶点编号 */ int weight; /* 弧上的权值 */ struct Gonde*nextare; /* 指示下一个弧的节点 */ Gnode; typedef struct Adjlist /* 邻接表的头节点类型 */ char vdata; /* 顶点的数据信息 */ struct Gnode*Firstadj; /* 指向邻接表的第一个表节点 */ Adjlist; typedef struct LinkedWDigraph /* 图的类型 */ struct Adjlist head; /* 指向图

10、中第一个顶点的邻接表的头节点 */ LinkedWDigraph; 例如,某 AOE-网如图 4-14 所示,其邻接表存储结构如图 4-15 所示。 图 4-14 某 AOE-网 (分数:15.00)_五、B试题五/B(总题数:1,分数:15.00)从下列 3 道试题(试题 5 至试题 7)中任选 1 道解答。如果解答的试题数超过 1 道,则题号小的 1 道解答有效。阅读以下应用说明及 Visual Basic 程序,根据要求回答问题 1 至问题 2。说明某 Visual Basic 应用程序用于监测某种锅炉设备内液面高度(050cm),其运行窗口界面如图 4-16 所示。(分数:15.00)

11、(1).问题 1请根据说明和图 4-16 所示的显示结果,将说明中(1)空缺处的内容和Visual Basic 程序中(2)(9)空缺处的程序语句填写完整。(分数:7.50)_(2).问题 2若要在图 4-16 窗口内新增一个帮助按钮,单击该按钮就会弹出一个帮助对话框(另一名为 frm002 的窗体),用户必须在其中做出响应,程序才能继续运行。请将以下该命令按钮的单击事件过程中的程序代码填写完整。Private Sub CmdHelp_C1ick()U (10) /UEnd Sub(分数:7.50)_六、B试题六/B(总题数:1,分数:15.00)阅读以下应用说明、图和 C+代码,根据要求回答

12、问题 1 至问题 3。说明已知以下 C+程序运行时的输出结果如下。1:11:11:1C+程序01 #include iostream02 using namespace std;03 class Stock04 protect:05 U (1) /U ;06 Stock(int n, int pr=1) 07 shares = n; share_val=pr;08 ;09 void Stock() ;10 public:11 /成员函数12 void output() 13 U (2) /U shares “:“ share_val endl;14 15 private:16 /成员变量17

13、int shares;18 int share_val;19 ;2021 void main() 22 Stock a(1); a.output23 Stock b; b.output24 Stock c = Stock (); c.output25 (分数:15.00)(1).问题 1请根据 C+程序运行时的输出结果,将代码中(1)、(2)空缺处的内容补充完整。(分数:5.00)_(2).问题 2类 Stock 的定义中有两处错误,请指出错误所在行号并给出该行修改后的完整结果。(分数:5.00)_(3).问题 3指出该代码是否存在内存泄漏。(分数:5.00)_七、B试题七/B(总题数:1,分

14、数:15.00)4.说明类 Queue 表示队列,类中的方法如表 4-12 所示。B表 4-12 类 Queue 中方法说明表/B 方法 说明IsEmpty() 判断队列是否为空,如果队列不为空,返 回 true;否则,返回 falseEnqueue(object NewNode) 入队操作Dequeue() 出队操作。如果队列为空,则抛出异常类 Node 表示队列中的元素;类 EmptyQueueException 给出了队列中的异常处理操作。Java 代码public class testmain /主类public static viod main (string args) Queue

15、 q= new Queue;q.enqueue(“first!“);q.enqueue(“second!“);q.enqueue(“third!“);U (1) /U while(true)system.out.println(q.dequeue();catch(U (2) /U) public class Queue /队列node m_firstnode;public Queue()m_firstnode=null;public boolean isempty() if (m_firstnode= =null)return true;elsereturn false;public viod

16、 enqueue(object newnode) /入队操作node next = m_firstnode;if (next = = null) m_firstnode=new node(newnode);else while(next.getnext() !=null)next=next.getnext();next.setnext(new node(newnode);public object dequeue() U(3) /U /出队操作object node;if (is empty()U (4) /Uelse node =m_firstnode.getobject();m_first

17、node=m_firstnode.getnext();return node;public class node /队列中的元素object m_data;node m_next;public node(object data) m_data=data; m_next=null;public node(object data,node next) m_data=data; m_next=next;public void setobject(object data) m_data=data; public object getobject(object data) return m_data;

18、public void setnext(node next) m_next=next; public node getnext() return m_next; public class emptyqueueexception extends U(5) /U /异常处理类public emptyqueueexception() system. out. println ( “队列已空!“ );(分数:15.00)_初级程序员下午试题-57 答案解析(总分:105.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)阅读以下技术说明和流程图,根据要求回答问题 1 至问题

19、3。说明图 4-8 的流程图所描述的算法功能是将给定的原字符串中的所有前部空白和尾部空白都删除,但保留非空字符。例如,原字符串“ FileName ”,处理变成“File Name”。图 4-9、图 4-10 和图 4-11 分别详细描述了图 4-8 流程图中的处理框 A、B、C。假设原字符串中的各个字符依次存放在字符数组 ch 的各元素 ch(1)、ch(2)、ch(n)中,字符常量 KB表示空白字符。图 4-8 所示的流程图的处理过程是:先从头开始找出该字符串中的第一个非空白字符 ch(i),再从串尾开始向前找出位于最末位的非空白字符 ch(j),然后将 ch(i)、ch(j)依次送入 c

20、h(1)、ch(2)、中。如果字符串中没有字符或全是空白字符,则输出相应的说明。在图 4-8 流程图中,strlen()是取字符串长度函数。图 4-8 算法总流程图图 4-9 处理框 A 对应的流程图图 4-10 处理框 B 对应的流程图图 4-11 处理框 C 对应的流程图(分数:15.00)(1).问题 1请将图 4-9、图 4-10 和图 4-11 流程图中(1)(4)空缺处的内容填写完整。(分数:5.00)_正确答案:()解析:本题用分层的流程图形式描述给定的算法。图 4-8 所描述的流程图是顶层图,其中用 A、B、C 标注了 3 个处理框。而图 4-9、图 4-10 和图 411 所

21、描述的流程图分别对这 3 个处理框进行了细化。 处理框A 的功能是依次检查 ch(1),ch(2),(即从串首开始查找),直到找到非空白字符 ch(i)。在图 4-9 所描述的流程图中,对 i=1,2进行循环,只要未找到字符串尾部标志(即“/0“),且 ch(i)为空白字符(KB),那么还需要继续查找。因此,(1)空缺处所填写的内容是“i=n”或“n=i”或其他等价形式。 处理框 B 的功能是依次检查 ch(n),ch(n-1),(即从串尾向前开始查找),直到找到非空字符 ch(j)。在图 4-10 所描述的流程图中,对 j=n,n-1进行循环,只要 ch(j)=KB(空白字符),那么还需要继

22、续循环查找。由于 B 框处理的前提是 A 框中已经找到了非空字符 ch(i),因此循环最多到达“j=i”处就会结束。可见,(2)空缺处所填写的判断条件是“ch(j)=KB”。而图 4-10 中的判断条件“ji”是可有可无的。处理框 C 的功能是将 ch(i),ch(i+1),ch(j)的内容依次送入 ch(1),ch(2)中。在图 4-11 所描述的流程图中,对 kf=i,i+l,j 进行循环,只要满足“k=j”的条件,就要继续循并环做传送处理,因此(3)空缺处所填写的内容是“k=i”或其等价形式。 由于 ch(i)应送往 ch(1),ch(i+1)应送往ch(2),因此,ch(k)应送往 c

23、h(k-i+1)。这是程序员应熟练掌握的基本功,即从几个特例,寻找普遍规律,再用特例代进去试验是否正确。因此,(4)空缺处所填写的内容是“ch(k-i+1)”。(2).问题 2在图 4-8 流程图中,判断框 P 中的条件可表示为:i U(5) /U。(分数:5.00)_正确答案:()解析:在图 4-8 所描述的流程图中,判断 ch 是空白字符串,等价于 A 框处理结束后没有找到空白字符。从图 4-9 所描述的流程图中可以看出,循环变量 i 超过 n(或达到 n+1)时,就说明从头到尾一直没有找到空白字符。因此,在图 4-8 流程图中,判断框 P 中的条件可表示为“in”,即(5)空缺处所填写的

24、内容是“n”。(3).问题 3函数 f_str(char *str,char del)的功能是;将非申字符串 str 分割成若干个子字符串并输出,del 表示分割时的标志字符。例如,若 str 的值为“66981636666257”,del 的值为“6”,调用此函数后,将输出 3 个子字符串,分别为“981”、“3”和“257”。请将函数 f_str 中(6)(8)空缺处的内容填写完整。函数void f_str(char *str,char del) int i,j,len;len = strlen(str);i = 0;while (ilen) while (U (6) /U)i+; /*

25、忽略连续的标志字符 */* 寻找从 srti开始直到标志字符出现的一个子字符串 */j = i+1;while (strj !=del U(7) /U=“/0“; /* 给找到的字符序列置字符串结束标志 */printf (“ %s/t“, U(8) /U;(分数:5.00)_正确答案:()解析:函数 f_str(char*str,char del)的功能是:将非空字符串 str 以分割标志字符为界线,分割成若干个子字符串并输出。由函数说明和 C 代码可知,该函数对给定的字符串进行从左至右的扫描,找出不包含标志字符(变量 del 的值)的子字符串。在该函数 C 代码中,变量 i 的初值为 0,

26、len 表示字符串的长度。当 ilen 时进入循环体。如果当前字符(即 stri的值)是标志字符,则不做处理,继续扫描以处理标志字符连成一串的情况。因此(6)空缺处所填写的内容是“stri=del”或其等价形式。 当退出第 2 个while 循环时,当前字符 stri不是标志字符,此时从 stri开始继续寻找,直到标志字符出现的个子字符串(变量 i 保持不变,用 j 标记寻找的过程),给找到的字符序列置字符串结束标志,以便于后面语句的输出。因此(7)空缺处所填写的内容是“strj”。 printf 输出语句结束之后,就要继续寻找后面不包含标志字符的子字符串。此时,需要把数组指针 i 移至 j

27、的后面,再继续扫描。因此(8)空缺处所填写的内容是“i=j+1”。二、B试题二/B(总题数:1,分数:15.00)1.说明某种传感器的输出值 Ratio 依赖于环境温度 temp(-40temp50)。对一组环境温度值(ITEMS 个),已经测量得到了相应的 Ratio 值(如表 4-10 表格所示)。表 4-10 粗略地描述了曲线 Ratio(temp)。B表 4-10 曲线 Ration(temp)的列表值/B 环境温度 temp 传感器的输出值 Ratio-40 0.20-20 0.60-10 0.800 1.0010 1.1730 1.5050 1.80校正系数 K 是 Ratio 的

28、倒数,因此也依赖于环境温度 temp。在数据处理中,需要用更多的列表值细致地描述曲线 K(temp),如表 4-11 所示。B表 4-11 曲线 K(temp)的列表值/B 环境温度 temp 校正系数 K-40 5.00-39 4.55-38 4.17-37 3.85 -20 1.67-19 1.61 -10 1.25-9 1.22 -19 0.56在表 4-11 中,各温度值所对应的 K 值是对表 4-10 进行线性插值再求倒数得到的,具体的计算方法如下。1) 根据 temp 值,在表 4-10 中用二分法查找;2) 若找到相应的温度值,则按相应的 Ratio 值求倒数得到 K 值;3)

29、若没找到相应的温度值,则可确定 temp 所在的温度区间Tp1,Tp2,同时获得了相应的 Ratio1 和 Ratio2,再按如下公式计算 K 值:(分数:15.00)_正确答案:()解析:这是一道要求读者掌握线性插值计算及二分查找算法的 C 语言程序设计题。本题的解答思路如下。 1) 试题中已给出函数 GetK(intTemp,CURVE *p,int n)用二分法在 n 个元素的有序表 p 中查找与 Temp 对应的传感器输出值,表中的元素已经按照温度有序排列。 2) 结合本题的应用背景,二分查找算法是指先计算表的中间位置,即(low+high)/2,若待查元素等于中间位置上的元素,则查找

30、成功并结束查找过程;若待查元素大,则在后半区间(m+1,high)继续进行二分查找:否则,在前半区间(low,m-1)进行二分查找,如图 4-17 所示。本试题中 low=0,m=3,high=6。 图 4-17 二分查找算法示意图 1 3) 以查找温度值 20C 为例,由于 200,因此设置下一个查找区间为(m+1,high),即4,6,如图 418 所示。 图 4-18 二分查找算法示意图 2 4) 由于 2030,因此取 high 等于 m-1,即下一个查找区间为(low,m-1),即4,5。再进一步分析,由于 2010,因此取 low 等于 m+1,即再下一个查找区间为5,5。而查找区

31、间5,5上的数据 3020,至此可确定此次查找失败,即如图 4-19 所示。图 4-19 二分查找算法示意图 3 5) 由以上分析可知,(1)空缺处应填入“(low+high)/2”。 6) 程序中“if(Temp=(p+m)-Temp)”语句用于判断是否找到相应的温度值,若找到,则执行“return (2)”语句以返回相应温度的校正系数 K。由试题关键信息“若找到相应的温度值,则按相应的 Ratio 值求倒数得到 K 值”可推理出,(2)空缺处应填入“1.0/(p+m)-Ratio”。 7) 当“if(Temp=(p+m)-Temp)”语句的判断条件不满足时,将执行“if(Temp(p+m)

32、-Temp)”判断语句。若待查元素小,将执行“high=m-1;”语句,即在前半区间(low,m-11)进行二分查找。若待查元素大,则在后半区间(m+1,high,继续进行二分查找,因此 else 语句中则需将“low”指针向上移动,即执行“low=m+1”语句。 8) 根据题干中给出的计算式子“Step= ”,以及题目中要求线性插值再求倒数得到 K 值可推理出(4)空缺处应填入“(p+1)-Ratio-p-Ratio”。 9) 同理,根据题干中给出的计算式子“三、B试题三/B(总题数:1,分数:15.00)2.说明以下C 程序是对某电码明文(原文)进行加密形成密文。其加密算法如下。假定原文为

33、 C1C2C3Cn,加密后形成的密文为 S1S2S3Sn其中 n 为小于 256 的任意自然数。首先读入正整数 Key(Key1)作为加密钥匙,并将密文字符位置按顺时针方向连成一个环,如图 4-12 所示。图 4-12 密文字符环示意图加密时从 S1位置起顺时针计数,当数到第 Key 个字符位置时,将原文中的字符放入该密文字符位置中,同时从环中除去该字符位置;接着从环中下一个字符位置起继续计数,当再次数到第 Key 个字符位置时,将原文中字符 C2放入其中,并从环中除去该字符位置;依此类推,直至 n 个原文字符全部放入密文环中。由此产生的 S1S2Sn即为原文的密文。例如,原文:One Wor

34、ld One Dream。当 Key=5 时,其密文为:me OnWlanD oOedrer;当 Key=6 时该原文的密文为:oeDn OedrrOn Wma le。程序使用示例如图 4-13 所示。(分数:15.00)_正确答案:()解析:本案例是对一字符串根据正整数 key 进行加密处理。C 程序中原文存放在数组 old 中,用函数 decode(old, key)将原文 old 加密成密文,并返回存放密文字符数组的首指针。了解加密算法和存放原文与密文的数据结构及完成加密功能的函数名称后,再仔细阅读程序,分析给出的语句在加密过程中的作用,就能逐步求得解答。 主函数 main 用来接收输入

35、参数并输出加密结果。仔细阅读程序,可知加密函数decode 在 main 之后定义而被 main 引用,在引用前应给予说明。因此(1)空缺处是用来说明函数 decode的,其所填入的内容是“*decode()”。 主函数中用 while 循环语句读入原文并存放在数组 old中,控制条件是已接收 255 个字符或回车符。在 C 语言中规定,一个字符串数据总是以/0为结束标志。在接收字符过程中,变量 num 总是指向下一个要接收的字符存放位置。如果已接收 255 个字符,就应该把/0放入 old255;如果遇到回车符,因其不是原文字符,则应该把/0放入 oldnum-1中。因此(2)空缺处需要使用

36、 C 语言中的条件语句来完成相应的功能,该空缺处所填入的内容是“(num=255)?num:num-1”。 函数 decode 把存放在 old 中的原文按 key 值进行加密,加密结果存放在以 new 为首地址的字符串中,并将该地址返回。这此信息可从函数一开始的“char *decode(old,key)”和函数结束处的“return (new);”得知。函数 decode 中调用另一个函数 length(old),以计算数组 old 中的字符个数,并利用此长度去分配存储空间。该存储空间用于存放密文,空间的首地址指针为 loop,类型为 CODE。借鉴语句“new=(char *)mallo

37、c(length+1) *sizeof(char);”可得,(3)空缺处所填入的内容是“CODE*”,使之成为待加密的双向环状链表。 在函数 decode 中,对待加密的双向环状链表加密之后,利用 for 循环语句找出应从环中去除字符的位置,因此(4)空缺处所填入的内容是“p-forward”,使指针 p 指向下一个节点。按题干说明的加密算法,应把*old 放入该节点,并要把该节点从双向链表中删除。(5)、(6)即为将该节点从链表中脱钩,节点本身仍然存在,可以通过 loopi的形式取其密文。因此(5)、(6)空缺处所填入的内容分别是“p-forward”和“p-backward”。 函数 st

38、rlen 的功能是计算字符串的长度。它先取字符串进行判别,即是否为字符串的结束标志/0,是则结束;否则应使 S 指向该串的下一个字符,同时计数器加 1。因此(7)空缺处所填入的内容是“*s+”。四、B试题四/B(总题数:1,分数:15.00)3.说明 函数 int Toplogical (LinkedWDigraph G)的功能是对图 G 中的顶点进行拓扑排序,并返回关键路径的长度。其中,图 G 表示一个具有 n 个顶点的 AOE-网,图中顶点从 1n 依次编号,图 G 的存储结构采用邻接表表示,其数据类型定义如下。 typedef struct Gnode /* 邻接表的表节点类型 */ i

39、nt adjvex; /* 邻接顶点编号 */ int weight; /* 弧上的权值 */ struct Gonde*nextare; /* 指示下一个弧的节点 */ Gnode; typedef struct Adjlist /* 邻接表的头节点类型 */ char vdata; /* 顶点的数据信息 */ struct Gnode*Firstadj; /* 指向邻接表的第一个表节点 */ Adjlist; typedef struct LinkedWDigraph /* 图的类型 */ struct Adjlist head; /* 指向图中第一个顶点的邻接表的头节点 */ Linke

40、dWDigraph; 例如,某 AOE-网如图 4-14 所示,其邻接表存储结构如图 4-15 所示。 图 4-14 某 AOE-网 (分数:15.00)_正确答案:()解析:这是一道要求读者掌握数据结构中拓扑排序和求关键路径问题的算法分析及设计题。本题的解答思路如下。AOE-网(Activity On Edge network,边表示活动的网)是一个带权的有向无环图,其中顶点表示事件,弧表示活动,权表示活动持续的时间。通常,AOE-网可以用来估算工程的完成时间。在 AOE-网中,入度为 0 的顶点为源点,出度为 0 的顶点为汇点。由于有些活动可以并行地执行,因此从源点到汇点的路径中,长度最长

41、的路径称为关键路径(路径长度即指路径上各种活动持续时间之和)。表示事件的顶点存在最早、最晚发生时间。若以顶点 V1表示源点、顶点 Vn表示汇点,则汇点的最早发生时间和最晚发生时间是一致的,并且等于关键路径的长度。设顶点巧的最早发生时间用 ve(j)表示,则 ve(j)是指从源点 V1到 Vj的最长路径长度(时间)。这个时间决定了所有从 Vj发出的弧所表示的活动能够开工的最早时间。ve(j)计算方法为:五、B试题五/B(总题数:1,分数:15.00)从下列 3 道试题(试题 5 至试题 7)中任选 1 道解答。如果解答的试题数超过 1 道,则题号小的 1 道解答有效。阅读以下应用说明及 Visu

42、al Basic 程序,根据要求回答问题 1 至问题 2。说明某 Visual Basic 应用程序用于监测某种锅炉设备内液面高度(050cm),其运行窗口界面如图 4-16 所示。(分数:15.00)(1).问题 1请根据说明和图 4-16 所示的显示结果,将说明中(1)空缺处的内容和Visual Basic 程序中(2)(9)空缺处的程序语句填写完整。(分数:7.50)_正确答案:()解析:在 Visual Basic 程序中,定时器的定时间隔属性(Interval)的单位时间是:毫秒(ms)。由题干关键信息“应用程序中每隔 3 秒算出曲线点(x,y)”可知,定时器 TimT 的定时间隔属性(Interval)值应设置为 3000 毫秒,即(1)空缺处所填写

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1