【计算机类职业资格】二级C语言-365及答案解析.doc

上传人:progressking105 文档编号:1325300 上传时间:2019-10-17 格式:DOC 页数:4 大小:38KB
下载 相关 举报
【计算机类职业资格】二级C语言-365及答案解析.doc_第1页
第1页 / 共4页
【计算机类职业资格】二级C语言-365及答案解析.doc_第2页
第2页 / 共4页
【计算机类职业资格】二级C语言-365及答案解析.doc_第3页
第3页 / 共4页
【计算机类职业资格】二级C语言-365及答案解析.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、二级 C 语言-365 及答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30.00)1.函数 fun 的功能是:计算 (分数:30.00)二、程序改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun 的功能是:找出 100n(不大于 1000)三个位上的数字都相等的所有整数,把这些整数放在 s 所指的数组中,个数作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构。 试题程序: #includestdio.h #define N 100 int fun(int

2、s,int n) int i,j,k,a,b,c; j=0; for(i=100;in;i+) /*found*/ k=n; a=k%10; k/=10; /*found*/ b=k/10; c=k/10; if(a=b return j; main() int aN,n,num=0,i; do printf(“/nEnter n(=1000):“); scanf(“%d“, while(n1000); num=fun(a,n); printf(“/n/nThe result:/n“); for(i=0;inum;i+) printf(“%5d“,ai); printf(“/n/n“); (

3、分数:30.00)三、程序设计题(总题数:1,分数:40.00)3.请编写函数 fun,其功能是:计算并输出给定 10 个数的方差。 其中: (分数:40.00)_二级 C 语言-365 答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30.00)1.函数 fun 的功能是:计算 (分数:30.00)解析:(1)1.0 (2)1 (3)i 解析 填空 1:本题要求给 double 型变量 t 赋初值,从 for 循环中我们知道,t 用来存放累乘的结果,因此 t 的初值应该为 1。 填空 2:考查 for 循环变量的范围,注意本题要求计算 f(x)的前 n

4、项,即计算 ,所以循环变量 i应从 1 递增至 n-1,因此此空应填 1。 填空 3:t 用来存放每次循环增量,分析公式可知,后一项总是在前一项的基础上乘以一个 二、程序改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun 的功能是:找出 100n(不大于 1000)三个位上的数字都相等的所有整数,把这些整数放在 s 所指的数组中,个数作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构。 试题程序: #includestdio.h #define N 100 int fun(int*s,int n

5、) int i,j,k,a,b,c; j=0; for(i=100;in;i+) /*found*/ k=n; a=k%10; k/=10; /*found*/ b=k/10; c=k/10; if(a=b return j; main() int aN,n,num=0,i; do printf(“/nEnter n(=1000):“); scanf(“%d“, while(n1000); num=fun(a,n); printf(“/n/nThe result:/n“); for(i=0;inum;i+) printf(“%5d“,ai); printf(“/n/n“); (分数:30.00

6、解析:(1)k=i; (2)b=k%10; 解析 (1)i 是当前要被判断的数,因为 i 是循环变量,所以将 i 的值赋给 k 再进行运算。 (2)b 是存放十位上的数,但前面已经除以了一个 10,即原数的十位已经变成了个位,所以这里用求余就可以了。三、程序设计题(总题数:1,分数:40.00)3.请编写函数 fun,其功能是:计算并输出给定 10 个数的方差。 其中: (分数:40.00)_正确答案:()解析:double fun(double x10) double x1=0.0,s=0.0; int i; for(i=0;i10;i+) x1=x1+xi; x1=x1/10; /*求 10 个数的平均值*/ for(i=0;i10;i+) s=s+(xi-x1)*(xi-x1); return sqrt(s/10); /*求 10 个数的方差*/ 解析 这是一道求公式的值的题目,程序中第 1 个循环用来完成求 10 个数的总和,接着再用x1x1/10 来求出平均值。第 2 个循环用来求累加和的值,最后将累加和的平方根返回,注意 sqrt 函数的应用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1