今日程序编写题目——编写玫瑰花数相关程序。
首先找到具体题目要求:
首先初步进行编写,设置变量表示出每位上数字,再表示其本身。要用到if结构进行判断,和循环结构依次判断每个数,我认为本实验难点在于——四位数上每位数的取出表达。
第一次运行的时候,程序停止工作。经检查,输入语句scanf()中忘记加入取地址符&,且最初编写时候用到变量过多,无需重复定义变量。还有注意“=”是赋值运算,“==”才是判断;注意循环条件——玫瑰花数肯定是个四位数,所以肯定从1000开始循环,直到9999。初步编写的是从1000到自己自定义的一个数。
经过修改,程序可以运行,但是没有输出结果。
迷茫了一下午,借鉴了别人的答案,虽然a、b、c、d算式不同,但修改算式结果后,扔无运行结果,最后发现在if选择结构的表达式中多了个“*”号。删去后运行结果无误。
而a、b、c、d中也可以用“%”取余来取到各个位数。
本次编程实验告诉我们,不能粗心!不能粗心!不能粗心!