首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的功能是:在3位整数(100至999)小寻找符合下面条件的整数,并依次从小到大存入数组 b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int js Value(int bb[]实现此功能,满足该条件的整数的个数通
下列程序的功能是:在3位整数(100至999)小寻找符合下面条件的整数,并依次从小到大存入数组 b中:它既是完全平方数,又有两位数字相同,例如144,676等。 请编制函数int js Value(int bb[]实现此功能,满足该条件的整数的个数通
admin
2009-02-19
56
问题
下列程序的功能是:在3位整数(100至999)小寻找符合下面条件的整数,并依次从小到大存入数组 b中:它既是完全平方数,又有两位数字相同,例如144,676等。
请编制函数int js Value(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
);
fclese(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/2sSZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
Windows 98提供了多种系统工具便于用户管理和维护计算机系统,提高计算机的运行效率。其中,可用于查看各种系统资源利用状态和目前已加载的各类驱动程序(如IRQ资源的使用情况、已加载的MS-DOS驱动程序等)的系统工具是______。
下面是关于目前台式PC主板的叙述:Ⅰ.CPU通过主板上的CPU插座安装在主板上Ⅱ.存储器(内存条)通过主板上的存储器插槽安装在主板上Ⅲ.PC常用外设通过扩充卡或主板上的I/O接口与主板相连Ⅳ.声卡、网片、显长可以直接集成在主板上上述叙述中,正确的是(
由于Bootloader的实现依赖于CPU的体系结构,因此大多数Bootloader都分为stagel和stage2两大部分。依赖于CPU体系结构的代码,比如设备初始化代码等,通常都放在stagel中,且使用__________【73】语言来实现,以达到短
假设数码相机使用的存储卡容量是2GB,数据压缩比平均是4,那么它一次可连续拍摄1600万色(真彩色)的4096×3072分辨率的彩色相片大约多少张?()。
微电子技术特别是集成电路制造技术是嵌入式系统发展的重要基础,下面关于集成电路的叙述中错误的是()。
嵌入式系统中的CPU具有一些与通用计算机所使用的CPU不同的特点,下面不是其特点的是()。
若某嵌入式系统的应用程序基于μC/OS—Ⅱ操作系统平台来开发,那么,应用程序的main()函数中,需要用函数【79】来创建任务。创建任务前用函数【80】来初始化μC/OS—Ⅱ。
在μC/OS—Ⅱ操作系统中,当处于运行态的任务执行节拍延时函数OSTimeDly()后,该任务将转入【73】态。一旦预定的延时时间达到,该任务立即转入【74】态。
在μC/OS-Ⅱ操作系统下,处于运行态的任务调用系统函数OSTaskDel()后将转入()。
数据挖掘的方法有______。Ⅰ.关联规则挖掘Ⅱ.特征描述Ⅲ.分类分析Ⅳ.聚类分析
随机试题
若函数f(x)在x0处可导,且=().
______singerand______dancerisalsogoodatdrawing.
A.肝包虫病和肺包虫病B.窦道和虫囊肿C.胆管炎和胆结石D.干线型肝硬化E.橡皮肿华支睾吸虫
主要以舌下给药为主的血管扩张剂是
合同争议的调解分为行政调解和民间调解,调节机关收到调解书后作出是否受理决定,受理条件是()等。
非代理型(风险型)CM模式的合同一般采用成本加酬金合同中的()形式。
根据《国务院关于发展城市社区卫生服务的指导意见》的规定,社区卫生服务机构提供公共卫生服务和基本医疗服务。下列服务中不属于社区卫生服务的是()。
对下列二叉树进行前序遍历的结果为()。
WhichofthefollowingEnglishsoundsisNOTbilabial?
Youshouldn’t_______yourfather’sadvice.Anywayheismuchmoreexperiencedthanyouinthismatter.
最新回复
(
0
)