首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
admin
2009-02-24
90
问题
下列程序的功能是:在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全国计算机三级
相关试题推荐
广义表是线性表的推广,是由零个或多个单元素或______所组成的有限序列。
如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。下列不稳定的排序方法是
WWW客户与WWW服务器之间的信息传输使用的协议为()。
从WWW的资源和行为中抽取感兴趣的、有用的模式或隐含的信息的过程,称为【】挖掘。
下列哪一种设备不是输入设备?
关系模型有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。定义外键实现的是哪(些)类完整性?()
信息传输的安全应保证信息在网络传输的过程中不被泄露和不被攻击。下列哪些属于攻击方法?()①复制信息②剪裁信息③窃听信息
双链表的每个节点包括两个指针域。其中rlink指向节点的后继,llink指向节点的前驱。如果要在p所指节点后插入q所指的新节点,下面哪一个操作序列是正确的?
设有关系模块R(B,C,M,T,A,G),根据语义有如下函数依赖集:F=(B→C,(M,T)→B,(M,C)→T,(M,A)→T,(A,B)→G}。则关系模式R的候选码是______。
在数据文件in.dat中存放有200组数据,每组有3个数,每个数均是三位数。函数readDat()实现读取这200组数据并存放到结构体数组aa中。请编写函数jsSort(),其功能是:要求在200组数据中找出每组数据中的第一个数大于第二个数与第三个数之和.
随机试题
《先醒斋医学广笔记》治疗吐血的要诀是
对口腔颌面部外伤吸入性窒息的急救措施是
简述冠脉循环的生理特点。
2004年5月20日,淮海市甲区个体户胡某将200公斤鸡蛋运往郊外某县出售,途中被该市乙区公安分局所设的检查站(乙区公安分局派出机构)扣留检查站认定胡某的行为违反该市人民政府关于不准本市鸡蛋外销的规定,属于违法行为,因此作出以每公斤低于市场价2元的价格强制
案例A市特殊钢B公司是以民营资本为主的股份制企业,职工471人,生产规模140×104t/a。主要产品包括轴承钢、合金钢、模具钢、易切钢、不锈钢等100多个钢号的锻造用钢锭。2007年4月18日7时53分,该公司发生一起钢水包倾覆事故,造成38人死亡、6
证券公司违反《证券法》为客户买卖证券提供融资融券服务的,对其相关负责人的处罚包括()。Ⅰ.给予警告Ⅱ.撤销任职资格Ⅲ.撤销证券从业资格Ⅳ.处以3万元以上30万元以下罚款
在教学过程中,教师是教育信息的传授者,发挥的是信源和信息()的作用。
幼儿园的小朋友A看到小朋友B帮助老师整理玩具受到了老师的表扬,从此以后,小朋友A经常帮老师整理玩具,这种现象属于()
Everyoneaskedmewherehewas,butitwas______amysterytomeastothem.
Thefollowingtwoexcerptsareabouttheso-calledTigerMomparentingstyle:beingfiercelystrictmotherorfatherwhopushes
最新回复
(
0
)