三级信息管理技术机试-237.docx

上传人:scccc 文档编号:11932308 上传时间:2021-11-04 格式:DOCX 页数:3 大小:12.45KB
返回 下载 相关 举报
三级信息管理技术机试-237.docx_第1页
第1页 / 共3页
三级信息管理技术机试-237.docx_第2页
第2页 / 共3页
三级信息管理技术机试-237.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《三级信息管理技术机试-237.docx》由会员分享,可在线阅读,更多相关《三级信息管理技术机试-237.docx(3页珍藏版)》请在三一文库上搜索。

1、级信息管理技术机试 -237总分: 100.00 ,做题时间: 90 分钟 )、上机题( 总题数: 1 ,分数: 100.00)1. 请编制程序,要求:将文件 IN97.DAT 中的 200 个整数读入数组 xx 中,求出数组 xx 中奇数的个数 cnt1 和偶数的 个数 cnt2 ,以及数组 xx 下标为偶数的元素值的算术平均值 pj( 保存 2 位小数 ) ,将结果 cnt1 、cnt2 、 pj 输出到文 件 out97.dat 中。注意:局部程序、读函数 read_dat(int xx200) 及输出格式已给出。 试题程序: #include #include #define N 20

2、0void read_dat(int xxN)int i , j ;FILE * fp ;fp=fopen(IN97.DAT , r) ;for(i=0 ;i 20;i + +)for(j=0 ;j 10;j + +)fscanf(fp , % d , , &xxi*10+j) ;printf(% d, xxi*10+j);printf(/n) ;fclose(fp) ;void main()int cnt1 , cnt2 , xxN ;float pj ; FILE * fw ; int i ,k=0; long j ; system(CLS) ; fw=fopen(out97.dat ,w

3、) ; read_dat(xx) ; printf(/n/ncnt1=% d ,cnt2=% d ,pj=% 6.2f/n ,cnt1 ,cnt2 ,pj) ; fprintf(fw ,% d/n% d/n% 6.2f/n,cnt1 ,cnt2 , pj) ;fclose(fw) ;分数: 100.00 ) 正确答案: (void main() int cnt1 , cnt2 , xxN ;float pj ;FILE * fw ;int i , k=0 ; long j ;clrscr() ;fw=fopen(out97.dat , w) ;read_dat(xx) ;for(i=0 , j

4、=0 , cnt1=0 , cnt2=0 ; i N i+)/* 初始化计数器变量,依次取数组中的数进行统计 */ if(xxi% 2!=0) /* 如果是奇数 */cntl + + ; /* 统计数组 xx 中奇数的个数 cnt1*/else /* 如果是偶数 */ cnt2 + + ; /* 统计偶数的个数 cnt2*/ if(i%2=0) /* 如果下标是偶数 */ j+=xxi ; /* 求数组 xx 中下标为偶数的元素值的总和 */ k+; /* 统计下标为偶数的元素的个数,以进一步求平均值 */ pj=(float)(j*100/k)/100; /* 求数组 xx 下标为偶数的元素

5、值的算术平均值 pj*/printf(/n/ncnt1=% d , cnt2=% d , pj=% 6.2f/n,fprintf(fw , % d/n% d/n% 6.2f/n, cnt1 , cnt2,fclose(fw) ;)解析: 解析 根据题意,要编写的代码要具有分别统计奇、 以通过一个 for 循环依次取得数组中的数;然后利用cnt1 , cnt2 , pj) ; pj) ;偶数的个数, 以及求偶数的算术平均值的功能。 首先可 if 判断语句区分奇、偶数,分别统计个数,并而我们要保存小数、所以要使用强制类型转换且对下标为偶数的元素求和。最后再求出下标为偶数的的元素值的算术平均值。此题要求对平均值的计算 结果保存两 位小数。 因为运算符“ / 在这里的含义是整除, 将结果转换为浮点型,这样就可以实现保存两位小数的目的

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1