首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中;它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中;它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
admin
2009-02-15
79
问题
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中;它既是完全平方数,又有两位数字相同,例如144,676等。
请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过所编制的函数返回。
最后调用函数writeDat()把结果输出到文件OUT12.DAT中。
注意:部分源程序已给出。
请勿改动主函数main()和写函数writeDat()的内容。
试题程序:
#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 jsValue(int bb[ ]) { int i,j,k=0; int hun, ten, data; for (i=100; i<=999; i++) { j=10; while (j * j<=i) { if (i==j*j) / * 如果该数是完全平方数* / { hun=i/100; /*求该数的百位数字*/ data=i-hun * 100; /*得到的两位数*/ ten=data/10; /*求该数的十位数字* / 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/xPfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
蓝牙系统的跳频速率是()。
下列选项中,哪些选项属于对交换机端口的基本配置任务的描述()。①配置交换机的端口描述信息②配置交换机端口的通信方式③配置交换机端口的传输速率④配置交换机端口的上载/下载速率⑤设置交换机端口的关闭与开
IEEE802局域网参考模型只对应OSI参考模型的数据链路层与()。
下列选项中,关于CableModem的类型叙述不正确的是()。
A类地址中专用的IP地址块10.0.0.0~10.255.255.255,则用户分配的子网号与主机号的总长度为()。
根据IP地址分配规则,以下IP地址在内网中应当避免使用的地址段是()。
下列选项中,有关协议标记交换MPLS的叙述正确的是()。
18.路由器的DHCP允许配置DHCP数据库代理。可以使用“______”命令取消地址冲突日志的记录功能。
判断一段程序代码是否为计算机病毒的依据是()。
在E-mail服务器管理配置的快速设置向导中,需要输入的新建用户信息包括用户名、域名及______。
随机试题
关于以金融不良资产处置为目的价值分析业务,下列说法错误的是()。
一名55岁男性病人,近1个月来上腹部疼痛,低热,体重减轻。2周前尿色变深,继而巩膜、皮肤进行性黄染。查体:肝肋下4cm,边缘钝,右上腹可及6cm×4cm大小的梨形肿块。为确定右上腹肿块是否是肿大的胆囊,最适合的检查方法是
A、心得安B、琉基络合物C、阿托品D、水E、50%葡萄糖乙醇中毒严重者,需静注()。
组织的绩效考核是评价主体利用其所掌握的信息对评价客体运用一定的方法、程序、指标等进行分析,进而对评价客体的行为、表现作出某种判断的过程。其目的在于通过考核对组织和个人的行为产生导向和牵引作用,从而保持和修正组织和个人的活动以保证组织战略目标的实现。组织中的
下列不属于三大安魂曲的是()。
我们必须坚持和完善民族区域自治制度。这是因为这一制度()。
(2014年真题)甲公司与乙公司签订一设备买卖合同,约定甲公司保留设备所有权直至乙公司付清货款为止。乙公司未付清货款便将该设备转卖给丙公司,但未交货。后乙公司又将该设备以市价转让并交付给不知情的丁公司。本案中的设备所有权应属于()。
ErgänzenSieModalverben.Leo______dasEssenimChina-Restaurant.
Readthefollowingpassages,eightsentenceshavebeenremovedfromthearticle.ChoosefromthesentencesA-Htheonewhich
Itisacommonplaceamongmoraliststhatyoucannotgethappinessbypursuingit.Thisisonlytrueifyoupursueit【62】.Gamble
最新回复
(
0
)