首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件in81.dat中存有300个4位数,并已调用函数readDat()把这些数存入数组a中,请编制一函数isValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数 cnt,再求出所有满足此条件的4位数的平均值
已知数据文件in81.dat中存有300个4位数,并已调用函数readDat()把这些数存入数组a中,请编制一函数isValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数 cnt,再求出所有满足此条件的4位数的平均值
admin
2010-06-17
41
问题
已知数据文件in81.dat中存有300个4位数,并已调用函数readDat()把这些数存入数组a中,请编制一函数isValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数 cnt,再求出所有满足此条件的4位数的平均值pjz1,以及所有不满足此条件的4位数的平均值pjz2,最后调用函数writeDat()把结果cnt,pjz1,pjz2输出到out81.dar文件。
例如:7153,7+1=5+3,则该数满足条件,计算平均值pjz1,且个数cnt=cnt+1。
8129,8+1≠2+9,则该数不满足条件计算平均值pjz2。
注意:部分源程序已给出。
程序中已定义数组:a[300],b[300],已定义变量:cnt,pjz1,pjz2。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio. h>
int a[300], cnt=0;
double pjz1=0.0,pjz2=0.0;
void jsValue()
{
}
main ( )
{
int i;
readDat();
jsValue();
writeDat();
printf ("cnt=%d\n 满足条件的平均值pjz1=%7.21f\n 不满足条件的平均值
pjz2=%7.21f\n",cnt,pjz1,pjz2);
}
readDat()
{
FILE *fp;
int i;
fp=fopen( "in81.dat","r");
for(i=0;i<300;i++)
fscanf(fp,"%d,",&a
);
fclose(fp);
}
writeDat()
{
FILE *fp;
int i;
fp=fopen("outSl.dat","w");
fprintf(fp,"%d\n%7.21f\n%7.21f\n",cnt ,pjz1,pjz2);
fclose(fp);
}
选项
答案
void jsValue() { 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(thou+hun==ten+data) /*如果千位数加百位数等于十位数加个位数*/ { cnt++; /*统计满足条件的数的个数*/ piz1+=a[i]; /*将满足条件的数求和*/ } else { n++; /*否则统计不满足条件的数的个数*/ pjz2+;a[i]; /*将不满足条件的数求和*/ } } pjz1/=cnt; /*求满足条件的数的平均值*/ pjz2/=n; /*求不满足条件的数的平均值*/ }
解析
本题考查的知识点如下:
(1)特殊运算符“%”及“/”的使用。
(2)循环结构及选择结构的使用。
在本题中,首先要将一个4位数的千位、百位、十位、个位拆成独立的数字。这里借助特殊运算符号“%”——取余和“/”——整除,拆分方法略。然后判断“千位数+百位数=十位数+个位数”。依次求得符合条件的数的个数及其平均值。
转载请注明原文地址:https://kaotiyun.com/show/dIvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
设R1中为一正整数,将其数值的一半存入R2的ARM指令正确的是()。
关于处理器内核说法正确的是()。
集成电路制造技术是嵌入式系统发展的重要基础,下面关于集成电路技术发展的叙述中,错误的是()。
ADSL是利用普通电话线将家庭用户计算机接入互联网的技术之一。此时,用户端需配置一个【43】_______设备,计算机则必须有【44】_______接口。
在μC/OS–II操作系统中有多种方法可以保护任务间的共享数据并支持任务之间的通信。下列各项中不能用于保护任务间的共享数据或支持任务间通信的是()。
下图给出了产生嵌入式处理器时钟信号的两种方法,其中左图为使用【55】_______时钟信号发生器产生嵌入式处理器时钟信号的方法,右图为使用【56】_______时钟信号源产生嵌入式处理器时钟信号的方法。
RTOS响应中断请求并且完成相应【75】(ISR)的时间非常快,且这个时间必须具有某种程度的一致性。精细衡量这个时间一致性变化的术语是【76】。
某ARM处理器内部某功能部件对存储器的保护功能,提供了简单代替存储器管理部件的方法来管理存储器,这个部件用英语缩写为()。
Linux内核由若干个子系统组成,一般来说下面哪一个不是Linux内核的子系统()。
设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关于多值依赖的叙述中,不正确的是
随机试题
主张将组织中管理者的职能与工人的作业职能加以分离、各负其责的学者是()
A.肝脏损害B.肾脏损害C.叶酸缺D.变态反应E.消化道反应
中和胃酸的抗酸药用于治疗胃溃疡的作用机制是()
下列哪项高度的确定不能考虑平均人体身高而应考虑较高人体身高?
地方各级人民政府编制的土地利用总体规划中的()总量不得超过上一级政府土地利用总体规划确定的控制目标。
系统的城市交通政策内容包括<)。
下列表述符合车船税征税现行规定的有()。
目的在于使学生做好上课前的各种准备的教学环节是()。
某工厂有甲、乙两个车间,其中甲车间有15名、乙车间有12名工人。每个车间都安排工人轮流值班,其中周一到周五每天安排一人、周六和周日每天安排两人。某个星期一甲车间的小张和乙车间的小赵一起值班,则他们下一次一起值班是星期几?
如果哥哥考一百分,那么爸爸、妈妈、妹妹都吃红烧肉。如果上述断定是真的,则以下哪项也一定为真?()
最新回复
(
0
)