考试吧

计算机等级

考试吧>等级考试>计算机二级考试>C语言>模拟试题>正文
2015年计算机二级《C语言》冲刺试题及答案(2)
考试吧 2015-09-16 12:27:43 评论(0)条

  点击查看:2015年计算机二级《C语言》冲刺试题及答案汇总

  程序填空题

  1给定程序中,函数fun的功能是:计算形参X所指数组中N个数的平均值(规定所有数均为正数),将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至X所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。

  例如,有l0个正数:46、30、32、40、6、17、45、15、48、26,平均值为30.500000。

  移动后的输出为:46、32、40A5、48、30、6、17、15、26。

  请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

  注意:部分源程序在文件BLANKl.C中。

  不得增行或删行,也不得更改程序的结构!

  试题程序:

  参考解析:

  (1)sdN (2)j++ (3)一1

  【解题思路】

  填空l:由原程序可知,av代表的是平均值,而平均值的求法是所有数的总和除以数的个数,因而本空应该填写s/N。

  填空2:y数组代表暂时存放X数组,if(X[i]>av)表达的是当x数组中的数大于平均值时,应该把这些大于平均值的数放在y数组的前半部分,因而此空应该填y[j++]。

  填空3:此空表明当x[i]不等于什么时,X[i]中的数要赋值给Y数组,由题意可知此空只能填写一1。

  程序改错题

  2下列给定程序是建立一个带头结点的单向链表,并用随 机函数为各结点赋值。函数fun的功能是将单向链表结点 (不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。

  请改正函数fun中的错误,使它能得出正确的结果。

  注意:部分源程序在文件MODll.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!

  试题程序:

  

  参考解析:

  【参考答案】

  (1)while(P)或while(P!=NULL)

  (2)P=P一>next;

  【解题思路】

  (1)判断当前指针P指向的结点是否存在,若存在则对该结点数据域进行判断操作,而不是判断P指针的指针域是否为空。

  (2)判断结束后指针指向下一个结点。

  程序设计题

  3请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。

  例如,若输入“aboaEf9”,则应输出“aBe4EF9”。

  注意:部分源程序在文件PROGl.C中。

  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

  试题程序:

  

  参考解析:

  【参考答案】:

  【解题思路】

  该题要求将给定字符串中奇数位置的字母转换为大写,需要先判断奇数位置以及此位置的字符是否是小写字母,如果是再通过其转换方法进行转换。

  从c语言的学习中知道,只要将小写字母减去32即转成大写字母,将大写字母加上32即转成小写字母。本程序用if语句实现转换功能。

展开全文
评论(0条) 发表
Copyright © 2004-
考试吧(3g.exam8.com)北京美满明天科技有限公司
社会统一信用代码:91110108MA01WU311X
帮助中心