问题描述】输入两个正整数m和n(m<n<1000),输出m到n之间的所有水仙花数。水仙花数是指各位数字的立方和等于其自身的数。例如,153的各位数字的立方和是13+53+33 =153。 【输入形式】从键盘输入两个正整数m和n。 【输入输出样例1】(下划线部分表示输入) Input m: 100 Input n: 400 153 370 371 【样例说明】输入提示符后要加一个空格。其中冒号:后要加一个且只能一个空格。 每行输出一个水仙花数。英文字母区分大小写。必须严格按样例输入输出。
时间: 2023-04-02 19:02:40 浏览: 280
输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。
我可以回答这个问题。以下是代码实现:
#include <stdio.h>
int main() {
int m, n;
printf("Input m: ");
scanf("%d", &m);
printf("Input n: ");
scanf("%d", &n);
int i, j, k, num;
for (num = m; num <= n; num++) {
i = num / 100;
j = (num % 100) / 10;
k = num % 10;
if (num == i*i*i + j*j*j + k*k*k) {
printf("%d\n", num);
}
}
return ;
}
注意,以上代码仅供参考,可能存在错误或不足之处。
阅读全文