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

2020-11-29 00:00

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

【主要考点】指针操作;函数传值;while条件。

第9套上机考试答案解析:

1、程序填空题

【答案及难度指数】★

(1)d (2)z

【一起来审题】

(1)该程序功能是计算1/4的圆周长。从已给部分源程序的main主函数开始入手,主函数通过键盘输入获得圆的直径,通过调用printf输出语句中fun函数计算1/4的圆周长。

(2)进入fun函数,根据前面的定义,计算四分之一的圆周长并返回。

【解题思路】

第一空:"return 3.14159*___1___/4.0;"这里根据return 知道该语句是返回四分之一的圆周长,根据圆周长公式,很容易知道这里缺少圆的直径参数,结合函数fun的定义"double fun(double d)"中的参数d,第一空应填d。

第二空:"scanf("%lf",&___2___);"是获得由键盘输入的参数值,"&"是C语言中的求地址运算符。主函数初始定义了参数z,因此填z。其中,&z为输入项。

第三空:"printf(" L=%lf\n ",fun(___3___));"输出函数fun的计算结果,将直径参数传给函数定义中的d,根据前面的定义和输入,这里应该填z。

【主要考点】函数调用;参数传值。

2、程序改错题

【答案及难度指数】★★

(1)long r=1; (2)n/=10;

【一起来审题】

(1)本题中函数的功能是计算正整数各个位上的数字之积。首先要对正整数进行截取,取得该正整数的各个位上的数字,然后对求得的数进行累积。

(2)从已给定源程序的main主函数开始入手,通过键盘输入一个正整数m,语句"printf("\n%ld\n",fun(m));"调用fun函数求得m各个位上的数字之积。

【解题思路】

(1)第一个错误标识下的r是函数的返回值,子函数fun中在执行"r*=n%10;"之前,只进行了定义,却没有赋初值,编译的时候会指出在无定义前使用了变量r。r代表了各个位上的数字之积,其初值应为1。因此,第一个标识下的"long r;"改为"long r=1;"。

(2)第二个标识下的符号"\"是非法字符,根据题意,这里应该是进行除法运算,所以"n\=10;"应该改为"n/=10;"。

【主要考点】变量初始化;算术表达式语法。

3、程序设计题

【答案及难度指数】★★★

int i,j=0;*n=0;

for(i=1;i<=m;i++)

if(i%7==0||i%11==0)

{

b[j]=i;

j++;

}

*n=j;

【一起来审题】

该题是求某范围内能被7或11整除的数。该程序的解题思路可以分解为以下几步:判断是否被7整除→判断或者是否被11整除→按要求返回计算结果。

【解题思路】

进入fun函数,根据前面的分析:

(1)数i能否被7或11整除,它的逻辑表达式为"(i%7==0||i%11==0)"。

(2)其中满足被7或11整除的数的个数,可以用累加器j来计数。

【主要考点】指针操作;for循环语句;数组操作。

(3)z


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

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

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

马上注册会员

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