首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序Ca1Value(),其功能要求: (1)求出这N个实数的平均值aver。 (2)分别求出这N个实数的整数部分值之和sumi
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序Ca1Value(),其功能要求: (1)求出这N个实数的平均值aver。 (2)分别求出这N个实数的整数部分值之和sumi
admin
2009-02-24
130
问题
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序Ca1Value(),其功能要求:
(1)求出这N个实数的平均值aver。
(2)分别求出这N个实数的整数部分值之和sumint及其小数部分之和sumdec,最后调用函数WriteDat()把所求的结果输出到文件OUT42.DAT中。
注意:部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
试题程序:
#include<stdio.h>
#include<conio.h>
#define MAXNUM 200
float xx[MAXNUM];
int N=0;
double aver=0.0;
double sumint=0.0;
double sumdec=0.0;
int ReadDat( );
void WriteDat( );
void CalValue( )
{
}
void main ( )
{
clrscr ( );
if (ReadDat ( ) )
{
printf ("数据文件IN42.DAT不能打开! \007\n");
return;
}
CalValue ( );
printf ("文件IN42.DAT中共有实数%d个\n", N);
printf ("平均值=%.21f\n", aver);
printf ("整数部分之和=%.21f\n", sumint);
printf ("小数部分之和=%.21f\n", sumdec);
WriteDat ( );
}
int ReadDat ()
{
FILE *fp;
int j;
if((fp=fopen("in42.dat","r"))==NULL)
return 1;
while (! feof (fp))
{
fscanf (fp, "%f", &xx [N]);
if (xx[N] >0.001) N++;
}
fclose (fp);
return 0;
}
void WriteDat()
{
FILE *fp;
fp=fopen ( "OUT42.DAT", "w");
fprintf (fp, "%dkn%.21f\n%.21f\n%.21f\n", N, aver, sumint, sumdec);
fclose (fp);
}
选项
答案
void CalValue() { int i; double x,sum=0.0; for(i=0;i<N;i++) { sumint=sumint+(int)xx[i]; /*求整数部分之和*/ x=xx[i]-(int)xx[i]; /*求每个数的小数部分*/ sumdec=sumdec+x; /*求小数部分之和*/ sum=sum+xx[i]; /*求N个数之和*/ } aver=sum/N; /*求N个数的平均数*/ }
解析
本题考查的知识点如下;
(1)循环结构的使用。
(2)强制类型转换。
将一个实数的整数部分和小数部分分开,这里使用的方法是强制类型转换法。强制类型转换是按照要求将表达式的值转换成指定的类型。将一个实数强制转换成整型数之后,其小数部分被去掉(不是四舍五入,而是直接删除)。对数组中的200个实数求和及平均值,可以使用循环结构。
转载请注明原文地址:https://www.kaotiyun.com/show/URYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
存储管理的目的是实现
数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类功能由数据库管理系统的()模块完成。
如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。下列不稳定的排序方法是
严格两阶段封锁协议要求事务所持有的所有______必须在事务提交后方可释放。
广域网WAN(WideAreaNetwork)也称为远程网,它覆盖的地理范围从几十公里到几千公里,其通信子网主要采用的是【】技术。
下列叙述错误的是
在点一点网络中,分组从通信子网的源节点到达目的结点的路由是由______决定的。
可变分区存储管理方案中,在空闲区表中选择能满足进程内存要求的最大空闲区,分割后分配的算法是
在SQLServer2008中,设log1是SQLServer身份验证模式的数据库服务器登录帐户。现要授予log1具有创建数据库的权限,请补全下列语句:EXECsp_addsrvrolemember’log1’。’【9】’
Elgamal公钥体制在原理上基于下面哪个数学基础________。
随机试题
陆游《关山月》:__________,将军不战空临边。
Whichofyourtwohandsdoyouusemore?Veryfewofuscanusebothhandsequallywell.Mostofusareright-handed.Onlyabout
根据《建设工程安全生产管理条例》规定,实行施工总承包的建设工程发生施工生产安全事故后,应由()向当地安全生产监督管理部门报告。
吊销会计从业资格证书属于行政处罚。
按照现行会计制度规定,对于购货方实际享受的现金折扣,销售企业应增加当期财务费用。( )
22,36,40,56,68,()
Manymenandwomenhavelongboughtintotheideathatthereare"male"and"female"brains,believingthatexplainsjustabo
1928年,毛泽东同志在《土地法》中指出:“没收一切土地归苏维埃政府所有,用下列三种方法分配之:(一)分配农民个别耕种;(二)分配农民共同耕种;(三)由苏维埃政府组织模范农场耕种。”这段论述提到了“工农武装割据”的()。
Whateverthecauses,theEnglishbytheendoftheyear2050willhavebeenmorewidelyspokenandwrittenthananyotherlangua
Therearetwobasicwaystoseegrowth:Oneasaproduct,theotherasaprocess.Peoplehave【B1】______viewedpersonalgrowth
最新回复
(
0
)