首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存有200个四位整型数,函数ReadData()负责将IN.DAT中的数读到数组inBuf[]中。请编写函数findValue(),其功能是:求出千位数上的值加十位数上的值等于百位数上的值加上个位数上的值,并且此四位数是偶数的数,并按照从
文件IN.DAT中存有200个四位整型数,函数ReadData()负责将IN.DAT中的数读到数组inBuf[]中。请编写函数findValue(),其功能是:求出千位数上的值加十位数上的值等于百位数上的值加上个位数上的值,并且此四位数是偶数的数,并按照从
admin
2021-04-30
47
问题
文件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://jikaoti.com/ti/USY7FFFM
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
某公司网络管理员使用DHCP服务器对公司内部主机的IP地址进行管理。在某DHCP客户机上执行“ipconfig/all”得到的部分信息如图1所示,在该客户机捕获的部分报文及相关分析如图2所示。请分析图中的信息,补全图2中的内容。
某公司网络中。DHCP服务器可动态分配IP地址范围为192.168.0.100.192.168.2.200,其中192.168.0.100保留给MAC地址是00-11-22-33-44-55的主机。网络中某客户机从该服务器获取IP地址的过程中,在客户机捕获
下列关于服务器技术的描述中,错误的是()。
下图是一台主机在命令行模式下执行某个命令时用sniffer捕获的数据包。请根据图中信息回答下列问题。(1)该主机上执行的命令完整内容是【16】。(2)主机59.67.148.5的功能是【17】,其提供服务的缺省端口是【18】。(3)图中①处
下列关于数据备份方法的描述中,错误的是()。
下列关于IEEE802.11标准的描述中,错误的是()。
网络管理员使用DHCP服务器对公司内部主机的IP地址进行管理。在DHCP客户机上执行“ipconfig/all”得到的部分信息如图(a)所示,该客户机在进行地址续约时捕获的其中1条报文及相关分析如图(b)所示。请分析图中的信息,补充图(b)中空白处的内容
下图是在一台主机上用sniffer捕获的数据包。请根据图中信息回答下列问题。(1)该主机使用的DNs服务器的域名是【1】,DNs服务器的IP地址是【2】。(2)如果上图显示的是在该主机上执行某个操作过程捕获的所有数据
Windows2003对已备份:丈件在备份后不做标记的备份方法是()。
下图是在一台主机上用sniffer捕获的数据包。请根据图中信息回答下列问题。(1)该主机使用的DNS服务器的域名是【1】,DNS服务器的IP地址是【2】。(2)如果上图显示的是在该主机上执行某个操作过程捕获的所有数据包,那么该操作是
随机试题
下列哪项不是肺癌的局部侵犯和压迫症状?()
输血主要的适应证是()
美国医学物理学家学会(AAPM)规定加速器机头旋转等中心误差
患者,男,50岁。因面色苍白、乏力、左上腹不适1年来诊。查体:肝肋下2cm,脾平脐。检测WBC4×109/L,Hb65g/L,PLT160×109/L;外周血见少量幼粒、幼红细胞;骨髓多次穿刺“干抽”。患者的诊断最可能是
患者,男性,60岁。因“右肢乏力伴言语不能2小时”入院。患者近一个月来反复出现右肢乏力、言语不能共3次,每次持续约10分钟后缓解。既往有高血压、糖尿病病史。入院查体:神清,右利手,BP180/105mmHg,血糖10mmol/L,双眼左凝,运动性失语,右鼻
某甲(15岁)与某乙(15岁)多次向其同学某丙兜售毒品,均遭某丙拒绝。某甲和某乙恼羞成怒,遂于一日将某丙强行绑住,给其注射了一针毒品。数日后,某丙主动请求某甲和某乙向其出售毒品,遭到二人的拒绝,同时,某甲和某乙看到某丙携带一名牌手机,心生夺财之意二人遂给某
简述学业成绩检查的方式及基本要求。
在简单的IS—LM模型中,我们假设投资只是实际利率的函数,但投资理论认为投资不仅仅被实际利率所决定,还可能会受到实际产出的影响,也就是实际产出的提高可能会使投资增加。假设在一封闭经济体中,请考虑以下两:种投资函数:其中,a和b都是大于0的系数。(201
Whatisthesmallestpossiblecommonmultipleoftwointegerswhicharebothgreaterthan50?
AsaprobingpsychologistheistheunrivalledmasteramongalllivingBritishandAmericannovelists.Neitherdoanyofhiscol
最新回复
(
0
)