【计算机类职业资格】三级数据库技术机试-211及答案解析.doc

上传人:appealoxygen216 文档编号:1321249 上传时间:2019-10-17 格式:DOC 页数:3 大小:28KB
下载 相关 举报
【计算机类职业资格】三级数据库技术机试-211及答案解析.doc_第1页
第1页 / 共3页
【计算机类职业资格】三级数据库技术机试-211及答案解析.doc_第2页
第2页 / 共3页
【计算机类职业资格】三级数据库技术机试-211及答案解析.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、三级数据库技术机试-211 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请补充完整程序,使得程序能实现以下功能:从文件 IN.dat 中读取 200 个整数至数组 number 中,求出最大数 max 及最大数的个数 cnt 和数组 number中能被 3 整除或能被 7 整除的算术平均值 ave(保留 2 位小数)。把结果 max、 cnt、ave 输出到 OUT. dat文件中。注意:部分程序、读数据函数 read_ dat (int number200)及输出格式已给出。#include conio. h#include stdi

2、o. h#define N 200void read_ dat(int numberN)int i, j;FILE *fp;fp = fopen(“IN. dat“, “r“);for (i=0; i20; i+)for (j=0; j10; j+)fscanf(fp, “%d,“, printf(“%d “, numberi*10+j);printf (“/n“);fclose (fp);void main ()int cnt, numberN, max;float ave;FILE *fw;int i, k; long j = 0;fw = fopen(“OUT.dat“, “w“);re

3、ad_ dat (number);/ * / * /printf(“/n/nmax=%d, cnt=%d, ave=%6.2f/n“, max, cnt, ave);fprintf(fw, “%d/n%d/n%6.2f/n“, max, cnt, ave);fclose (fw);(分数:100.00)_三级数据库技术机试-211 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请补充完整程序,使得程序能实现以下功能:从文件 IN.dat 中读取 200 个整数至数组 number 中,求出最大数 max 及最大数的个数 cnt 和数组 nu

4、mber中能被 3 整除或能被 7 整除的算术平均值 ave(保留 2 位小数)。把结果 max、 cnt、ave 输出到 OUT. dat文件中。注意:部分程序、读数据函数 read_ dat (int number200)及输出格式已给出。#include conio. h#include stdio. h#define N 200void read_ dat(int numberN)int i, j;FILE *fp;fp = fopen(“IN. dat“, “r“);for (i=0; i20; i+)for (j=0; j10; j+)fscanf(fp, “%d,“, print

5、f(“%d “, numberi*10+j);printf (“/n“);fclose (fp);void main ()int cnt, numberN, max;float ave;FILE *fw;int i, k; long j = 0;fw = fopen(“OUT.dat“, “w“);read_ dat (number);/ * / * /printf(“/n/nmax=%d, cnt=%d, ave=%6.2f/n“, max, cnt, ave);fprintf(fw, “%d/n%d/n%6.2f/n“, max, cnt, ave);fclose (fw);(分数:100

6、00)_正确答案:(max = number0;for (i=1, k=0; iN; i+) if (numberi max)max = numberi;if (numberi%3=0 numberi%7=0) j += numberi;k+;for (i=0, cnt=0; iN; i+)if (numberi = max)cnt+;ave = (float) (j*100/k)/100;)解析:解题思路 用整型变量 max 保存数组 number 中元素的最大值,首先把数组 number 的第一个元素number0存入 max 中;然后在 for 循环语句中当循环变量 i 从 1 递增到

7、 N-1 时,对数组 number 中的每一个元素 numberi与 max 进行比较,如果表达式 numberimax 成立,则把数组元素 numberi的值存入变量 max 中;再用表达式 numberi%3=0 numberi%7=0 判断 numberi能否被 3 或 7 整除,如果表达式结果值为真,则把数组元素 numberi的值与变量 j 的值相加,同时计数变量 k 加 1。退出循环后,变量 max 中的值就是数组 number 中元素的最大值,再用 for 循环语句对数组number 中的每一个元素与 max 的值进行相等的判断,如果 numberi的值等于 max,则计数变量 cnt 加1。最后用表达式 (float)(j*100/k)/100 求得数组 number 中能被 3 整除或能被 7 整除的算术平均值。

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

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

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