c上机模拟详细参考答案_whc0909(3)

2020-11-29 00:00

计算机二级上机题库很有用 题目就是里面出的

【答案及难度指数】★

(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循环语句。


c上机模拟详细参考答案_whc0909(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2021年铜矿行业深度分析及“十三五”发展规划指导报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: