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

程序test.c的功能是:选出1000至5 000范围内(包括1 000、5 000)符合下面条件的四位自然数。条件是:

题目

程序test.c的功能是:选出1000至5 000范围内(包括1 000、5 000)符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的整10倍。计算并输出这些四位自然数的个数cnt以及这些数的和sum。请编写函数countValue实现程序的要求。最后main函数调用函数 writeDAT把结果crlt和sum输出到out.dat文件中。

参考答案
正确答案:
【审题关键句】千位+百位等于十位十个位,且千位+百位等于个位.千位的10倍。计算并输出这些四位自然数的个数cnt以及这些数的和。
【解题思路】
①首先定义一个循环变量i,以及分别用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。
②通过for循环依次对数组中的每个四位数进行分解,循环初值为1000,终值为5000,每循环一次,循环变量i的值加1。每分解一个四位数,根据题目要求,判断其“千位十百位=十位+个位”的条件是否满足,同时判断“(千位+百位)=(个位-于位)*10”的条件是否满足,两个条件之间用运算符进行连接。当同时满足以上两个判断条件时,计数变量cnt的值加1,同时将该四位数累加到求和变量sum中,最终得到满足条件的四位自然数个数cnt及它们的和sum。
本题中cnt和sum变量在源程序中已经定义,在该子程序中就不需要再重新定义了。
【参考答案】