解题思路:
水仙花数是3位整数,所以判断区间是包含100~999之间
注意事项:
水仙花数是各个位数的三次方之和等于它本身
参考代码:
#include <stdio.h> #include <math.h> int judge_narcissistic(int num[]) { int a, b, c; for (int i = 100, j = 0; i < 1000; i++) { a = i / 100; b = i / 10 % 10; c = i % 10; if (i == pow(a, 3) + pow(b, 3) + pow(c, 3)) num[j++] = i; // 当满足水仙花数时将值存储在数组num中,从num[0]开始存储 } return 0; } int main() { int num[10] = {0}; // 初始化数组,用于接收水仙花数 judge_narcissistic(num); for (int i = 0; num[i] != 0; i++) // 输出水仙花数,数组中为0的元素不输出 { printf("%d\n", num[i]); } return 0; }
0.0分
0 人评分
【回文数(二)】 (C++代码)浏览:928 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:481 |
字符串比较 (C语言代码)答案错误????浏览:629 |
兰顿蚂蚁 (C++代码)浏览:1152 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:362 |
简单的for循环浏览:1478 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:586 |
关于C语言变量位置的问题浏览:291 |
简单的a+b (C语言代码)浏览:1018 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1025 |