计算机二级上机题库很有用 题目就是里面出的
【答案及难度指数】★★
(1)int a[] (2)count+=a[i] (3)count/n
【一起来审题】
该题中函数功能是输出数组元素中小于平均值的元素。此类题的解题思路,基本可以分解为两步,第一步求平均值,第二步就是将数组中的各个元素与平均值进行比较。从已给部分源程序的main主函数开始入手,从键盘输入数组,"fun(a,i-1);"语句调用fun函数,实现题目要求。
【解题思路】
第一空:根据主函数中的"fun(a,i-1);"语句与fun函数中对于数组的引用,所以第一空填"int a[]"补全函数fun的定义。
第二空:为了求得平均值,要先通过for循环,对数组各个数值进行累加求和,count用来存放n个元素的 总和,因此第二空填"count+=a[i]"。
第三空:根据求得的n个元素的和,对n计算平均值,所以这里填"count/n"。
【主要考点】函数定义;数组操作。
2、程序改错题
【答案及难度指数】★★
(1)*b=0; (2)if(d%2!=0)
【一起来审题】
本题中函数的功能是依次取出为奇数的数。该题的解题思路主要是判断数字中的每一位是否是奇数。
【解题思路】
(1)第一个错误标识下的"b=0"语句中的b,根据fun函数定义"void fun(long a,long *b)",它应该是个长整型的指针变量,所以"b=0"语句中的b只能取地址值,而不能取长整数,因此"b=0;"改为"*b=0;"。
(2)判断d是否为奇数,即判断"d%2!=0";而"d%2==0"是判断d是否偶数的方法,因此第二个标识下"if(d%2==0)"改为"if(d%2!=0)"。
【主要考点】指针赋值;if逻辑关系。
3、程序设计题
【答案及难度指数】★★★
int i,j;
SCORE t;
for(i=0;i<M-1;i++)
//第一次取第一个元素
for(j=i;j<M;j++) //将所有的元素与第一个元素进行比较,得出最大的元素
if(a[i].s<a[j].s)
//如果当前元素比第一元素大,则进行交换
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
【一起来审题】
该程序功能是按分数的高低排列学生的记录。首先从数组中挑选一个最大的元素,把它和第一元素交换,接着从剩下的n-1个元素中再挑出一个最大的元素,把它和第二个元素交换,不断重复以上过程,直到比较完最后两个元素。
【解题思路】
(1)在fun函数中,通过循环对成绩记录进行排序。
(2)首次查找到最大的记录,第二次循环查找第二大的记录,依次实现对成绩记录的排序。
【主要考点】数组操作;结构体。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库c上机模拟详细参考答案_whc0909(19)在线全文阅读。
相关推荐: