首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存有200个四位整型数,函数ReadData()负责将IN.DAT中的数读到数组inBuf[]中。请编写函数findValue(),其功能是:求出千位数上的值加十位数上的值等于百位数上的值加上个位数上的值,并且此四位数是偶数的数,并按照从
文件IN.DAT中存有200个四位整型数,函数ReadData()负责将IN.DAT中的数读到数组inBuf[]中。请编写函数findValue(),其功能是:求出千位数上的值加十位数上的值等于百位数上的值加上个位数上的值,并且此四位数是偶数的数,并按照从
admin
2021-04-30
72
问题
文件IN.DAT中存有200个四位整型数,函数ReadData()负责将IN.DAT中的数读到数组inBuf[]中。请编写函数findValue(),其功能是:求出千位数上的值加十位数上的值等于百位数上的值加上个位数上的值,并且此四位数是偶数的数,并按照从小到大的顺序存入数组outBuf[]中,并用count记录下符合条件的数的个数。函数WriteData()负责将outBuf[]中的数输出到文件OUT.DAT中并且在屏幕上显示出来。
注意:部分源程序已给出。
程序中已定义数组:inBuf[NUM],outBuf[NUM],已定义变量:count。
请勿改动主函数main()、读函数ReadData()和写函数WriteData()的内容。
试题程序:
#include
#define NUM 200
int inBuf[NUM],outBuf[NUM],count=0;
void ReadData();
void WriteData();
void findValue()
{
}
void main()
{
int i;
ReadData();
findValue();
WriteData();
printf(“count=%d\n”,count);
for(i=0;i
printf(“outBuf[%d]=%d\n”,i.outBuf
);
}
void RcadData()
{
FILE*fp;
int i;
fp=fopen(“IN.DAT”,“r”);
for(i=0;i
fscanf(fp,“%d,”,&inBuf
);
fclose(fp);
}
void WriteData()
{
FILE*fp;
int i;
fp=fopen(“OUT.DAT”,“W”);
fprintf(fp,“count=%d\n”,count);
for(i=0;i
fprintf(fp,“%d,\n”,outBuf
);
fclose(fp);
}
选项
答案
void findValue() int i,j,k,d[4],temp; for(i=0;i
outBuf[j]) /*如果第i位比它后面的数大,则将两者进行交 换,也即将更小的值放到第i位*/ { temp=outBuf[i]; outBuf[i]=outBuf[j]; outBuf[j]=temp; } }
解析
本题主要考查数位分解及排序。
数位分解就是将n位数上各个数位上的数值单独分离出来。解决此问题的方法是,将n位数对10求余可以将个位上的数值分离出来。将这个n位数除以10以后得到一个n-1位数,则此时n位数原来的10位就变成了n-1位敖的个位,再将此n-1位数时10求余便可得到原n位数的10位。依此类推。按照同样的方法便可将n位数各个数位上的数值分离出来。
程序步骤:①将数值送入temp中。⑦由temp%10得到个位数:(temp/10)%10得到十位数……如此可得到各位上的数值。③按照题目所蛤的条件选出数据。④时选出的数据进行排序,排序的思想是(以从小到大为例):将当前数据与其后的各个数据相比较,如果当前的数据比其后的数据大,则将两数据进行交换,从而使得前面的数据小于后面的数据。达到从小到大排序的目的。
转载请注明原文地址:https://www.kaotiyun.com/show/aHOZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
如图1所示,在某DHCP客户机上捕获了5条报文,表中对第5条报文进行了解析,图2是在该客户机捕获上述报文后执行ipconfig/all命令后得到的信息。分析捕获的报文,并补全图中的信息。
某公司使用Windows2003DHCP/服务器对内部主机的IP地址进行管理,DHCP服务器的新建作用域及新建保留配置如图1和图2所示。某DHCP客户机从该DHCP服务器获取IP地址过程中,在客户机捕获的报文及相关分析如图3所示,补全图3中的内容。
如图所示,某园区网用10Gbps的POS技术与Internet相连,POS接口的帧格式是SONET。园区网内部路由协议采用OSPF,与Internet的连接使用静态路由协议。该园区网还通过一台Cisc02511和Modempool设备为用户提供拨号入网服
应用题必须用蓝、黑色钢笔或者圆珠笔写在答题纸的相应位置上,否则无效。请根据下图所示网络结构回答下列问题。如果采用了入侵检测设备对进出网络的流量进行检测,并且探测器是在交换机1上通过端口镜像方式获得流量。下面是通过相关命令显示的镜像设置信息。请问探
下列Cisco路由器进入vty配置模式后的命令提示符,正确的是()。
下列关于Windows2003系统下DHCP服务器的描述中,错误的是()。
在IIS6.0中用虚拟服务器构建多个网站时,错误的方法是()。
在IIS6.0中用虚拟服务器构建多个网站时,不能使用的方法是()。
下图是网络地址转换NAT的一个示例根据图中信息,标号为②的方格中的内容应为()。
常用的数据备份方式包括完全备份、增量备份和差异备份,3种方式在备份时使用的存储空间由少到多的顺序为()。
随机试题
Doesthelanguagewespeakdeterminehowhealthyandrichwewillbe?NewresearchbyKeithChenofYaleBusinessSchoolsuggest
男性,64岁,突发气喘、心慌2小时,高血压病史9年。检查:半卧位,血压200/120mmHg,心率126次/分,律不齐,双肺湿啰音,尿素氮24.2mmol/L,肌酐433μmol/L,血钾5.8mmol/L,诊断:高血压3级(极高危组),急性左心力衰竭,肾
女,48岁。慢性腹泻3年,大便每日3~4次,伴有少量黏液,多次粪便致病菌培养阴性。纤维结肠镜检查见直肠与降结肠充血、水肿,有少数散在分布的浅溃疡。拟诊为溃疡性结肠炎。首选的治疗方案为
关于房间隔缺损的血流动力学改变,以下哪项是错误的
A.耐热性B.滤过性C.被吸附性D.水溶性E.不耐酸碱性用重铬酸钾硫酸溶液破坏热原是利用热原的()。
根据我国宪法规定,下列关于私有财产权的表述哪一项是不正确的?
国有企业、集体企业及其他所有制形式的企业经重组改制为股份有限公司后,向中国证监会提出境外上市申请,按合理预期市盈率计算,筹资额不少于( )万美元。
清政府的“预备立宪”之所以是一场骗局,主要是因为()。
结合实际,谈谈电视现场报道的特点和报道要求。(中国传媒大学2011年研)
1842年,开放广州、厦门、福州、宁波、上海为通商口岸的条约是()。
最新回复
(
0
)