首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
下列程序的功能是:在3位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int jsValue(int bb[])实现此功能,满足该条件的整数的个数通过
admin
2009-02-24
98
问题
下列程序的功能是:在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全国计算机三级
相关试题推荐
如果多个事物在某个调度下执行结果与这些事物在某个串行调度下的执行结果相同,称这个调度为【】调度。
下列______不是由于关系模式设计不当所引起的问题。
若关系模式R∈1NF,且每一个非主属性完全函数依赖于码,则R∈
有一个网络数据库应用系统,其中一台计算机A存有DBMS软件、所有用户数据和应用程序,其余各节点作为终端通过通信线路向A发出数据库应用请求,这种方式属于
UNIFACE应用开发分成三个步骤,其中对业务规则和处理流程进一步分析、明确、细化的过程是______。
文件的逻辑块号到物理块号的变换是由下列哪一项决定的?
Oracle针对Internet/Intranet的产品是
在数据库技术中,网状数据模型的典型代表是【】系统,这是20世纪70年代数据库语言研究会下属的数据库任务组提出的一个系统方案。
假定我们要建立一个学术论文数据库,存储如下信息:*学术期刊有期刊编号、期刊名、发行单位;*作者有作者编号、作者姓名、电子邮件;*论文有论文编号、论文标题、摘要、正文;*每篇论文只被一个期刊录用,每个期刊可以录用多篇论文;*每篇
Elgamal公钥体制在原理上基于下面哪个数学基础________。
随机试题
男性,18岁。劳累后心悸、气短。查体发现胸骨左缘Ⅲ/6收缩期喷射样杂音,伴震颤,肺动脉第2音减弱。ECG提示电轴右偏,右心室肥厚;X线摄片示肺血减少,右心增大。其初步诊断可能为
前牙区固定桥修复后会产生
手三阴的循行走向规律是( )足三阳经的循行走向规律是( )
在产品质量成本体系中,次品、返工和设备调整的成本被划归为
细胞膜在细胞生命活动中有许多重要功能,下列生物功能与细胞膜无关的是()。
读某国不同时间的人口变化图,回答下列问题。丁时期人口增长模式属于()。
(2017国家77)下图中的立体图形①是由立体图形②、③和④组合而成,下列哪一项不能填入问号处?
原型项目管理中,估计过程的内容是
结构化程序设计的3种基本结构分别是顺序、选择和______。
属性窗口的显示方式分为两种,即按______顺序和按分类顺序,分别通过单击相应的按钮来实现。
最新回复
(
0
)