计算机二级上机题库很有用 题目就是里面出的
参考答案:
第1套上机考试答案解析:
1、程序填空题
【答案及难度指数】★★
(1)m>1 (2)m-1
【一起来审题】
(1)该程序功能是对阶乘的实现。其中,阶乘的计算公式定义为:
(3)1
公式分为参数m是1和大于1的两种情况,例如,1的阶乘1!=1;5的阶乘5!=5×4×3×2×1。
(2)从已给部分源程序的main主函数开始入手,主函数执行printf输出语句,该语句调用自定义的fun函数,并将数值8传递给fun函数的m参数。其中fun函数就是对阶乘算法的实现。
(3)进入fun函数,根据前面的定义,它对阶乘算法的实现可以分为两种情况,一是当m>1时,应该用什么程序来实现阶乘的计算;二是当m=1时,函数直接返回1即可。
【解题思路】
第一空:if(___1___)是要根据m的取值来判断使用何种阶乘的计算公式的。这里根据第2句递归调用语句,可知该语句是用来计算当m>1时的阶乘。因此第一空if语句里面的条件应该是满足m>1。所以,第一空应填m>1。
第二空:return (m*fun(___2___))很显然是采用递归函数来实现阶乘的计算,所以,第二空应填m-1。
第三空:return ___3___该语句是要实现当m=1时的阶乘计算。所以,第三空应填1。
【主要考点】递归函数。
2、程序改错题
【答案及难度指数】★★
(1)Prime(int m) (2)if(!(m%j))
【一起来审题】
(1)整数n的素数因子为整除n的所有素数,但不含n本身。
素数是指能被1和本身整除的正整数(>1),所以判别n是否为素数,只要用2、3、…、n-1这些数逐个去除n,观察余数是否为0即可,只要有一次相除余数为0,n就不是素数,否则n为素数。
因此,求整数n的素数因子,要从求整数n的因子和判断该因子是否为素数的两方面来看。
(2)从已给定源程序的main主函数开始入手,核心部分是循环判断if((!(n%i)) && (Prime(i))),"!(n%i)"为判断i是否是n的因子,Prime自定义函数的功能是判断i是否为素数,&&与逻辑是指当两个判断条件都为真的时候,i即为n的素因子。
【解题思路】
(1)第一个标识下面的"Prime(int m);"在程序中显然是一个函数,因此应将后面的分号去掉。
(2)第二个标识下面的for语句最简单的应用形式为:for(循环变量赋初值;循环条件;循环变量增值)语句。显然if语句后面缺少括号,因此,if !(m%j)改为if(!(m%j))。
该题主要考查标点符号、运算符、基本定义。
【主要考点】if条件语句;函数定义。
3、程序设计题
【答案及难度指数】★★
int j,k=0,average=0;
for(j=0;j<n;j++)
average+=point[j]; //统计总分数
average/=n;//求平均分
for(j=0;j<n;j++)
if(point[j]>average)
//逐个判断每个分数是否大于平均分
{
high[k]=point[j];
//将高于平均分的人放入high数组
k++; //统计大于平均分的人数
}
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库c上机模拟详细参考答案_whc0909在线全文阅读。
相关推荐: