qq_36173958
qq_36173958
2016-10-12 05:13
采纳率: 85.7%
浏览 926
已采纳

不会编写该道代码题,求助各路大神

这道题怎么编写代码,自己编写的代码不知道怎么改正图片图片

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • GGBomb2
    GGBomb2 2016-10-12 07:09
    已采纳

    其实你思路是对的,可是语法不能这样写。
    首先立方不是^,^是抑或运算符。
    第二case里要是常量。

    把立方改一下可以自己写一个_a*a*a_这样的函数,也可以#include这个头文件,调用里面的power函数,这个可以百度。
    然后没必要使用switch语句,使用普通的if(number==xxxxxxx)这样的语句就可以了。

    点赞 评论
  • feng15230805625
    MAC_Feng 2016-10-12 05:17

    c++?次方应该不是这样写,你百度上找找
    pow (n, (double)3)

    点赞 评论
  • caozhy
     #include <iostream>
    using namespace std;
    inline int a3(int i)
    {
        return i*i*i;
    }
    int main()
    {
        int a, b;
        cin >> a;
    
        b = a3(a/100) + a3(a/10%10)+a3(a%10);
        if(a == b) cout <<"Yes\n";
        else cout << "No\n";
    
        return 0;
    }
    
    点赞 评论
  • x1020915098

    我是用 c 写的,c++ 写法也差不多。其中 获取一个数的个、十、百、千、啥位的 其实可以用循环获取,不然如果一个数很大那岂不是就麻烦了 你说是吧?

     #include <stdio.h>
    
    int main(void)
    {
        int a, b, c;
    
        for(int i = 100; i < 10000; i++)
        {
            a = i % 10; // 获得个位
            b = i / 10 % 10; //获得十位
            c = i / 100;  //获得百位
    
            if(a*a*a + b*b*b + c*c*c == i)
                printf("%d 是水仙花数\n", i);
        }
    
        return 0;
    }
    
    点赞 评论

相关推荐