c语言的水仙花函数 c语言水仙花数调用函数

C程序水仙花数用函数写

你需要对返回的数加一个判断,你的函数中,如果相等你有返回值,如果不相等你没有返回值,但是你的主函数中还是对这个没有返回的值进行了输出

成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的伍家岗网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

#include stdio.h

int main()

{

int f(int m);

int n;

printf ("result is: ");

for (n = 100; n  1000; n++)

{

if (f(n)0)/////////////////////////

  printf ("%d ", f(n) );

}

printf ("\n");

return 0;

}

int f(int m)

{

int a,b,c;

a=m/100;

b=(m-a*100)/10;

c=m%10;

if(m==a*a*a+b*b*b+c*c*c)

return (m);

else return -1;////////////////////////

}

c语言水仙花数

#include stdio.h

int main()

{

int start, end, i = 0, a, b, c, size = 0;

while (scanf("%d %d", start, end) == 2)

{

for (i = start; i = end; i++)

{

a = i / 100;

b = i / 10 % 10;

c = i % 10;

//total = pow(c, 3) + pow(a, 3) + pow(b, 3);

if ((a*a*a + b*b*b + c*c*c) == i)  //满足水仙花条件

{

if (size == 0)   //size=0输出第一个水仙花数

{

printf("%d", i);

}

else     //size++输出第二。。第n个水仙花数

{

printf(" %d", i);

}

size++;   //个数++;

}

}

if (size == 0)   //范围内个数为0,则说明没有满足条件的

{

printf("no");

}

printf("\n");

}

return 0;

}

扩展资料:

需要注意的地方:

1.将n整除以100,得出n在百位上的数字hun。

2.将(n-i*100)整除以10(或将n先整除以10再对10求模n/10%10),得出n在十位上的数字ten。

3.将n对10取余,得出n在个位上的数字ind。

4.求得这三个数字的立方和是否与其本身相等,若相等,则该数为水仙花数。

参考资料:

百度百科-水仙花数

C语言 水仙花数

#include stdio.h

int fun(int a,int b)

{

int i,m,n,k,count=0;

if(ab)

{

for(i=b;i=a;i++)

{

m=i/100;

n=(i%100)/10;

k=i%10;

if(i==((m*m*m)+(n*n*n)+(k*k*k)))

{

count+=1;

printf("%d\n",i);

}

}

}

else if(ab)

{

for(i=a;i=b;i++)

{

m=i/100;

n=(i%100)/10;

k=i%10;

if(i==(m*m*m)+(n*n*n)+(k*k*k))

{

count+=1;

printf("%d\n",i);

}

}

}

else

{

m=a/100;

n=(a%100)/10;

k=a%10;

if(a==(m*m*m)+(n*n*n)+(k*k*k))

{

count=1;

printf("%d\n",a);

}

}

printf("%d\n",count);

return 0;

}

void main()

{

int a,b;

printf("请输入要查找的区间端点(三位数以内):");

scanf("%d%d",a,b);

fun(a,b);

}

不知道是不是你要的~~~

c语言怎么编写水仙花数?

方法:先弄懂什么是水仙花数::

水仙花数是指一个n(=3)位数字的数,它等于每个数字的n次幂之和。

3位水仙花数————先定义3个数其中一个为1--9;2个为0--9;(用for循环)

再用如果a定义为1--9那么用100*a来表示百位;如果b或者c定义是0--9那么用10*b或者10*c来表示十位;那么下面用c或者b来表示个位;

if(100*a+10*b+c==a*a*a+b*b+c) 如果满足这个条件那么:输出的printf("%d%d%d",a,b,c)就是3位数的水仙花数:

4位水仙花数方法同上:

刚写的:调试过了

#include stdio.h

int main(void)

{

int a,b,c,d;

system("cls");

for(a=1;a=9;a++)

for(b=0;b=9;b++)

for(c=0;c=9;c++)

if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)

printf("%d%d%d\n",a,b,c);

for(a=1;a=9;a++)

for(b=0;b=9;b++)

for(c=0;c=9;c++)

for(d=0;d=9;d++)

if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)

printf("%d%d%d%d\n",a,b,c,d);

getch();

}

或者这样:

#include stdio.h

int main(void)

{

int a,b,c,d;

system("cls");

for(a=1;a=9;a++)

for(b=0;b=9;b++)

for(c=0;c=9;c++)

{

if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)

printf("%d%d%d\n",a,b,c);

for(d=0;d=9;d++)

if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)

printf("%d%d%d%d\n",a,b,c,d);

}

getch();

}


网站标题:c语言的水仙花函数 c语言水仙花数调用函数
转载来源:http://cdiso.cn/article/doscshe.html

其他资讯