早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->计算机三级 -->

程序test.c的功能是:在三位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b[]

题目

程序test.c的功能是:在三位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b[]中。条件如下:某数既是完全平方数,又有两位数字相同,例如144、676等。 请考生编制函数intjsValue(int bb[])实现此功能,满足该条件的整数的个数通过所编制的函数返回。 最后调用函数writeDat把结果输出到文件out.dat中。 注意:部分源程序存放在test.c文件中。 请勿改动主函数main和写函数writeDat的内容。

参考答案
正确答案:
【审题关键句】完全平方根,有两个相同数。
【解题思路】
①首先,本题要定义多个变量,包括一个循环变量k;一个用来保存k平方的变量n;一个数组下标变量cnt并赋初值为0;存放三位数分解之后各位数的变量a(百位)、b(十位)、c(个位)。
②通过for循环筛选满足条件的数。大致分4步设定筛选条件,第一步设定判断条件,循环变量的初值从l0开始,因为从l0开始的数,其平方数最少也是3位数,循环的终止条件此处先留空,在后面的循环体中进行设定,每执行一次循环,变量k的值加1;第二步指定变量n的值等于k的平方,判断变量n的值如果小于l00则进入下一次循环,如果n值大于999则退出整个for循环,这表示只有n值在100和999(包含)之间才执行条件表达式后面的语句;第3步是分解满足条件的三位数,得到每位数上的数字,然后通过if条件语句判断三个数中是否有两个数相等,即可以通过表达式“(a-b)*(a-c)*(b-c)=0”进行判断;第四步将满足条件的数输出,并把满足条件的三位数n赋给数组元素bb[cnt],同时数组下标变量cnt加1。
③返回满足条件的三位数的个数cnt。
【参考答案】

第3类素数的整除