黑马程序员技术交流社区

标题: 水仙花数只能打印一个为啥? [打印本页]

作者: 郑志龙~    时间: 2015-12-13 19:51
标题: 水仙花数只能打印一个为啥?
9. 编程将所有“水仙花数”打印出来,并打印其总个数。 “水仙花数”是一个 各个位立方之和等于该整数的三位数。*/
   
   
    int a;
    int b;
    int c;
    int sum = 0;
    int count = 0;
    for(int i = 100; i <= 999; i++){
        a = i/100;
        b = i/10%10;
        c = i%100;
        sum = a*a*a+b*b*b+c*c*c;
        if(sum==i){
            printf("水仙花数是:%d\n",i);
            count++;
        }else{
            continue;
        }
    }
    printf("\t");
    printf("总个数count:%d\n",count);
    return 0;
}
我写出来的代码,只能打印407,不能打印153,370和371是哪里出错了???
作者: 后知后觉4778    时间: 2015-12-13 20:39
你定义的b是代表十位,c代表个位,是吧  但是个位表示错误,应该是c = i%10
作者: cherrycool    时间: 2015-12-14 19:19
c = i%10;表示个位数,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2