首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数diffVal(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于0的个数count,再求出所有满足此条件的四位数的平均值A
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数diffVal(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于0的个数count,再求出所有满足此条件的四位数的平均值A
admin
2010-09-05
30
问题
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数diffVal(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于0的个数count,再求出所有满足此条件的四位数的平均值Ave1,以及不满足此条件的四位数平均值Ave2。最后调用写函数Wdata(),把结果输出到OUT.dat文件中。
例如,1239,9-1-2-3>0,则该数满足条件,计算平均值Ave1,且个数count=count+1。 8129,9-8-1-2<0,则该数不满足条件,计算平均值Ave2。
注意:部分源程序已经给出。程序中已定义数组a[300],已定义变量count、Ave1、Ave2。请勿改动主函数main()、读函数Rdata()和写函数Wdata()的内容。
#include <stdio.h>
#int a[300], count = 0;
double Ave1 = 0.0, Ave2 = 0.0;
void diffVal()
{
}
void Rdata()
{ FILE *fp;
int i;
fp = fopen("IN. dat", "r");
for (i=0; i<300; i++)
fscanf(fp, "%d,", &a
);
fclose(fp);
}
void Wdata()
{ FILE *fp;
fp = fopen ("OUT. dat", "w");
fprintf(fp, "%d\n%7.2f\n%7.2f\n", count, Ave1, Ave2);
fclose(fp);
}
main()
{ Rdata();
diffVal();
Wdata();
printf ("count=%d\n 满足条件的平均值 pzj 1=%7.2f\n 不满足条件的平均值pzj2=%7.2f\n", count, Ave1, Ave2);
}
选项
答案
void diffVal() { int i, thou, hun, ten, data, n = 0; for (i=0; i<300; i++) { thou = a[i]/1000; hun = a[i]%1000/100; ten = a[i]%100/10; data = a[i]%10; if (data-thou-hun-ten>0) { count++; Ave1 += a[i]; } else { n++; Ave2 += a[i]; } } Ave1 /= count; Ave2 /= n; } [解题思路] 对于每一个四位数,用这个四位数除以1000,可得到这个四位数千位上的数字输给变量thou:这个四位数对1000求余然后再除以100,可得到这个四位数百位上的数字输给变量hun;这个四位数对100求余然后再除以10,可得到这个四位数十位上的数字输给变量ten;这个四位数对10求余,可得到这个四位数个位上的数字输给变量data。 然后判断表达式data-thou-hun-ten是否大于0,如果大于0,则计数变量count加1,同时把这个数加到变量Ave1上;否则计数变量n加1,同时把这个数加到变量Ave2上。退出循环后,变量Ave1的值除以count值就得到所有满足此条件的四位数的平均值,变量Ave2的值除以n值就得到所有不满足此条件的四位数的平均值。
解析
转载请注明原文地址:https://kaotiyun.com/show/YuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
计算机系统可分为硬件系统和软件系统,其中软件系统主要由______组成。
关系的规范化实质上是围绕着()进行的。
在关系规范化过程中,要从1NF变成3NF,需要消除()。
对n个记录的文件进行快速排序,最坏情况下的执行时间为_____。
当对视图进行UPDATE,INSERT和DELETE操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项【】。
从学生选课信息表中“找出无成绩的元组”的SQL语句是______。在“查询选修课程号为4,且成绩在80分以上的所有学生的学号和姓名”的SQL语句中,将使用的表是______。
二分查找法的存储结构要求是______,对元素要求______。
在数据库管理系统的层次结构中,数据存取层处理的对象是______。
对一棵二叉树的中序遍历序列中,根结点的左边包括()。
一个公司有若干名兼职人员,而每个兼职人员有可能在多家公司打工,则公司与兼职人员之间具有
随机试题
猪,长期采食含有酱渣的饲料。身体震颤,不断咀嚼,口渴,口角挂少量白色泡沫,该病猪最可能的表现是
开关及其附件进场时应查验()。
[2009年,第61题;2012年,第64题]直径为d的实心圆轴受扭,若使扭转角减小一半,圆轴的直径需变为()。
特种设备专指涉及生命安全、危险较大的锅炉、压力容器(含气瓶)、压力管道、电梯、起重机械、客运索道、大型游乐设施等。国家对特种设备实行()监察体制。
进行施工合同实施偏差的责任分析,必须以()为依据。
【真题(中级)】某投资项目的标准离差率为75%,风险报酬系数为20%,国债的年利率为5%,则该投资项目的投资报酬率为()。
根据印花税法律制度的规定,下列各项中,不属于印花税缴纳方法的是()。
()体现了质量检验的预防功能。
在SQLServer2008中,通过对视图创建唯一聚集索引的方式可将视图的结果集保存剑数据库中,这种视图被称为________视图。
下列叙述中错误的是()。
最新回复
(
0
)