帮我用c语言写一段程序 要求如下所谓"水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153是个"水仙花数”,因为153=13+33+53。输入一个100 - 99之间的3位整数,判断其是否为“水仙花数”,若是则输出“Yes"否则输出“No”。 输入样例1: 153 输出样例1: Yes 输入样例2: 100 输出样例2: No 输入样例3: 1000 输出样例3: Error Input!
时间: 2023-05-21 14:04:34 浏览: 89
c代码-打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
5星 · 资源好评率100%
好的,我可以帮你写这个程序。
程序如下:
```
#include <stdio.h>
int main() {
int num;
scanf("%d", &num);
if(num < 100 || num > 999) {
printf("Error Input!\n");
return 0;
}
int sum = 0;
int temp = num;
while(temp > 0) {
int digit = temp % 10;
temp /= 10;
sum += digit * digit * digit;
}
if(sum == num) {
printf("Yes\n");
} else {
printf("No\n");
}
return 0;
}
```
你可以把这段代码复制到你的 C 语言编辑器中,并运行它。当你运行时,程序将提示你输入一个数字,如果这个数字是一个“水仙花数”,则输出“Yes”,否则输出“No”。如果输入的数字不在100-999范围内,则输出“Error Input!”。
希望这可以帮到你!
阅读全文