32 条题解

  • -1
    @ 2022-8-23 19:29:11

    这一题除了用课上教的整除再取余,还可以用char (字符)。 因为用char输入时会分开截取每一个字符(这里就是数字)所以可以用它来输入。 charint,可以直接用char类型减去 '0' 具体怎么减,就是用对应的ASCII码相减。 上代码:

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    char c; int sum = 0;
    cin >> c;
    while (c != ' ') {
        sum += c-'0';
        cin >> c;
    } cout << sum;
    return 0;
    }
    

    拿走!~~

    bi~~~~ 这个是有一个问题的:运行会报错

    ExitCode: 9 (Killed)
    

    所以将while括号里的改成cin >> c就好了。因为cin >> c如果是空的,就会自动返回0(false)。 改正以后的代码(这次没有坑):

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        char c; int sum = 0;
        while (cin >> c)
            sum += c-'0';
        cout << sum;
        return 0;
    }
    

    拿走!~~~

    • @ 2023-5-6 20:47:52

      直接用int创建变量不好吗?

  • -2
    @ 2022-4-29 9:27:34

    1、这道题是一道数位拆分的题目。
    2、遇到这样的题目,我们可以从数字的最末位开始拆:

    1. (1)先对10取余得到数字的个位;
    2. (2)把这个数字除以10,得到除了个位以外的前几位数,得到的新数继续对10取余得到新的个位,也就是原来数字的十位;
    3. (3)重复前两步直到这个数字为0;

    举例说明:假设 N = 21437,

    1. (1) 21437 % 10 = 7, 21437 / 10 = 2143;
    2. (2) 2143 % 10 = 3, 2143 / 10 = 214;
    3. (3) 214 % 10 = 4, 214 / 10 = 21;
    4. (4) 21 % 10 = 1, 21 / 10 = 2;
    5. (5) 2 % 10 = 2, 2 / 10 = 0,

    循环结束。我们可以看到上面的过程依次得到了21437的个位7,3,4,1,2,把它们加在一起即是各位数之和。

    4、核心代码入下

    while(n > 0)
    {
    	s += n % 10;
    	n /= 10;
    }
    
  • -3
    @ 2023-8-4 21:04:26

    L2小萌新预习完来练手啦

    不知道为什么,我就是喜欢用字符串嘿嘿

    来吧上代码🚀️

    #include <bits/stdc++.h>
    using namespace std;
    int s ;
    int main()
    {
        string a;
        cin >> a;
        for (int i = 0;i < a.length() ; i++)  s += a[i] - '0';//把字符转换成整数,累加到变量s中
        cout << s;
        return 0;
    }
    

    个人觉得这种方法炒鸡简单(AC,放心食用)

    • -3
      @ 2023-7-22 12:40:58

      To easy

      #include <cstdio>
      using namespace std;
      int main(){
          int n,sum=0;
          scanf("%d",&n);
          while(n>0)sum+=n%10,n/=10;
          printf("%d\n",sum);
          return 0;
      }
      
      • -3
        @ 2023-7-16 19:22:43
        #include <iostream>  
        using namespace std;  
          
        int main() {  
            int num, sum = 0;   
            cin >> num;  
          
            // 将数字转换为字符串,然后逐位相加  
            sum += num % 10; // 取个位数字  
            num /= 10;  
            sum += num % 10; // 取十位数字  
            num /= 10;  
            sum += num % 10; // 取百位数字  
            num /= 10;  
            sum += num % 10; // 取千位数字  
            num /= 10;  
            sum += num % 10; // 取万位数字  
          
            cout <<sum << endl;  
          
            return 0;  
        }
        
        • -3
          @ 2023-5-20 20:27:12

          太简单了,怪不得标签是基础题……

          #include <bits/stdc++.h>
          using namespace std;
          int n, sum;
          int main()
          {
              cin >> n;
              while (n > 0)
              {
                  sum += n % 10;
                  n /= 10;
              }
              cout << sum << endl;
              return 0;
          }
          

          编码不易,先点赞,后抱走哦~ 不点赞不许抱走

          • -3
            @ 2023-5-6 20:46:01

            这道题灰常的简单 用while循环即可完成

            #include <bits/stdc++.h>
            using namespace std;
            int main()
            {
                int s,sum=0;
                cin >> s;
                while(s>0) 
                {
                    sum+=s%10;
                    s/=10;
                } 
                cout << sum;
                return 0; 
            }
            
            • -3
              @ 2023-5-2 15:53:25

              **#include <bits/stdc++.h> using namespace std; int main() { int n,num = 0; cin >> n; while(n > 0) { num += n % 10; n /= 10; } cout << num; return 0; } //一个字,绝!

              • -3
                @ 2023-4-26 19:58:24

                。.

                #include<bits/stdc++.h>
                using namespace std;
                
                int main()
                {
                	int n,a,b,c,d,e;
                	cin>>n;
                	a=n%10;   //个位 
                	b=n/10%10;   //十位 
                	c=n/100%10;   //百位 
                	d=n/1000%10;   //千位 
                	e=n/10000;   //万位 
                	cout<<a+b+c+d+e;   //和 
                	
                	return 0;
                }
                
                • -3
                  @ 2022-8-2 17:59:18
                  简单~
                  这题得用while循环了,上课的时候讲过,那么上代码
                  int n, sum = 0;
                  cin >> n;
                  while (n > 0)
                  {
                      sum += n % 10;
                      n /= 10;
                  }
                  cout << sum;
                  这个求和不是从第一位开始的,而是个位
                  八月的第二个题解!!!
                  • -3
                    @ 2022-4-24 15:58:03

                    鼓励大家写题解,但注意题解格式。

                    给代码两端加上这个会舒服一些

                    ```cpp

                    你的代码

                    ```

                    </span>

                    这个点在键盘的左上角tab上面那个键,注意切换输入法

                    #include<iostream>
                    using namespace std;
                    int main()
                    {
                        int n;
                        cin>>n;//这是一个注释
                        return 0;
                    } 
                    

                    请注意严禁抄袭题解,写题解不要只放代码,需加上你的思路或代码注释。

                    抄袭题解一经发现直接取消成绩。

                    • -4
                      @ 2023-4-2 14:22:54
                      #include <iostream>
                      using namespace std;
                      int main()
                      {
                          int n, hahaha = 0;
                          cin >> n;
                          while (n != 0)
                          {
                              hahaha += n % 10;
                              n /= 10;
                          }
                          cout << hahaha;
                          return 0;
                      }
                      

                      【入门】求一个5位数的各个位之和

                      信息

                      ID
                      415
                      时间
                      1000ms
                      内存
                      16MiB
                      难度
                      3
                      标签
                      递交数
                      2393
                      已通过
                      1304
                      上传者