首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
admin
2010-09-05
58
问题
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1,以及不满足此条件的四位数的平均值Ave2。最后调用写函数Wdata(),把结果输出到OUT.dat文件中。
例如:6712,6+2=7+1,则该数满足条件,计算平均值Ave1,且个数count=count+1。8129, 8+9!=1+2,则该数不满足条件,计算平均值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 NumCal ()
{
}
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 ();
NumCal ( );
Wdata ();
printf ("count=%d\n 满足条件的平均值 Ave1=%7.2f\n 不满足条件的平均值Ave2=%7.2f\n", count, Ave1, Ave2);
}
选项
答案
void NumCal() { int i, n = 0, thou, hun, ten, data; 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 (thou+ data == hun+ ten) { count++; Ave1 += a[i]; } else { n++; Ave2 += a[i]; } } Ave1 /= count; Ave2 /= n; } [解题思路] 对于每一个四位数,用这个四位数除以1000,可得到这个四位数千位上的数字输给变量thou;这个四位数对1000求余数然后再除以100,可得到这个四位数百位上的数字输给变量hun;这个四位数对100求余数然后再除以10,可得到这个四位数十位上的数字输给变量ten;这个四位数对10求余数,可得到这个四位数个位上的数字输给变量data。 然后判断表达式thou+ data==hun+ ten是否成立,如果成立,则计数变量count加1,同时把这个数加到变量Ave1上;否则计数变量n加1,同时把这个数加到变量Ave2上。循环结束后,变量Ave1的值除以count,就得到所有满足此条件的四位数的平均值Ave1;变量 Ave2的值除以n,就得到有不满足此条件的四位数的平均值Ave2。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/uuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
下列关于超文本的叙述中,哪一个是不正确的?
数据库管理系统(DBMS)是位于_____和操作系统之间的一个数据管理软件。
在关系模式R(D,E,G)中,存在函数依赖关系{E→D,(D,G)→E}则候选码为【】,关系模式R(D,E,G)最高可以达到【】。
操作系统的安全措施有【】、【】和【】。
事务在运行过程中由于某种原因,事务在正常终止之前就被撤销,这种现象称为______。
m阶B树的根节点若不是叶节点,那么它至多有m棵子树,至少有_____棵子树。
以下关于数据结构的基本概念的叙述中哪一条是错误的?______。
对一个模式的分解要求分解后产生的模式与原模式等价,对其等价性进行评价的两个主要标准是______、______。
下列问题的关系代数操作基于如下的关系R和S:
二叉树是结点的有限集合,这个有限集合或者为【】,或者由一个根结点及两棵不相交的、分别称作为根的左子树和右子树的二叉树组成。
随机试题
连续24小时测胎动次数,提示为胎儿窘迫应小于
下列说法不正确的是()。
把某一商品所有个人需求加总,即把商品每一价格所对应的每个人的需求量相加,得出该商品市场上与每一价格对应的市场需求量,即为该商品的()。
根据《安全生产法》的规定,国有企业的主要负责人未按有关规定保证安全生产所需的资金投入,导致发生生产安全事故,尚不够刑事处罚的,对企业主要负责人应当给予()的处分。
科目期初余额录入完毕后,点击“平衡”是为了()。
旅行社取得经营许可满()年,且未因侵害旅游者合法权益受到行政机关罚款以上处罚的,可以申请经营出境旅游业务。
A、 B、 C、 D、 D前一组图中直线数量分别为4、3、2,依次递减;曲线数量分别为1、2、3,依次递增。后一组图也符合这一规律,直线数量依次为3、2、1;曲线数量依次为0、1、2。故本题答案为D。
甲立下一份公证遗嘱,将大部分财产留给儿子乙,少部分的存款留给女儿丙。后乙因盗窃而被判刑,甲伤心至极,在病榻上当着众亲友的面将遗嘱烧毁,不久去世。乙出狱后要求按照遗嘱的内容继承遗产。对此,下列哪些选项是不正确的?()
Oldpeoplearealwayssayingthattheyoungarenotwhattheywere.Thesame【C1】________ismadefromgenerationtogenerationan
Itishightimeyou______yourmembershipdues.
最新回复
(
0
)