首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请补充函数ReadData()实现从文件IN.DAT中读取1000个十进制整数到数组xx[]中I请函数Compute()分别计算出xx中偶数的个数even、奇数的平均值avel、偶数的平均值ave2以及方差totfc的值,最后调用函数WriteData()
请补充函数ReadData()实现从文件IN.DAT中读取1000个十进制整数到数组xx[]中I请函数Compute()分别计算出xx中偶数的个数even、奇数的平均值avel、偶数的平均值ave2以及方差totfc的值,最后调用函数WriteData()
admin
2021-04-30
50
问题
请补充函数ReadData()实现从文件IN.DAT中读取1000个十进制整数到数组xx[]中I请函数Compute()分别计算出xx中偶数的个数even、奇数的平均值avel、偶数的平均值ave2以及方差totfc的值,最后调用函数WriteData()把结果输出到OUT.DAT文件中。
计算方差的公式如下:
设N为偶数的个数,xx
为偶数,ave2为偶数的平均值。
原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000)
注意:部分源程序已给出。
请勿改动主函数main()和输出数据函数WriteData()的内容。
试题程序:
#include
#include
#include
#define MAX 1000
int xx[MAX],odd=0,even=0;
double ave1=0.0.ave2=0.0,totfc=0.0;
void WriteData(void);
int ReadData(void)
{
int i;
FILE*fp;
if((fp=fopen(“IN.DAT”,“r”))==NULL)re
turn 1;
//编制函数ReadData()的部分
fclose(fp);
return 0;
}
void Compute(void)
{
int i,yy[MAX];
for(i=0;i
yyEi]=0;
for(i=0;i
if(xx
%2==0)//测试结点i是否是偶数
{
yy[even++]=xx
; //将结点i存入数组yy中
ave2+=xx
;
} //将结点i累加存入ave2中
else//如果结点i不是偶数
{
odd++; //累加变量odd记录奇数数的个数
ave1+=xx
;
} //将xx
累加存入avel中
if(odd==0)ave1=0;
else ave1/=odd;//计算奇数数的平均数
if(even==0)ave2=0;
else ave2/=even; //计算偶数数的平均数
for(i=0;i
totfc+=(yy
-ave2)*(yy
-ave2)/even;
}
}
void main()
{
int i;
for(i=0;i
=0;
if(ReadData())
{
printf(“数据文件IN.DAT不能打开!\007\
n”);
return}
}
Compute();
printf(“EVEN=%d\nAVEl=%lf\nAVER2=%lf
\nTOTFC=%lf\n”,even。ave1,ave2,totfe);
WriteData();
}
void WriteData(void)
{
FILE*fp;
int i;
fp=fopen(“OUT.DAT”,“W”);
fprintf(fp,“%dkn%lf\n%lf\n%If\n”,even,ave1,
ave2,totfc);
felose(fp);
}
选项
答案
for(i=0;i
解析
本题考查文件的操作、奇偶判断和数学公式的计算。函数ReadData的作用是将从文件中读取数据存入数组xx中,因为数据存放入文件的格式是每个数据被逗号隔开。所以fseanf(fp,“%d,”,&xx
语句中字符串“%d,”中要加入逗号。函数Compute的作用是计算方差.思路是首先顺序读取数组XX中的结点,若是偶数累加存入ave2,个数存入even,若不是偶数(即为奇数)累加结果存入ave1,个数存入odd。然后计算奇数和偶数的平均数。利用循环结构依次读取存放偶数的数组yy,计算方差totfe。
转载请注明原文地址:https://kaotiyun.com/show/XXOZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
在一台Cisco路由器上封禁ICMP协议,只允许215.192.40.16/28和202.204.28.2/24子网的ICMP数据包通过路由器,下列正确的access.1ist配置是()。
如图1所示,一台Cisoc3500系列交换机上连接2台计算机,它们分别划分在VLANl0(ID号为10)和VLANl1(ID号为11)中。交换机的千兆以太网端口(g0/1)连接一台路由器,使2个VLAN之间能够通信。交换机管理地址为167.11.45.2
若服务器系统可用性达到99.999%,那么每年的停机时间必须小于等于()。
下列对SSID的描述中,错误的是()。
下列关于Windows2003系统下DHCP服务器的描述中,错误的是()。
下列关于Ethernet物理层标准命名方法(xType-yName)的描述中,错误的是()。
下列关于漏洞扫描技术和工具的描述中,错误的是()。
下图是网络地址转换NAT的一个示例根据图中信息,标号为②的方格中的内容应为()。
下列关于OSPF协议的描述中,错误的是()。
采用RSA算法,网络中N个用户之间进行加密通信,需要的密钥个数是()。
随机试题
IPv4和IPv6地址的二进制位数分别是()
Thereareonlythreeavailablestrategiesforcontrollingcancer:prevention,screeningandtreatment.Lungcancercausesmored
以下有“门”的器官是
有关孕期保健下述哪项不正确
甲与乙系朋友关系。某日甲外出,将自己的一台照相机交给乙保管。乙未经甲同意将照相机卖给不知情的丙,对此表述正确的是()。
在一个绝热容器中,温度为80℃的水3kg和温度为20℃的水5kg相混合,此混合过程为()过程,且此混合过程中熵的变化量为()。
背景资料:某承包商于某年承包某外资工程的施工,与业主签订的承包合同约定:工程合同价2000万元;若遇物价变动,工程价款采用调值公式动态结算;该工程的人工费占工程价款的35%,水泥占23%,钢材占12%,石料占8%,砂料占7%,不调值费用占15%;开工前业
狭义的知识产权不包括()。
干细胞遍布人体,因为拥有变成任何类型细胞的能力而令科学家们着迷,这种能力意味着它们有可能修复或者取代受损的组织。而通过激光刺激干细胞生长很有可能实现组织生长,因此研究人员认为激光技术或许将成为医学领域的一种变革工具。以下哪项如果为真,最能支持上述结论?(
民族精神是一个民族在长期共同生活和社会实践中形成的,为本民族大多数成员所认同的价值取向、思维方式、道德规范、精神气质的总和。在五千多年的发展中,中华民族形成了伟大的民族精神。中华民族精神的核心是()
最新回复
(
0
)