c语言 编程求三位数的水仙花数?

c语言 编程求三位数的水仙花数?,第1张

以下是一个可能的c语言代码示例:

#include <stdioh>int main(){ int i; //定义一个循环变量

int a,b,c; //定义百、十、个位变量

for(i=100;i<=999;i++) //循环从100到999

{

a=i/100; //取百位

b=i%10/10; //取十位

c=i%10; //取个位

if(i==aaa+bbb+ccc) //判断是否为水仙花

{ printf("%d\n",i); //输出水仙花数

}

} return 0;

}

#include <stdioh>

int main(void) {

    int a, b, c;

    for (a = 1; a < 10; a++)

        for (b = 0; b < 10; b++)

            for (c = 0; c < 10; c++)

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

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

    return 0;

}

#include <stdioh>

void main()

{

int a,b,c,n;

printf("请输入一个三位数: ");

scanf("%d",&n);

a=n%10;

b=(n%100-n%10)/10;

c=(n-n%100)/100;

if(aaa+bbb+ccc==n)

printf("%d是水仙花数。",n);

else printf("%d不是水仙花数。",n);

}

运行示例:

源程序如下:

#include<stdioh>

int fun(int n)

{ int i,j,k,m;

m=n;

k=0;

for(i=1;i<4;i++)

{ j=m%10;

m=(m-j)/10;

k=k+jjj;

}

if(k==n)

return 1;

else

return(0);

}

void main()

{ int i;

for(i=100;i<1000;i++)

if(fun(i)==1)

printf("%d is ok!\n" ,i);

}

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

提示错误可以调试为:

#include <stdioh>

int main()

{

int a, b, c, d;

for (a = 100; a < 1000; a++)

{

b = a / 100;

c = a % 100 / 10;

d = a % 100 % 10;

if (bbb + ccc + ddd == a)

printf("水仙花数为%d\n", a);

}

}

如图为运行结果

原先的错误在于#include后没有加<stdioh>,而且for循环语句也有错误。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/12181183.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存