首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
admin
2010-09-05
62
问题
已知数据文件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://kaotiyun.com/show/uuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
设F是属性组U上的一组函数依赖,下列哪一条属于Armstrong公理系统中的基本推理规则?
用P、V操作管理临界区时,把信号量mutex的初值设定为1。当mutex的等待队列中有k(k>1)个进程时,信号量的值为
数据模型用来描述数据的静态特征、动态特征和完整性约束,对定义在数据上的操作进行描述是描述数据的_____。
设只包含根节点的二叉树的高度为0,则高度为k的二叉树的最小节点数为_____。
ROM中的信息是______。
一个SQL语句原则上可产生或处理一组记录,而主语句一次只能处理一个记录,为此必须协调两种处理方式,这是通过使用_____机制来解决的。
若关系模式R的规范化程度达到4NF,则R的属性之间不存在非平凡且非_____的多值依赖。
单键表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的?
当对视图进行UPDATE、INSERT和DELETE操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项______。
随机试题
不属于颗粒剂特点的是
女性,40岁,1天前晨起感左耳后疼痛,言语不清,流涎,口角向右侧偏斜,左侧额纹和鼻唇沟消失,左眼不能闭合。诊断应该是
川贝母的伪品有
(2010年多项选择第70题)商务谈判的信息准备主要是做好市场、科技等方面的背景调查,背景调查应坚持的原则是()。
马某被人民检察院指控犯有抢劫罪,同他一起被指控的还有谢某某。在人民法院受理案件后,马某的辩护律师黄某,提出要向被害人收集一些材料。身为某公司职员的谢某某的哥哥谢某,由于被谢某某委托为辩护人,因而以辩护人的身份提出要向被害人所提供的一名证人夏某收集一些材料。
水泥细度试验中,如果负压筛法与水筛法测定结果发生争议时,以负压筛法为准。()
用户申请用电时,应向()提供用电工程项目批准的文件及有关的用电资料。
清代蒲松龄在其家乡山东淄川,以当时流行的小曲填词,创作了有故事情节的长篇叙事音乐,称“聊斋俚曲”,又称为“蒲松龄俚曲”。()
主张课程的内容和组织应以儿童的兴趣或需要为基础,鼓励“做中学”,通过手脑并用以获得直接经验。这反映的课程类型是()。
教育学
最新回复
(
0
)