功能:调用函数 fun判断一个三位数是否“水仙花数”。在main函数 中从键说明:所谓“水仙花数“是指一3位数,其各位数字立方和等于该数本身。T例如:153是一个水仙花数,因为 153= 1+ 125+27. ---------------------------*
时间: 2023-09-18 16:10:36 浏览: 152
以下是C++代码实现:
```c++
#include <iostream>
using namespace std;
bool fun(int n) {
int sum = 0, temp = n;
while (temp > 0) {
int digit = temp % 10;
sum += digit * digit * digit;
temp /= 10;
}
return sum == n;
}
int main() {
int num;
cout << "请输入一个三位数:";
cin >> num;
if (fun(num)) {
cout << num << "是水仙花数" << endl;
} else {
cout << num << "不是水仙花数" << endl;
}
return 0;
}
```
代码中的 `fun` 函数用于判断一个三位数是否为水仙花数,主要思路是将该数的每一位数的立方相加,最后与原数进行比较。在 `main` 函数中,先读入一个三位数,然后调用 `fun` 函数进行判断并输出结果。
相关问题
功能:调用函数fun判断-个三位数是否“水仙花数“。 在main函数中从键盘输入一一个三位数,并输出判断结果。请编写fur函数。 说明:所谓“水仙花数”是指一-3位数, 其各位数字立方和 等于该数本身。 例如: 153是一个水仙花数,因为153=1+125+27。C语言
以下是代码实现:
```c
#include <stdio.h>
int fun(int n) {
int sum = 0;
int temp = n;
while (temp > 0) {
int digit = temp % 10;
sum += digit * digit * digit;
temp /= 10;
}
return sum == n;
}
int main() {
int n;
printf("请输入一个三位数:");
scanf("%d", &n);
if (fun(n)) {
printf("%d是水仙花数\n", n);
} else {
printf("%d不是水仙花数\n", n);
}
return 0;
}
```
首先定义了一个`fun`函数,该函数的参数是一个整数`n`,返回值是一个布尔值,表示`n`是否为水仙花数。在函数中,首先定义了一个变量`sum`用于保存各位数字的立方和,然后使用一个`while`循环,将`n`的各位数字取出来,计算它们的立方和,最后返回`sum`是否等于`n`即可。
在`main`函数中,首先从键盘输入一个三位数`n`,然后调用`fun`函数判断`n`是否是水仙花数,根据返回值输出相应的结果即可。
c语言:调用函数fun判断一个三位数是否“水仙花数”。在main函数中从键盘输入一个三位数,并输出判断结果。所谓"水仙花数"是指一个3位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153等于1的立方加上5的立方加上3的立方之和。
下面是实现该功能的C语言代码:
```c
#include <stdio.h>
int fun(int n);
int main()
{
int n;
printf("请输入一个三位数:");
scanf("%d", &n);
if(fun(n))
printf("%d是水仙花数\n", n);
else
printf("%d不是水仙花数\n", n);
return 0;
}
int fun(int n)
{
int a, b, c;
a = n / 100; // 获取百位数字
b = (n / 10) % 10; // 获取十位数字
c = n % 10; // 获取个位数字
if(n == a*a*a + b*b*b + c*c*c) // 判断是否为水仙花数
return 1;
else
return 0;
}
```
运行结果示例:
```
请输入一个三位数:153
153是水仙花数
```
阅读全文