首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知在文件IN65.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是: (1)求出这个文件中共有多少个正整数totNum。 (2)求出这些数中的
已知在文件IN65.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是: (1)求出这个文件中共有多少个正整数totNum。 (2)求出这些数中的
admin
2010-01-11
31
问题
已知在文件IN65.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是: (1)求出这个文件中共有多少个正整数totNum。 (2)求出这些数中的各位数字之和是奇数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz。最后调用函数WriteDat()把所有结果输出到文件 OUT65.DAT中。
注意:部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
试题程序:
#include<stdio. h>
#include<conio. h>
#define MAXNUM 200
int xx [MAXNUM];
int totNum=0;
int totCnt=0;
double totPjz=0.0;
int ReadDat (void);
void WriteDat (void)
void CalValue (void)
{
void main ( )
{
int i;
clrscr ( );
for ( i=0; i<MAXNUM; i++ )
xx
=0;
if (ReadDat ( ) )
{
printf ("数据文件IN65.DAT不能打开! \007\")
return;
}
CalValue ( );
printf ( "文件IN65.DAT中共有正整数=%d个\n",totNum);
printf ( "符合条件的正整数的个数=%d个\n", totCnt)
printf ( "平均值=%. 21f\n", totPjz);
WriteDat ();
}
int ReadDat (void)
{
FILE *fp;
int i=0;
if ( ( fp= fopen ( "IN65. DAT", "r" ) ) ==NULL)
return 1;
while ( ! feof (fp))
{
fscanf (fp, "%d", &xx [i++] );
}
fclose (fp);
return 0;
}
void WriteDat (void)
{
FILE *fp;
fp=fopen ("OUT65. DAT", "w" );
fprint f (fp, "%d\n%d\n%. 21f\n", totNum, totCnt,totPjz);
fclose (fp);
}
选项
答案
void CalValue (void) { int i, thou, hun, ten, data; for (i=O; i<MAXNUM; i++) { if(!xx[i]) break; if (xx[i] >0)totNum++; /*求正整数的个数*/ thou=xx [i]/1000; /*求四位数的千位数字*/ hun=xx [i] %1000/100; /*求四位数的百位数字* / ten=xx [i] %1 O0/10; /*求四位数的十位数字*/ data=xx [i] %10; /*求四位数的个位数字*/ if ((thou+hun+ten+data) %2 ) { totCnt++; /*求数字之和是奇数的个数*/ totPjz+=xx[i]; /*求满足条件的数的平均数* / } } totPjz/=totCnt; /*求满足条件的数的平均值*/ }
解析
本题考查的知识点如下:
(1)“%”与“/”的使用。
(2)数组结束的判断和强行退出一层循环结构。
在本题中,并没有给出确切的数据个数,是以数据的最大个数定义的数组。在主函数中,给所有的数组成员赋初值为0,而从文件中读取的数据是正整数,所以只要数组的某个元素为0,则说明数组存的数据已经结束。此时就可以结束循环结构。这里要借助运算符“%”与“/”将4位数的各位上的数拆成独立的数字,然后就可以根据题意要求判断。
转载请注明原文地址:https://jikaoti.com/ti/4rc7FFFM
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
为了保证传输的安全性,某一Web网站要求用户使用SSL协议。如果该网站的域名为www.ok.edu.cn,用户访问该网站使用的URL应为()。
关于CSMA/CA方法的描述中,正确的是(),
设系统中有3种类型的资源(A,B,C)和5个进程Pl、P2、P3、P4、P5。A资源的数量为17,B资源的数量为5,C资源的数量为20。某一时刻的系统状态如下表所示。系统采用银行家算法实施死锁避免策略。下列进程执行序列中,哪些是不安全序列?(
某文件系统采用UNIX5三级索引结构,1节点中包含13个地址项,其中0-9项为直接地址,10为一次间接索引项,11为二次间接索引项,12为三级间接索引项。若磁盘块大小为4096B,地址项占用4B,则该文件系统中文件的最大尺寸不能超过下列哪项数值?(
关于P2P文件共享系统的描述中,错误的是()。
下列活动中,哪一种活动只存在同步关系?()
计算机I/O系统的软件部分主要包含下列哪些项?()
计算机操作系统中,设备管理的主要任务之一是()。
在TCP/IP参考模型中,路由选择功能实现在()。
随机试题
能力的个别差异不包括能力类型的差异。
某患者因外伤急性失血,血压降至70/30mmHg,尿量明显减少,其尿量减少的原因主要是
A.预防为主B.强制免疫C.主动免疫D.被动免疫E.混合免疫国家对动物疫病实施()方针。
独立董事连续3次未亲自出席董事会会议的,由董事会提请股东大会予以撤换。()
按行权日期不同,金融期权可分为()。
X公司2018年有关交易性金融资产的业务如下:(1)4月1日,X公司从证券交易所购入A公司股票,市场价值为1500万元,X公司将其划分为交易性金融资产,支付价款为1550万元,其中,包含A公司已宣告但尚未发放的现金股利50万元。另支付交易费用10万元
甲建筑工程公司2011年1月份承建一项住宅工程,全部工程于2011年12月份竣工并通过验收,取得工程总价款7860万元。另外,由于工程保质保量提前完工,获得建设单位额外奖励10万元。在施工期间,甲公司将建筑工程的装饰装修部分转包给乙公司来完成,按合同支付给
试述福禄培尔的幼儿园教育理论。
[2007年MPA真题]通信部队的士兵学习了不少步兵战术,赵洪是通信部队的士兵,所以他也学习了不少步兵战术。以下哪项与上述论述最为相似?
A、One.B、Two.C、Three.D、Four.BHowmanystoriesdoesMary’shousehave?本题为数字题。从对话中livinginatwo-storyhouse可以确定答案。
最新回复
(
0
)