首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件in55.dat中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数上数减十位数上的数减个位数上的数大于零的个数 cnt,再求出所有满足此条件的4位数平均
已知数据文件in55.dat中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数上数减十位数上的数减个位数上的数大于零的个数 cnt,再求出所有满足此条件的4位数平均
admin
2009-02-24
45
问题
已知数据文件in55.dat中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数上数减十位数上的数减个位数上的数大于零的个数 cnt,再求出所有满足此条件的4位数平均值pjz1,以及所有不满足此条件的4位数平均值pjz2,最后调用函数wfiteDat()把结果cnt,pjz1,pjz2输出到out55.dat文件中。
例如:9123,9-1-2-3>0,则该数满足条件,计算平均值pjz1,且个数cnt=cnt+1。
9812,9-8-l-2<0,则该数不满足条件,计算平均值pjz2。
程序中已定义数组:a[300],已定义变量:cnt。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
int a[300], cnt=0;
double pjzl=0.0,pjz2=0.0;
jsValue( )
{
}
main ( )
{
int ;
readDat();
jsValue();
writeDat();
printf ("cnt=%d\n 满足条件的平均值pj z1=%7.21f\n 不满足条伯的平均值
pjz2=%7.21f\n",cnt,pjzl,pjz2);
}
readDat ( )
{
FILE *fp;
int i;
fp=fopen ("in55.dat", "r");
for (i=0;i<300; i++)
fscanf (fp, "%d, ", &a Iii );
fclose (fp);
}
writeDat ()
{
FILE *fp;
int i;
fp=fopen ("out55.dat", "w");
fprintf(fp,"%d\n%7.21f\n%7-21f\n",cnt ,pjzl,pjz2);
fclose (fp);
}
选项
答案
jsVa lue ( ) { 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>O) /*如果千位数字减百位数字减十位数字减个位数字大于零*/ { cnt++; /*统计满足条件的数的个数*/ pjzl+=a [i]; /*将满足条件的数求和*/ } else { cnt++; /*统计不满足条件的数年个数*/ pjz2+=a [i]; /*将不满足条件的数求和* / } } pjz1/=cnt; /*求满足条件的数的平均值*/ Djz2/=n; /*求不满足条件的数的平均值* / }
解析
本题考查的知识点如下:
(1)将4位数各位上的数拆分为独立的数字。
(2)循环结构的使用。
在本题中,首先要将4位数各位上的数字拆分为独立的数字。这要借助运算符“%” (取余)与“/” (整除)。将一个4位数整除1000则可得到其千位上的数字,除以1000取余再整除100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。求得各位上的数字后,就可以进行比较了。
转载请注明原文地址:https://kaotiyun.com/show/JRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
对顺序文件进行更新时,原则上需对文件做整体拷贝,但当此类文件存于磁盘上时,进行操作可不必整体拷贝。Ⅰ.向文件的末端追加记录Ⅱ.删除记录Ⅲ.记录长度不变的条件下更新记录Ⅳ.插入记录
在数据库管理系统DBMS的层次结构中,数据存取层的处理对象是()。
如果多个事物在某个调度下执行结果与这些事物在某个串行调度下的执行结果相同,称这个调度为【】调度。
关系中的某个属性不是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属性为
在关系数据库中,表(table)是三级模式结构中的
防止地址越界的工作是由下列哪一项完成的?
在实时操作系统中,通常采用哪种调度算法来分配处理器?以满足实时性要求。()
从WWW的资源和行为中抽取感兴趣的、有用的模式或隐含的信息的过程,称为【】挖掘。
在TCP/IP参考模型中,不属于应用层协议的是
在多道程序环境下,地址空间重的逻辑地址和内存空间的物理地址是不一致的,将逻辑地址转换为物理地址的方法称为______。
随机试题
Whenpeoplebecomeunemployed,itis______whichisoftenworsethanlackofwages.
关于设计概算编制的说法,正确的是:
设f(x)具有二阶导数,y=f(x2),则的值为()。
图示结构受一对等值、反向、共线的力作用,自重不计,铰支座A的反力FA的作用线应该是:
根据韦纳的归因理论,员工在工作中取得成功或遭受挫折时,管理者应让员工()。
前期物业管理的职责是在新建物业投入使用初期建立物业管理服务体系并提供服务,其介于()与常规物业管理之间。
“蔡戈尼克效应”的发现,所采用的方法为_____。
下列关于在庆祝中国共产党成立95周年大会上,习近平总书记发表的重要讲话,说法错误的是()。
以下程序的输出结果是【 】。#include<stdio.h>main(){inti;for(i=’a’;i<’f’;i++,i++)printf("%c",i-’a’
Whatdoesthemanmean?
最新回复
(
0
)