水仙花数代码编程c语言
时间: 2023-12-28 21:23:21 浏览: 87
以下是C语言实现水仙花数的代码:
```c
#include <stdio.h>
int main() {
int a, b, c, i;
printf("水仙花数有:\n");
for (i = 100; i <= 999; i++) {
a = i % 10; // 个位数
b = (i / 10) % 10; // 十位数
c = i / 100; // 百位数
if (i == a * a * a + b * b * b + c * c * c) {
printf("%d\t", i);
continue;
}
}
return 0;
}
```
该程序通过循环遍历100到999之间的所有整数,将每个整数的个位、十位、百位分别拆分,并求其立方和,判断是否等于该数本身,如果是则输出该数,否则继续循环。最终输出所有的水仙花数。
相关问题
水仙花数c语言代码编程
水仙花数,也称为 narcissistic number 或 pluperfect digital invariant,是指一个三位数(每位数字相加三次等于原数本身)。下面是一个简单的 C 语言程序,用于找出所有的水仙花数:
```c
#include <stdio.h>
int is_narcissistic(int num) {
int digits[3], sum = 0;
while (num > 0) {
digits[sum++] = num % 10;
num /= 10;
}
for (int i = 0; i < sum; i++) {
if (digits[i] != (digits[0] * digits[0] + digits[1] * digits[1] + digits[2] * digits[2])) {
return 0; // 如果任一位不满足条件则返回0
}
}
return 1; // 所有位都满足条件,返回1表示是水仙花数
}
int main() {
int start = 100, end = 999;
printf("水仙花数:\n");
for (int num = start; num <= end; num++) {
if (is_narcissistic(num)) {
printf("%d ", num);
}
}
return 0;
}
```
这个程序首先定义了一个`is_narcissistic`函数,用于检查一个数是否为水仙花数。主函数中遍历100到999之间的所有整数,如果某个数是水仙花数,就打印出来。
c语言水仙花数的编程
好的,C语言实现水仙花数的代码如下:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int num, sum, temp;
for (int i = 100; i <= 999; i++)
{
num = i;
sum = 0;
while (num > 0)
{
temp = num % 10;
sum += pow(temp, 3);
num /= 10;
}
if (sum == i)
{
printf("%d ", i);
}
}
return 0;
}
```
这段代码的思路是:从100到999遍历每个数,将每个数的每一位的立方和计算出来,如果等于这个数本身,则输出这个数。
阅读全文