计算机二级上机题库很有用 题目就是里面出的
【答案及难度指数】★
(1)n%100!=0 (2)n%400==0 (3)flag
【一起来审题】
(1)该题中函数功能是判断一个年份是否为闰年。其中,闰年的条件是年数可以被4整除,即为闰年;被100整除而不能被400整除的为平年;被100整除也可被400整除的为闰年。
(2)从已给部分源程序的main主函数开始入手,主函数中的"if(fun(year))"判断语句,调用函数fun对年数进行判断。
(3)进入fun函数,利用if对年数进行判断。
【解题思路】
第一空:根据闰年的条件和已有的语句"if(n%4==0)",知道这里的条件应该是能被4整除但要排除被100整除的整数,所以第一空填"n%100!=0"。
第二空:被100整除也可被400整除的为闰年,所以第二空填"n%400==0"。
第三空:主函数中"if(fun(year))"语句是对函数返回值的判断,所以fun函数应该将对n的判断的flag值返回,第三空填"flag"。
【主要考点】if条件语句。
2、程序改错题
【答案及难度指数】★★
(1)s+=1.0/i; (2)return s;
【一起来审题】
该题中函数功能是求题干累加公式的值。从已给定源程序的main主函数开始入手,通过"printf("\n\nthe result is%lf\n",fun(n));"语句调用fun函数,求得公式值。
【解题思路】
(1)第一个标识下,在以i为循环参数的for循环中进行公式累加,每一项为1.0/i,所以"s+=1.0/k;"改为"s+=1.0/i;"。
(2)第二个标识下,首先根据题干,将"填空"删除,函数定义为"double fun(int n)",它有double型的返回值,所以这里返回累加公式的计算结果,即"return s;"。
【主要考点】函数功能;函数返回。
3、程序设计题
【答案及难度指数】★★★
int j,k=0;
for(j=2;j<500;j++) //循环条件
if((j%7==0||j%11==0)&&j%77!=0)
//判断是否符合题干要求
b[k++]=j; //将结果放入数组b
*m=k; //将累加器值赋值给m
【一起来审题】
(1)该程序的解题思路,可以分解为以下几步:判断是否被7整除→判断或者是否被11整除→并且不被77整除→按要求返回计算结果。
(2)从已给部分源程序的main主函数开始入手,核心函数"fun(a,&m);",其中m返回这些数的个数,a传给函数中的参数,存放计算结果的数组b。
【解题思路】
进入fun函数,根据前面的分析:
首先,定义变量k,设置为累计器,计算符合条件的数的个数。
然后,通过循环,判断小于500的每一个整数是否符合题干中的要求。其中的判断条件能否被7或者被11整除为j%7==0||j%11==0,不能被11和7同时整除为j%77!=0,它们之间的并关系就用&&连接,最后结果即为(j%7==0||j%11==0) && j%77!=0。
最后,将符合条件的整数存入数组b中,同时对k进行自加,将k值赋给m,返回结果。
【主要考点】数组操作;函数传值;if条件语句;for循环语句。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库c上机模拟详细参考答案_whc0909(3)在线全文阅读。
相关推荐: