[计算机类试卷]国家三级信息管理技术机试模拟试卷97及答案与解析.doc

上传人:bonesoil321 文档编号:495029 上传时间:2018-11-28 格式:DOC 页数:4 大小:27KB
下载 相关 举报
[计算机类试卷]国家三级信息管理技术机试模拟试卷97及答案与解析.doc_第1页
第1页 / 共4页
[计算机类试卷]国家三级信息管理技术机试模拟试卷97及答案与解析.doc_第2页
第2页 / 共4页
[计算机类试卷]国家三级信息管理技术机试模拟试卷97及答案与解析.doc_第3页
第3页 / 共4页
[计算机类试卷]国家三级信息管理技术机试模拟试卷97及答案与解析.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家三级信息管理技术机试模拟试卷 97及答案与解析 一、程序设计题 1 请编制程序,要求:将文件 IN92.DAT中的 200个整数读入数组 xx中,求出数组 xx中最大数 max及最大数的个数 cnt和数组 xx中值能被 3整除或能被 7整除的数的算术平均值 pj(保留两位小数 ),结果 max, cnt, pj输出到 out92.dar中。 部分程序、读函数 read_dat(int xx200)及输出格式已给出。 试题程序: #include conio.h #include stdio.h #define N 200 void read_dat(int xxN) int i,j; FI

2、LE *fp; fp=fopen(“IN92.DAT“,“r“); for(i=0;i 20;i+) for(j=0;j 10;j+) fscanf(fp,“%d,“, printf(“%d“,xxi*10+j); printf(“n“); fclose(fp); void main() int i,k,cnt,xxN,max; float pj; FILE *fw; long j=0; clrscr(); fw=fopen(“out92.dat“,“w“); read_dat(xx); printf(“nnmax=%d,cnt=%d,pj=%6.2f/n“,max,cnt,pj); fpri

3、ntf(fw,“%dn%dn%6.2fn“,max,cnt,pj); fclose(fw); 国家三级信息管理技术机试模拟试卷 97答案与解析 一、程序设计题 1 【正确答案】 void main ( ) int i,k,cnt,xxN,max; float pj; FILE *fw; long j=0; clrscr(); fw=fopen(“out92.dar“,“w“); read_dar(xx); max=xx0; for(i=1,k=0;i N;i+) if(xxi max) max=xxi; /*求出数组 xx中最大数 max*/ if(xxi%3=0 |xxi%7=0) j+=x

4、xi; /*求出数组 xx中值能被 3整除或能被 7整除的数的总和 */ k+; for(i=0,cnt=0;i N;i+) if(xxi=max) cnt+; /*求出数组 xx中最大数 max的个数 */ pj=(float)(j*100/k)/100; /*求出数组 xx中值能被 3整除或被 7整除的数的平均值 */ printf(“nnmax=%d,cnt=%d,pj=%6.2fn“,max,cnt,pj); fprintf(fw,“%dn%dn%6.2fn“,max,cnt,pj); fclose(fw); 【试题解析】 本题考查的知识点如下: (1)运算符 “%” 的使用。 (2)

5、判断结构中多个条件的布尔运算。 首先,要找出数组中最大的元素。先定义第 1个元素为最大的元素,然后依次和后面的元素比较,若后面的数中有大于第 1个元素的,则将这个数定义为最大的元素。再和后面的数进行比较。一个数 a除以 b取余所得的数为 0,则 a能被 b整除。根据题意可知,被 3整除和被 7整除两个条件满足一个即可,所以两个条件之间用 “或 ”运算。 在本题中,要求算术平均值保留两位小数。使用的方法是:将和乘以 100除以个数强制类型转换后再除以 100。为了保证和有效,我们定义了一个长整型变量来记录和。因为个数也为整型,运算符 “/”在这里的含义是整除,而我们要保留小数,所以要使用强制类型转换将和乘以 100的结果转换为浮点类型,这样就可以实现保留两位小数。

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

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

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