首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:求出千位上的数加个位上的数等于百位上的数加十位上的数的四位数的个数count,再求出所有满足此条件的四位数的平均值Ave1
admin
2010-09-05
21
问题
已知数据文件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全国计算机三级
相关试题推荐
PowerBuilder中的PowerScript语言包括下列哪些语句?Ⅰ.变量定义语句Ⅱ.赋值语句Ⅲ.流控制语句Ⅳ.操纵数据库语句
在关系规范化过程中,要从1NF变成3NF,需要消除()。
在SQL语言中,如果要为一个基本表增加列和完整性约束条件,应该使用SQL语句【】。
一棵有n个结点的树,该树中所有结点的入度之和为______。
对n个元素的序列采用冒泡排序的方法,最少的比较次数为______。
线性表、栈和队列都是线性结构,可以在线性表的______位置插入和删除元素;而对栈只能在______插入和删除元素;对于队列只能在______插入和在______删除元素。
用值域的概念宋定义关系,关系是属性值域笛卡儿积的一个_____。
图3-2文件系统目录文件采用链接结构,每个磁盘块放10个下级文件的描述信息,若下级文件为目录文件,则上级目录指向该目录的第一块,否则指向普通文件的文件控制块,每个目录下最多放10个下级文件,普通文件采用顺序结构,文件H共有15个磁盘块。若要读文件B/E,
对Interned上的B类IP地址,网络类型占两位,数值为0x10,如下对B类网表述正确的是()。
当对视图进行UPDATE、INSERT和DELETE操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项______。
随机试题
Writeanessayof160-200wordsbasedonthefollowingdrawing.Inyouressayyoushould1)describethedrawingbriefly,2)ex
1927年9月9日,毛泽东领导的著名起义是
患者,女,45岁。因粘连性肠梗阻3天入院。诉口渴、无力、尿少。检查:呼吸26次/分。脉搏100次/分,血压90/60mmHg。皮肤弹性差,眼窝内陷。测血钾3.5mmol/L,CO2CP13.3mmol/L(正常23~31mmol/L)。该患者水钠代谢失
蚤对犬、猫的主要危害是
内伤发热中,肝郁发热的特点是
哪项检查可判断为异常?
A、水、甲醇、乙醇B、三氯甲烷、乙醚、苯C、铁氰化钾氨溶液D、亚硝酰铁氰化钠E、乙酸铅、乙酸铜、氯化亚锡鞣质与之显色反应的试剂是()
()是近代以来中华民族最伟大的梦想。
下列食物蛋白质属于不完全蛋白的是()。
请简释下列文字的含义,并运用中国法制史知识进行分析《唐律疏议.断狱律》:“死罪囚,决前一日二复奏,次日又三复奏。谓奏画已讫(音起——编者注),应行刑者,皆三复奏迄,然始下决。若不待复奏报下而决者,流二千里。复奏讫毕,听三日乃行刑,若限未满而行刑者,徒一
最新回复
(
0
)