从屏幕上输出所有的“水仙花数”,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如153就是一个,要求:定义一个函数来判断一个数是否是“水仙花数”,如果是则返回1,不是则返回0
#include<stdio.h>
#include<math.h>
void main()
{
int m;
int res(int n);
for(m=100;m<1000;m++)
if(res(m)==1)
printf("%d\n",m)
}
int res(int n)
{
int i,j,k;
i=n/100;
j=(n/10)%100;
k=n%100;
if(n=pow(i,3)+pow(j,3)+pow(k,3))
return1;
else
return0;
}
为啥输不出呢?
#include<stdio.h>
#include<math.h>
int res(int n)
{
int i,j,k;
i=n/100;
j=(n%100)/10;
k=n%10;
if(n==pow(i,3)+pow(j,3)+pow(k,3))
return 1;
else
return 0;
}
int main()
{
int m;
int res(int n);
for(m=100;m<1000;m++)
{
if(res(m)==1)
printf("%d\n",m);
}
return 0;
}代码已修改,自己吧。另外严重提醒你的时候,main函数别用void修饰。某些书籍上void修饰的是错误的
main函数前用void,下面不用加return 0;语句