C语言,求1000以内个位数的立方是这个数本身,所有符合数的个数?

问题描述:

C语言,求1000以内个位数的立方是这个数本身,所有符合数的个数?
main()
{int i=1,n,a=0;
for(i=1;i<=1000;i++)
n=i%10;
if(n*n*n==i)
a+=1;
printf("%d\n",a);
}
为什么



1个回答 分类:综合 2014-11-07

问题解答:

我来补答
#include <stdio.h>
#include <math.h>
#define N 1000
void main()
{
    int i, j, k, n;
    printf("Parcissus numbers are:\n");

    for(n=100; n < N; n++)
    {
        i = n / 100;
        j = n / 10 - i * 10;
        k = n % 10;
        if(n == pow(i, 3) + pow(j, 3) + pow(k, 3))
        {
            printf("%5d\n", n);
        }
    }
}
你说的应该是这个吧.

打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位
数字立方和等于该数本身.例如:153 是一个“水仙花数”,因为 153 = 1 的三次
方+5 的三次方+3 的三次方.
-------------------------------------------------------------------------------------------------
请放心使用,有问题的话请追问
采纳后你将获得5财富值.
你的采纳将是我继续努力帮助他人的最强动力!
再问: 你没看清楚,只是“个位数”,不是“各位数”!我就是不明白为什么是0啊!
再答: #include<math.h>
#include<stdio.h>
int main()
{
    int i=1, n, a=0;
    for(i=1; i <= 1000; i++)
    {
        n=i%10;
        if(n*n*n==i)
            a+=1;
        printf("%d ",a);
    }
}控制的时候太多的话就显示不了了,所以显示的才都是5。把换行变成空格就能好一点
再问: 那到底是不是5?
再答: 我觉得这题出得就有问题。学习进步,加油少年
 
 
展开全文阅读
剩余:2000
下一页:填词谢谢