C语言水仙花续集2
一、链接上文:
上次水仙花问题是用的for循环写的,这次用while写
二、题目回顾:
在数中,有一类3位数称为水仙花数,其特点是,每个位上的数字的三次方相加之和,等于该数本身,例如,153=1³+5³+3³。请输入一个程序,在控制台输入显示所有的水仙花数。
三、代码展示:
四、运行结果:
五、注意事项:
第一
依据题目可知,是三位数的水仙花,记得在最开始要给num赋初始值(这里而言100是最小的三位数,再合适不过了)
如果不赋初值,则会给num一个随机的一个值
第二
这里的这行代码:printf("所有水仙花数为:\n");在while之前 与c专栏和java专栏写的反转数的do...while前的语句是一样的
第三
厘清逻辑,首先判断是不是三位数,再判断是不是水仙花
第四
记得是一定要打印出来,不然运行出来没有结果的
第五
num的值记得要自增,即更新num的值,否则代码会有问题
六、题目感受:
个人感觉for循环更顺手一些,for循环结构记住了,一般不会忘记num++,数据的自增,同时,写代码的时候逻辑很重要,最好在头脑清晰的时候写代码会事半功倍。