CSP201512-1: 数位之和

引言:CSP(http://www.cspro.org/lead/application/ccf/login.jsp)是由中国计算机学会(CCF)发起的"计算机职业资格认证"考试,针对计算机软件开发、软件测试、信息管理等领域的专业人士进行能力认证。认证对象是从事或将要从事IT领域专业技术与技术管理人员,以及高校招考研究生的复试对象。

  • 问题描述

给定一个十进制整数n,输出n的各位数字之和。

  • 输入格式

输入一个整数n。

  • 输出格式

输出一个整数,表示答案。

  • 样例输入

    20151220

  • 样例输出

    13

  • 样例说明

    20151220的各位数字之和为2+0+1+5+1+2+2+0=13。

  • 评测用例规模与约定

    所有评测用例满足:0 ≤ n ≤ 1000000000。

  • 源代码

# include <stdio.h>

# include <stdlib.h>

# include <memory.h>

int main(void)

{

int n;

int result = 0;

scanf("%d", &n);

do {

result += n%10;

n /= 10;

} while (n);

printf("%d\n", result);

return 0;

}

原文地址:https://www.cnblogs.com/husterzxh/p/8447701.html

时间: 2024-08-30 06:25:51

CSP201512-1: 数位之和的相关文章

地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格, 但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37), 因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?

package edu.bjtu.day8_27; import java.util.Scanner; /** * @author Allen * @version 创建时间:2017年8月27日 下午7:55:46 * 类说明:链接:https://www.nowcoder.com/questionTerminal/6e5207314b5241fb83f2329e89fdecc8 地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格, 但

CCF系列之数位之和(201512-1)

试题编号: 201512-1试题名称: 数位之和时间限制: 1.0s内存限制: 256.0MB问题描述: 问题描述 给定一个十进制整数n,输出n的各位数字之和. 输入格式 输入一个整数n. 输出格式 输出一个整数,表示答案. 样例输入 20151220 样例输出 13 样例说明 20151220的各位数字之和为2+0+1+5+1+2+2+0=13. 评测用例规模与约定 所有评测用例满足:0 ≤ n ≤ 1000000000. 解题思路: 实现代码(java): 1 package ccf_tes

剑指Offer(Java版)第十二题:地上有一个m行n列的方格。一个机器人从坐标(0, 0)的格子开始移动, 它每一次可以向左、右、上、下移动一格,但不能进入行坐标和列坐标的数位之和大于k的格子。 如,当k为18时,机器人能够进入方格(35, 37),因为3+5+3+7=18。但它不能进入方格(35, 38), 因为3+5+3+8=19。请问该机器人能够到达多少个格子?

/*地上有一个m行n列的方格.一个机器人从坐标(0, 0)的格子开始移动, 它每一次可以向左.右.上.下移动一格,但不能进入行坐标和列坐标的数位之和大于k的格子. 如,当k为18时,机器人能够进入方格(35, 37),因为3+5+3+7=18.但它不能进入方格(35, 38), 因为3+5+3+8=19.请问该机器人能够到达多少个格子?*/public class Class12 { public int moveCount(int rows, int cols, int threshold){

数位之和计算

数位之和计算,计算一个数字各个数位之和,例:sums(100) = 1+0+0=1, sums(35) = 3+5=8 设一数字 x ,向下取整除法符号//,求余符号% ,则有: 1) x % 10, 得到x的个位数字 2) x // 10, 令x的十进制数向右移动一位,即删除个位数字 def sums(x): s = 0 while x: s += x % 10 x = x // 10 return s 原文地址:https://www.cnblogs.com/pangyunsheng/p/1

CCF_201512-1_数位之和

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

Leetcode-1085 sum of digits in the minimum number(最小元素各数位之和)

1 #define _for(i,a,b) for(int i = (a);i < b;i ++) 2 3 class Solution 4 { 5 public: 6 int sumOfDigits(vector<int>& A) 7 { 8 int mm = A[0]; 9 _for(i,0,A.size()) 10 { 11 if(A[i]<mm) 12 mm = A[i]; 13 } 14 int S = 0; 15 while(mm) 16 { 17 S += m

csp 201512-1 数位之和

这道题说明了int可以表示10^10以下的数,那么大中小的那个数,运算中出的问题????好懵呀 #include<iostream> using namespace std; int main(){ int n; cin>>n; int sum=0; while(n){ sum+=n%10; n=n/10; } cout<<sum<<endl; return 0; } 原文地址:https://www.cnblogs.com/i-love/p/1150822

URAL 2052 Physical Education(数位dp)

 题意:给出一个自然数数列,按照每个数的所有数位之和作为第一关键字,每个数的大小作为第二关键字升序排序,位置不变的数的个数是多少. 思路:首先可以证明,对于数位和为i的所有数,最多只可能有一个位置不变,这个可以直观的猜想一下,因为如果有一个数字位置不变,那么对于排序后的序列,这个数后面的所有数的增长速度都大于自然数序列的增长速度,所以不可能再有第二个. 假设我们当前求出了数位和为i的区间为[l, r],令query(a, b)表示1到a这段区间内数位和为b的数的个数,用su[i-1]表示数位

数位DP复习小结

之前学数位dp的时候底子没打扎实 虚的要死 这次正好有时间……刷了刷之前没做的题目 感觉自己脑洞不太够……比较经典的题或者见过的类似模型就能自己推出来,但是没有见过的模型就虚的要死(比如二进制数位DP) 感谢WQ的帮助,让我对数位DP的理解逐渐加深 那么我们总结一下这次做的题目…… bzoj4521 记忆化搜索即可,水爆 1 #include <cstring> 2 #include <cstdio> 3 using namespace std; 4 #define RG regi