使用函数输出水仙花数:输入 2 个正整数 m 和 n(1<=m,n<=1000),输出 m 到 n 之间 的所有满足各位数字的立方和等于其自身的数。要求定义并调用函数 is(number)判断 number 的各位数字之立方和是否等于其自身,若相等则返回 1,否则返回 0。试编写相应程序。
2条回答 默认 最新
谢玄. 2022-11-12 03:24关注直接给你程序,你看着程序就知道了
#include<stdio.h> bool is( int number ); int main() { int m, n; scanf("%d%d", &m, &n); while ( m <= n ) { if ( is(m) ) { printf("%d ", m); } m++; } } bool is(int number) { int ge = 0, si = 0, bai = 0, qian = 0 ; if ( number >= 1000 ) { qian = (number / 1000) % 10; } if ( number >= 100) { si = (number / 100) % 10; } if ( number >= 10 ) { bai = (number / 10) % 10; } if ( number >= 1 ) { ge = number % 10; } //printf("%d,%d,%d,%d,%d\n",number,qian ,bai,si ,ge ); if ( number == qian * qian * qian + bai * bai * bai + si * si * si + ge * ge * ge ) { return true; } else { return false; } }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用