问题描述
- 这段代码为什么没有输出
-
#include "stdio.h"
#include "math.h"
#include "time.h"int main()
{int n=100,a,b,c;
for(n=100; n<1000; n++)
{
a = n/100;
b = n/10%10;
c = n%10;if(n == a*a*a + b*b*b + c*c*c) printf("%d ",n); else return 0;
}
return 0;
}
解决方案
去掉2行。
#include "stdio.h"
#include "math.h"
#include "time.h"
int main()
{
int n=100,a,b,c;
for(n=100; n<1000; n++)
{
a = n/100;
b = n/10%10;
c = n%10;
if(n == a*a*a + b*b*b + c*c*c)
printf("%d
",n);
//else
// return 0;
}
return 0;
}
解决方案二:
那条else语句根本没必要,去掉else return 0;不然一开始没找到符合的数,就直接返回了
解决方案三:
为什么这段代码输出的是”Hello World”
解决方案四:
n == a*a*a + b*b*b + c*c*c 这个判断一直不通过
解决方案五:
n == a*a*a + b*b*b + c*c*c 这个判断一直不通过
解决方案六:
n == a*a*a + b*b*b + c*c*c 这个判断一直不通过
解决方案七:
水仙花数啊,算法没错
解决方案八:
你把else return 0去掉就行了
解决方案九:
for循环变量写错了,虽然我不懂c
解决方案十:
if(n == a*a*a + b*b*b + c*c*c)
printf("%d
",n);
else
return 0;
去掉这两句,
else
return 0;
只剩下if
时间: 2024-11-09 00:20:09