大学计算机2级考试的题目

来源:百度知道 编辑:UC知道 时间:2024/05/22 16:43:42
题目是:
编写一个自定义函数,判断一个三位数是否为水仙花数,返回逻辑值。在主程序中输入一个三位数,输出其是否水仙花数得信息。
提示:如果一个三位正整数等于它各位数字立方的和,则其位水仙花数。如:153=1^3+5^3+3^3.
我也不知道哪个答案好,不好意思,只能投票

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
三位的水仙花数共有4个:153,370,371,407;
四位的水仙花数共有3个:1634,8208,9474;
五位的水仙花数共有3个:54748,92727,93084;
六位的水仙花数只有1个:548834;
七位的水仙花数共有4个:1741725,4210818,9800817,9926315

◆C 语言的"水仙花数"实现代码:
#include <stdio.h>
int main(void)
{
int a,b,c;
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);
return 0;
}

程序源代码:
main()
{
int i,j,k,n;
printf("'water flower'number is:");
for(n=100;n<1000;n++)
{
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
{
printf("%-5d",n);
}
}
printf("\n");
}
其实程序可以有许多种,答案并不是唯一的,
我给你提供两种你参