题目内容:
输入一个多位的数字,1求各数位相加。
例如输入12345,则计算1+2+3+4+5=15
输入格式:
一个整数
输出格式:
一个整数
输入样例:
1234567890
输出样例:
45
时间限制:500ms内存限制:32000kb

实现程序:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int cnt_count(int value)
{
    int count = 0 , cnt = 0 , n = 1 ;
    while(value)
    {
        value /= 10 ;
        count++ ;
    }
    //上面算法是为了求得计数值count有表示传进来的value有多少位
    if(count == 1)
    {
        cnt = 0 ;
    }
    else
    {
        //相应的有多少为就按照规律去累乘
        while(cnt < count - 1)
        {
            n *= 10 ;
            cnt++ ;
        }
    }
    return n ;//比如6位数,那么就返回100000,5位就返回10000,依次类推
}
int main(void)
{
    int num , i , sum = 0 ;
    int value = 0 , ret = 1;
    int buffer[10] = {0};//定义空间为10的数组并清零
    scanf("%d",&num);//输入一个数
    value = num ;//将数赋值给变量value
    for(i = 0 ; i < 10 ; i++){//循环十次
          ret = cnt_count(value) ;//先通过cnt_count确定输入的数是几位数
          buffer[i] += value / ret ; //取到这个数的最高位并将其存到buffer里去
          value = value % ret ;//接下来屏蔽最高一位,例如输入12345,最高位为1,屏蔽完就为2345
          sum+=buffer[i];//累加数组内的元素
    }
    printf("%d",sum);//输出累加结果
    return 0 ;
}

OJ题:输入一个多位的数字,求各数位相加。的更多相关文章

  1. C语言:输入一个多位的数字,12345,求各位相加1+2+3+4+5=15

    题目: 输入一个多位的数字,12345,求各位相加1+2+3+4+5=15(10分)题目内容: 输入一个多位的数字,1求各数位相加. 例如输入12345,则计算1+2+3+4+5=15 输入格式: 一 ...

  2. 提示用户输入一个1-40之间的数字,使用if语句根据输入数字的大小进行判断,如果输入的数字在

    提示用户输入一个1-40之间的数字,使用if语句根据输入数字的大小进行判断,如果输入的数字在 num_user=input('输入一个1-40之间的整数:') num_int=int(num_user ...

  3. 编写Java程序,使用单例模式,创建可以生成银联借记卡号的工具类,银联借记卡号是一个 19 位的数字,卡号以“62”开头,如图所示。

    查看本章节 查看作业目录 需求说明: 使用单例模式,创建可以生成银联借记卡号的工具类,银联借记卡号是一个 19 位的数字,卡号以"62"开头,如图所示. 实现思路: (1)创建 J ...

  4. [汇编] 从键盘输入一个一位数字,然后响铃n声

    ; multi-segment executable file template. data segment ends stack segment dw dup() ends code segment ...

  5. c编程:提示用户输入一个0—9的数字进行猜测电脑产生的随机数。一共有三次机会。

    // //  main.c //  使用c语言进行编程: 题目:由电脑生成一个由0-9之间的随机数,提示用户也输入一个数字进行猜测.当猜测三次仍不中的时候结束程序. 编译环境:Xcode6.3 特别介 ...

  6. 算法题 -- 输入一个Long数组,按要求输出一个等长的Long数组

    /** * 输入一个Long数组,按要求输出一个等长的Long数组 * 输出数组的元素值等于,输入数组除相同下标外其他元素的积 * 如:输入[1, 2, 3, 4], 输出[24, 12, 8, 6] ...

  7. 剑指 Offer 44. 数字序列中某一位的数字 + 找规律 + 数位

    剑指 Offer 44. 数字序列中某一位的数字 Offer_44 题目描述 题解分析 java代码 package com.walegarrett.offer; /** * @Author Wale ...

  8. 输入一个表示整数的字符串,把该字符串转换成整数并输出(实现atoi函数功能)

    例如输入字符串"345",则输出整数345.-----------------------------此题一点也不简单.不信,你就先不看一下的代码,你自己先写一份,然后再对比一下, ...

  9. Java 输入一个整数,计算它各位上数字的和。(注意:是任意位的整数)

    import java.util.*; /* * 输入一个整数,计算它各位上数字的和. * (注意:是任意位的整数) */ public class Sum02 { public static voi ...

随机推荐

  1. android 欢迎界面的制作

    再打开手机app的时候,最先映入我们眼帘的是一个覆盖手机全屏的欢迎界面,在这个界面显示出来的时候整个手机屏幕只会显示这一个界面,上面的标题栏,以及手机最顶端的状态栏都会消失,只有欢迎页面结束跳转到其他 ...

  2. Oracle中查询和删除相同记录的3种方法

    --创建测试表 )); ,'); ,'); ,'); ,'); ,'); ,'); commit; select * from test; --查询相同记录 ); select id,name fro ...

  3. LinkedList源码和并发问题分析

    1.LinkedList源码分析 LinkedList的是基于链表实现的java集合类,通过index插入到指定位置的时候使用LinkedList效率要比ArrayList高,以下源码分析是基于JDK ...

  4. 使用Java可以做得一些事

    安卓 Web JSP使用Echarts的最简单的例子 微信 wechat4j weixin-java-tools weixin4j 网络服务器

  5. Gradle 1.12用户指南翻译——第四十八章. Wrapper 插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  6. 【Android应用开发】 Universal Image Loader ( 使用简介 | 示例代码解析 )

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50824912 相关地址介绍 : -- Universal I ...

  7. 【Unity Shader】Unity Chan的卡通材质

    写在前面 时隔两个月我终于来更新博客了,之前一直在学东西,做一些项目,感觉没什么可以分享的就一直没写.本来之前打算写云彩渲染或是Compute Shader的,觉得时间比较长所以打算先写个简单的. 今 ...

  8. argparse库 学习记录

    初始化 始见参数 name or flags action nargs default type choices required help dest metavar 总结 继上次的optparser ...

  9. Core Python Programming一书中关于深浅拷贝的错误

    该书关于深浅拷贝的论述: 6.20. *Copying Python Objects and Shallow and Deep Copies "when shallow copies are ...

  10. android 网络工具 之Android-Volley的demo

    1.今天详细的研究了Volley的使用,下面来给大家介绍一下: Android Volley 是Google开发的一个网络lib,可以让你更加简单并且快速的访问网络数据.Volley库的网络请求都是异 ...