首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
admin
2009-02-24
92
问题
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。
请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过所编制的函数返回。
最后调用函数wfiteDat()把结果输出到文件OUTl2.DAT中。
注意:部分源程序已给出。
请勿改动主函数main()和写函数wnteDat()的内容。
试题程序:
#include<stdio.h>
int jsValue(int bb[ ]
{
}
main ( )
{
int b[20], num;
num= jsValue(b);
writeDat (num, b);
}
writeDat(int num, int b[])
{
FILE *out;
int i;
out = fopen("OUT12.DAT", "w");
fprintf(out, "%d\n", num);
for(i = 0; i <num; i++)
fprintf(out, "%d\n", b
);
fclose (out);
}
选项
答案
int isValue(int bb[]) { int i,j,k=0; int hun,ten,data; for(i=100;i<=999;i++) { j=10; while(i*j<=i) { if(i==i*j) /*如果该数是完全平方数*/ } hun=i/100; /*求该数的百位数字*/ data=i-hun*100; /*得到后两位数*/ ten=data110; /*求该数的十位数字*/ data=data-ten*10; /*求该数的个位数字*/ if(hun==ten || hun==data || ten==data)/*有两位数字相同*/ {bb[k]=i; /*则把该数存入数组bb中*/ k++;} /*统计满足条件的数的个数*/ } j++; } } return k; /*返回满足该条件的整数的个数*/ }
解析
解答本题,首先应该考虑用一个for循环来依次取得100到999之间的各个数,并对当前所取得的数进行两个条件判断:一是判断该数是否是完全平方数:二是判断该数是否有两位数字相同。如果以上两个条件同时满足,则把该数存放到b数组中,尽管题目要求所存的数必须从小到大,但我们取数的过程本身就是从小到大取得,因此,排序工作是没有必要做的,按照取数的顺序,把满足条件的数值存放到数组b中就可以了。判断某个数是否是完全平方数的方法是看该数是否可以拆成完全相同的两个数的积(当然要拆成的两个数一定是两位数),因此,我们再利用一个循环用10以上的两位数逐个去拆被判断的数,如果被判断的数恰好可以被完全拆分,则第一个条件成立,接着就开始依次取得被判断的数的百位、十位、个位上的数字值,看是否有两位数字相同。取得每一位上的数字值可以用“hun=i/100;data=i-hun*100: ten=data/10;data=data-ten*10:”几条语句来实现,hun变量得到的是百位上的数字,ten变量得到的是十位上的数字, data变量得到的是个位上的数字。
转载请注明原文地址:https://kaotiyun.com/show/qRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
下面列出的条目中,哪一条是数据仓库的基本特征?Ⅰ.数据仓库是面向主题的Ⅱ.数据仓库的数据是集成的Ⅲ.数据仓库的数据是相对稳定的Ⅳ.数据仓库的数据是反映历史变化的
根据某些条件对一个关系作水平分解,选择符合条件的元组组成一个新的关系,这样的操作称为
在DBMS中建立DBMS的系统缓冲区,系统工作区,打开数据字典的工作在【】程序模块中完成。
WWW客户与WWW服务器之间的信息传输使用的协议为()。
在Internet中计算机之间直接利用IP地址进行寻址,因而需要将用户提供的主机名转换成IP地址,这个过程称为域名解析。Internet域名解析有【】和反复解析两种方式。
在数据库逻辑设计中,当把E-R图转换为关系模式时,下面的做法哪一个是不正确的?
关系模型有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。定义外键实现的是哪(些)类完整性?()
把关系看做二维表,则下列说法中错误的是
广域网覆盖的地理范围从几十公里到几千公里,其通信子网一般采用______技术。
利用程序模拟脱机输入输出时外围控制机的功能,在主机的直接控制下实现脱机的输入输出功能,此时外围操作与CPU对数据的处理同时进行,这种技术称为()。
随机试题
资产评估报告中说明被评估资产的拥有者或权利人名称是为了【】
胃十二指肠溃疡穿孔最重要的诊断依据是
渗出液葡萄糖降低最明显的感染性疾病是
A.患者上呼吸道感染两天后出现镜下血尿B.患者上呼吸道感染一周后出现镜下血尿C.患者持续镜下血尿,并有阳性家族史D.患者出现镜下血尿,并伴有关节疼痛和皮肤淤点E.以上都不对与急性肾小球肾炎有关的临床表现
一般需经3~4周培养才能见到有细菌生长的细菌是
某地对伤寒、副伤寒甲、乙三联菌苗的效果进行评价,观察资料统计如下表(地区人口稳定)其效果指数和保护率依次为()
若货运代理企业同时经营国际海上货物运输代理与国际航空货物运输代理业务,则其最低注册资金应达到800万元人民币。()
下列关于权益法核算的长期股权投资的表述中,正确的有()。
准时生产方式的动态运行机制是看板管理和强制改善,包括看板管理的功能和看板的运行原理,以下选项中,属于看板管理功能的是()。
旅游意外保险的投保人是()。
最新回复
(
0
)