某知名国企单位校招一道笔试题,分值20分,30位应聘者只有5位做对。题目类似计算机二级水平等级考试,请输出100-999之间的所有水仙花数,这道题目对于学过计算机编程的人来说,难度并不大,什么是水仙花数,相信应该都学过,考查知识点主要是取模和取余,理解了这两个知识点再来做这道题目就好办了,如果忘了什么是水仙花数,我们再来回顾下。

知道了水仙花数和取模取余知识点后,我们就可以编写相对应的程序了。下面我们来用java编码实现,源码如图:不难吧,一个for循环,取模取余判断,一个if就可以完成了。输出结果:输出100-999之间的所有水仙花数:153370371407可以再次校验下,输出的值是不是符合,这道题目,基础知识扎实了,应该不难得分。

图片并不是很清晰,您能把代码复制下来给我吗?我帮你看看。水仙花数是指一个n位数(n≥3),每个位上的数字的n次幂之和等于它本身。(例如:1^3 5^3 3^3153)。所以可以依次通过模除求得每个位上的值,然后做n次幂后相加,再判断是否与本身相等,从而得到是否为水仙花数的结论。以求所有三位数水仙花数为例,代码如下,其它相似。

如果是四位则是四次方,以此类推。returnn*n*n;}intisNarcissistic(constintn){//计算是否为水仙花数。inthundredsn/100;//百位inttensn/10hundreds*10;//十位intonesn;//个位returncube(hundreds) cube(tens) cube(ones)n;//如果相等,则为水仙花数。

以下是一个可能的c语言代码示例:#include
#include