2005年下半年计算机软考程序员下午真题和答案(word)+.docVIP

2005年下半年计算机软考程序员下午真题和答案(word)+.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
05下半年软考程序员下午试题及答案试题一(15分,每空3分)   阅读下列说明和流程图,将应填入___(n)___处的字句写在答题纸的对应栏内。 [流程图说明]   流程图1-1描述了一个算法,该算法将给定的原字符串中的所有前导空白和尾部空白都删除,但保留非空字符的空白。例如,原字符串 File Name ,处理变成File Name 。流程图1-2、流程图1-3 、流程图1-4分别详细描述了流程图1-1中的框A、B、C。   假设原字符串中的各个字符依次存放在字符数组ch 的各元素ch(1) 、ch(2) 、?、ch(n) 中,字符常量KB表示空白字符。   流程图1-1的处理过程是:先从头开始找出该字符串中的第一个非空白字符ch(i),再从串尾开始向前找出位于最末位的非空白字符ch(j) ,然后将ch(i) 、?、ch(j) 依次送入ch(1) 、ch(2)、?中。如果字符串中没有字符或全是空白字符,则输出相应的说明。在流程图中,strlen 是取字符串长度函数。 [流程图1-1] ? [流程图1-2] ? [流程图1-3]? ? [流程图1-4]? ? [问题]   在流程图1-1中,判断框P中的条件可表示为:i ___(5)___? 试题二(15,每空3分)   阅读以下函数说明和C语言函数,将应填入___(n)___处的字句写在答题纸的对应栏内。 [说明]   函数int find_Max_Min(int a[ ],int n) 的功能是:找出n个元素的数组a中的最大元素和最小元素并输出,返回查找过程中元素的比较次数。查找方法如下:比较a[0] 和a[n-1], 若a[0] 大,则交换a[0] 和a[n-1] 的值;再比较a[1] 和a[n-2] ,若a[1] 大,则交换a[1] 和a[n-2] 的值;依此类推,直到所有的元素都比较完。然后在数组的前半区从前往后找出小元素,在后半区从后往前找出大元素。 [函数]   int find_Max_Min(int a[ ],int n) {    /* 找出n个元素的数组a中的最大元素、最小元素并输出,返回查找过程中元素的比较次数*/    int i,Count = 0;    int temp,Maxnum,Minnum;    for(i = 0; i n/2; i++){     Count = Count + 1;      /*元素比较次数计数*/     if(a[i]a[_____(1)_____ ]     { /* 数组元素交换代码略*/ }    }    Maxnum=a[n-1];    Minnum=a[0];    for(i = 1; i n/2+ n%2; i++){     Count = _____(2)_____ ;             /* 元素比较次数计数*/     Minnum = _____(3)_____ ? a[i]:Minnum;      /*找出最小元素*/     Maxnum = _____(4)_____ ? _______(5)_____:Maxnum; /* 找出最大元素*/    } printf(Max=%d\n,Maxnum); printf(Min=%d\n,Minnum); return Count;   } ? [NextPage] ?   试题三(15分,每空3分)   阅读以下说明和C语言函数,将应填入___(n)___处的字句写在答题纸的对应栏内。 [说明]   某种传感器的输出值Ratio 依赖于环境温度temp(-40℃≦temp≦50℃)。对一组环境温度值(ITEMS 个),人们已经测量得到了相应的Ratio 值(见表1)。该表粗略地描述了曲线Ration(temp) 。 ?   校正系数K是Ratio 的倒数,因此也依赖于环境温度temp 。在数据处理中,人们需要用更多的列表值细致地描述曲线K(temp ),如表2所示。在表2中,各温度值所对应的K值是对表1进行线性插值再求倒数得到的,具体的计算方法如下:   1. 根据temp 值,在表1中用二分法查找;   2. 若找到相应的温度值,则按相应的Ratio 值求倒数得到K值;   3. 若没找到相应的温度值,则可确定temp 所在的温度区间[Tp1,Tp2] ,同时获得了相应的Ratio1 和Ratio2 ,再按如下公式计算K值:    Step = (Ratio1 - Ratio2)/(Tp1 - Tp2)    K = 1.0/(Ratio1 + Step * (temp - Tp1))   在程序中,当temp 高于50℃或低于-40℃时,设定K=0。 [程序]    #include

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档