首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中;它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中;它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
admin
2009-02-15
78
问题
下列程序的功能是:在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全国计算机三级
相关试题推荐
下列选项中,哪一种不屈于划分VLAN的方法()。
软件执行交换结构的交换机先将数据帧由()转换成(),并将代码暂存在交换机的快速缓存RAM中
下列选项中,使用4对3类非屏蔽双绞线,3对用于传送数据,1对用于检测冲突信号的是()。
下列选项中,不属于增强型综合布线系统配置的是()。
综合布线采用高品质的材料和组合压接的方式构建传输通道。所有线槽和相关连接均通过ISO认证,每条通道都要采用专用仪器测试链路阻抗及衰减率,这是确保综合布线系统的()。
100BASE-TX使用两对双绞线,一对用于发送,一对用于接收数据,最大网段长度为______米。
下列选项中,属于管理宽带城域网的基本方案是()。
RIPv2路由信息协议是一种基于哪一协议的应用层协议()
按网络应用规模分类,网络服务器可分为()。①基础级服务器②工作组级服务器③企业级服务器④部门级服务器⑤高端服务器⑥中端服务器⑦低端服务器
如图1-6所示为在一台主机上用Sniffer捕获的数据包。请根据图1-6中的信息回答下列问题。(1)该主机使用的DNS服务器的域名是(16),DNS服务器的IP地址是(17)。(2)如果图1-6显示的是在该主机上执行某个操作过程中
随机试题
胆汁中参与脂肪消化和吸收的主要成分是()
中成药的一般贮存方法是
企业对自有固定资产所发生的改良支出应当作为资本性支出,增加固定资产的原值;经营性租入固定资产所发生的改良支出作为递延资产处理。
下列各项在个人所得中,应缴纳个人所得税的是()。
某企业年终汇算清缴企业所得税,在对各项收支予以调整后,得出全年应纳税所得额为1500万元,并按此数额计算缴纳企业所得税495万元,但当税务机关核查时,发现该企业有一笔通过希望工程基金会捐赠的款项100万元已在营业外支出中列支,未作调整。要求:根据
19世纪末,美国西部有个坏孩子,他把石头扔向邻居的窗户,把死兔装进桶里放到学校的火炉里烧烤,弄得到处臭气熏天。9岁那年,他的父亲娶了继母,父亲对继母说:“你要注意这孩子,他在我们这里最坏,让我防不胜防,头痛死了。”继母好奇地走近孩子,对孩子进行了全面了解后
函数f(x)=Asin(ωx+φ),(A,ω,φ是常数,A>0,ω>0)的部分图象如图所示,则f(0)的值是__________.
Whatdoesthewomanmean?
_______joiningthiscompanyinJanuary2004,Magnoliahasalreadyaccomplishedmanydemandingjobssuccessfully.
中国传统医学有着数千年的悠久历史,它承载着中国古代人民同各种疾病作斗争的宝贵经验和理论知识。相传神农氏是中医的创始人,他曾亲尝百草,并从中选取了数百种作为药物。约2500年前,随着《黄帝内经》(InnerCanonofHuangdi)的问世,中医的
最新回复
(
0
)