#include<stdio.h>
int main()
{
printf("输出水仙花数:\n");
int i, a, b, c;
for (i = 100; i <= 999; i++) //整数的取值范围
{
int a = i % 10;//个位数
int b = (i / 10) % 10;//十位数
int c = i / 100;//百位数
if (i == a * a * a + b * b * b + c * c * c) //各位上的立方和是否与原数n相等
printf("%d\t", i);
}
return 0;
}
计算逻辑应该没啥问题,可能就是变量重复申明了?
a = i % 10;//个位数
b = (i / 10) % 10;//十位数
c = i / 100;//百位数
前面已经定义了,后面的int删掉
第一行的printf要写到int i的下一行
可以运行啊,for循环里的a,b,c前面不用加Int了,for前面已经定义了啊