「已注销」 2021-10-15 15:13 采纳率: 75%
浏览 203
已结题

请问这题该怎么做?不能用数组和函数。

img

  • 写回答

3条回答 默认 最新

  • 三雷科技 C/C++领域新星创作者 2021-10-19 13:58
    关注
    #include <iostream>
    using namespace  std;
    
    int main()
    {
        int c= 0;
        for (int i1 = 1; i1<= 9 ;i1++) {
            for (int j1 = 1; j1<=9 ;j1++) {
                for (int k1 = 1; k1<=9 ;k1++) {
                    if(i1 == j1 || i1 == k1 || k1 == j1) continue;
                    for (int i2 = 1; i2<=9 ;i2++) {
                        for (int j2 = 1; j2<=9 ;j2++) {
                            for (int k2 = 1; k2<=9 ;k2++) {
                                if(i2 == j2 || i2 == k2 || k2 == j2) continue;
                                if(i1 == i2 || i1 == j2 || i1 == k2)  continue;
                                if(j1 == i2 || j1 == j2 || j1 == k2)  continue;
                                if(k1 == i2 || k1 == j2 || k1 == k2)  continue;
                                for (int i3 = 1; i3<=9 ;i3++) {
                                    for (int j3 = 1; j3<=9 ;j3++) {
                                        for (int k3 = 1; k3<=9 ;k3++) {
                                            if(i3 == j3 || i3 == k3 || k3 == j3) continue;
                                            if(i1 == i3 || i1 == j3 || i1 == k3)  continue;
                                            if(j1 == i3 || j1 == j3 || j1 == k3)  continue;
                                            if(k1 == i3 || k1 == j3 || k1 == k3)  continue;
                                            if(i2 == i3 || i2 == j3 || i2 == k3)  continue;
                                            if(j2 == i3 || j2 == j3 || j2 == k3)  continue;
                                            if(k2 == i3 || k2 == j3 || k2 == k3)  continue;
                                             int num1 = i1*100 + j1*10 +k1;
                                             int num2 = i2*100 + j2*10 +k2;
                                             int num3 = i3*100 + j3*10 +k3;
    
                                             if(num1 >= num2) continue;
                                             if(num2 >= num3) continue;
    
                                             if(num1 + num2 + num3 == 1953){
                                                 cout <<"NO. \t"<<num1<<"+"<<num2<<"+"<<num3<<endl;
                                                 c++;
                                             }
                                        }
                                    }
                                }
    
    
                            }
                        }
                    }
                }
            }
        }
        cout <<"total="<<c;
        return 0;
    }
    

    运行结果如下:

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 创建了问题 10月15日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?