夙凪desu 2021-10-18 11:32 采纳率: 100%
浏览 21
已结题

c++,这应该是是循环问题吧

麻烦老哥们了,知道这个简单,但是给个思路也可以

img

  • 写回答

1条回答 默认 最新

  • 叫我小唐就好了 新星创作者: Java技术领域 2021-10-18 12:40
    关注

    简单的来说
    就是我们先读入两个数,然后用for循环限制范围
    之后不是要判断是不是相加等于7
    下面的这些在for里面..............................................
    个位=数字%10,求出个位数字
    十位=数字/10%10,求出十位数字
    百位=数字/100%10;求出百位数字
    %是取余数,可以直接分离位数
    然后我们在用一个if判断,是的话就输出

    img

    #include<iostream>
    using namespace std;
    int main()
    {
       int a,b; 
       cout<<"请按从小到大的顺序输入两个正整数:" ;
       cin>>a>>b;
       cout<<a<<"到"<<b<<"之间各位数字之和为7的数有:"<<endl;
       for(a;a<=b;a++)
       {
          int sum=0;//用于存储各位相加之和
          int g,s,b,q,w;
          g=a%10;
          s=a/10%10;
          b=a/100%10;
          q=a/1000%10;
          w=a/10000%10;
          sum=g+s+b+q+w;
          if(sum==7)
          cout<<"    "<<a; 
       } 
        return 0;
    }
     
     
     
    
    

    最好在判断那里加一个判断,当你位数太多的时候,可以减少计算

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月26日
  • 已采纳回答 10月18日
  • 创建了问题 10月18日