首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN.dat中存有200个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此
已知数据文件IN.dat中存有200个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此
admin
2010-09-05
60
问题
已知数据文件IN.dat中存有200个四位数,并已调用读函数Rdata()把这些数存入数组a中,请编写函数NumCal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数count并把这些四位数按从小到大的顺序存入数组b中。最后调用写函数Wdata(),把结果count以及数组b中符合条件的四位数输出到OUT.dat文件中。
注意:部分源程序已经给出。程序中已定义数组a[200] b[200],已定义变量count。请勿改动数据文件IN.dat中的任何数据及主函数main()、读函数Rdata()和写函数Wdata()的内容。
#include <stdio.h>
#define MAX 200
int a[MAX], b[MAX], count = 0;
void NumCal ()
{
}
void Rdata ()
{ int i;
FILE *fp;
fp = fopen("IN. dat", "r");
for (i=0; i<MAX; i++)
fscanf(fp, "%d,", &a
);
fclose (fp);
}
void Wdata ()
{ FILE *fp;
int i;
fp = fopen("OUT. dat", "w");
fprintf(fp, "%d\n", count);
for (i=0; i<count; i++)
fprintf(fp, "%d\n", b
);
fclose (fp);
}
void main ()
{ int i;
Rdata ();
NumCal ();
printf("满足条件的数=%d\n", count);
for (i=0; i<count; i++)
printf("%d ", b
);
printf ("\n");
Wdata ();
}
选项
答案
void NumCal() { int i, thou, hun, ten, data, j; for (i=0; i<MAX; i++) { thou = a[i]/1000; hun = a[i]%1000/100; ten = a[i]%100/10; data = a[i]%10; if ((thou +data == hun +ten) && a[i]%2==1) { b[count] = a[i]; count++; } } for (i=0; i<count-1; i++) for (j=i+1; j<count; j++) if (b[i] >b[j]) { data = b[i]; b[i] = b[j]; b[j] = data; } } [解题思路] 对于每一个四位数,用这个四位数除以1000,可得到这个四位数千位上的数字输给变量thou;这个四位数对1000求余数然后再除以100,可得到这个四位数百位上的数字输给变量hun;这个四位数对100求余数然后再除以10,可得到这个四位数十位上的数字输给变量ten;这个四位数对10求余数,可得到这个四位数个位上的数字输给变量data。 然后判断表达式(thou+ data==hun+ ten) &&a[i]%2=1是否成立,如果成立,则把这个数赋给数组b,同时计数变量count加1。最后对数组b中元素进行从小到大的排序。
解析
转载请注明原文地址:https://kaotiyun.com/show/wuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
用P、V操作管理临界区时,把信号量mutex的初值设定为1。当mutex的等待队列中有k(k>1)个进程时,信号量的值为
采用扩展关系数据模型的方法建立的数据库系统称为()。
下列叙述中,哪些是PowerBuilder的特性?______。Ⅰ.将应用作为对象Ⅱ.支持与多种数据库连接Ⅲ.支持动态数据交换Ⅳ.支持Web快速开发
数据结构包括3个方面的内容是数据的______、数据的逻辑结构、数据的运算。
以下关于链式存储结构的叙述中哪一条是错误的?______。
设有下三角矩阵A[0..10,0..10],按行优先顺序存放其非零元素,每个非零元素占两个字节,存放的基地址为100,则元素A[5,5]的存放地址为______。
数据库管理系统中的安全控制模块属于______。
下述关于数据库系统的正确叙述是______。
设树T的度为4,其中度为1、2、3和4的结点个数分别是4、2、1和1,则T中叶子结点的个数是【】。
SQL语言支持数据库三级模式结构;在SQL中,外模式对应于视图和部分基本表,模式对应于基本表全体,内模式对应于【】。
随机试题
用万用表1K?档测电容时,若指针满偏,说明()。
下列各项中属于定性决策方法的有()。
A.河豚毒B.箭毒C.阿托品D.四乙基铵E.新斯的明可造成ACh在接头间隙蓄积的是
关于健康传播的特点正确的是
A.1年B.2年C.3年D.5年药品广告批准文号有效期为()
某天一村民向公安机关报案,说在村头河边发现了一具女尸。公安机关很快获得了线索,认为甲嫌疑很大。在本案中,如果对甲适用逮捕,应当具备什么条件?()
甲产品为长江公司生产的主要产品,2015年与单位甲产品所耗直接材料成本有关的资料如下表所示:材料消耗量变动对2015年单位产品成本变动的影响为()元。
2011年4月,甲公司经过必要的内部批准程序,决定公开发行公司债券,并向国务院授权的部门报送有关文件,报送文件中涉及有关公开发行公司债券并上市的方案要点如下:(1)截止到2010年12月31日,甲公司经过审计后的财务会计资料显示:注册资本为500
房地产部门规章包括()等。
编制村镇规划,一般分为()两个阶段。
最新回复
(
0
)