首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序CalValue(),其功能要求: (1)求出这N个实数的平均值aver。 (2)分别求出这N个实数的整数部分值之和sumi
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序CalValue(),其功能要求: (1)求出这N个实数的平均值aver。 (2)分别求出这N个实数的整数部分值之和sumi
admin
2009-02-19
35
问题
已知在文件IN42.DAT中存有N个实数(N<200),函数ReadDat()读取这N个实数并存入数组xx中。请编制程序CalValue(),其功能要求:
(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,"%d\n%.21f\n%.21f\n%.21f\n",N, aver,sumint,sumdec);
fclose(fp);
}
选项
答案
void CalValue() { int i; double x,sum=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://kaotiyun.com/show/FESZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
UART的中文名称是通用【61】收发器,它由发送器、接收器、控制单元以及【62】发生器等构成。
下面是关于嵌入式系统使用的存储器的叙述,其中错误的是()。
将R1寄存器中的指定位bit0和bit3清零,以下ARM汇编指令正确的是()。
ARM指令完成的功能是当条件为“带符号数小于”时,将R2和R3进行逻辑或操作,结果存放在R1中,正确的指令是()。
一个早期的数码相机只有80万像素,它所拍摄的相片最高分辨率是()。
开发嵌入式系统时,需要构建一个宿主机一目标机的开发环境。若目标机是裸机,那么为了调试和下载软件需要将调试仿真器连接到目标机的哪一种接口?()。
在μC/OS—Ⅱ中有多种方法可以保护任务之间的共享数据和提供任务之间的通信。其中不能达到保护目的的方法是()。
嵌入式系统开发时,由于受到目标机资源的限制,需要建立一个【77】_______与目标机组成的调试架构来完成开发工作。若目标机为裸机环境时,通常需要通过【78】_______接口来完成硬件环境测试及初始软件的调试和下载。
对于ARM处理器以下不属于逻辑运算指令助记符的是()。
随机试题
提出“消极的X理论”和“积极的Y理论”观点的学者是()
保护人体避免感染乙型病毒性肝炎的抗体是_______。
A.心B.脾C.肺D.肝E.肾称“罢极之本”的是
根据建设部2000年颁布的《建筑工程施工图设计文件审查暂行办法》规定,建设单位应当将施工图报送建设行政主管部门,由建设行政主管部分委托有关审查机构进行审查。审查的主要内容包括()。
关于融资租赁合同当事人的权利义务,下列说法正确的有()。
“孟母三迁”的典故体现了影响人发展的哪一种因素?这种因素在人的发展中有什么作用?
在教育过程中,切勿“揠苗助长”“陵节而施”,这是人的身心发展的()的要求。
受全球经济危机的影响,H公司今年的经济效益远没有往年好。公司员工月奖金都受到了不同程度的影响。大家最担心的还是年终奖的情况。据可靠消息透露,一个员工的年终奖将受到很大影响,除非他对公司做出了非同一般的业绩并且没有缺勤的情况发生。如果上述断定是真的,则以下
阅读下列程序说明和C代码,回答问题1~2。[说明]本程序用古典的Eratosthenes的筛法求从2起到指定范围内的素数。如果要找出2至10中的素数,开始时筛中有2到10的数,然后取走筛中的最小的数2,宜布它是素数,并把该素数的倍数都取走。这样,
Christmasiscelebrated【B1】______theworld.December25isbelievedtobethebirthdayofJesusChrist.People【B2】______gift
最新回复
(
0
)