OJ题:输入一个多位的数字,求各数位相加。
题目内容: 输入一个多位的数字,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题:输入一个多位的数字,求各数位相加。的更多相关文章
- C语言:输入一个多位的数字,12345,求各位相加1+2+3+4+5=15
题目: 输入一个多位的数字,12345,求各位相加1+2+3+4+5=15(10分)题目内容: 输入一个多位的数字,1求各数位相加. 例如输入12345,则计算1+2+3+4+5=15 输入格式: 一 ...
- 提示用户输入一个1-40之间的数字,使用if语句根据输入数字的大小进行判断,如果输入的数字在
提示用户输入一个1-40之间的数字,使用if语句根据输入数字的大小进行判断,如果输入的数字在 num_user=input('输入一个1-40之间的整数:') num_int=int(num_user ...
- 编写Java程序,使用单例模式,创建可以生成银联借记卡号的工具类,银联借记卡号是一个 19 位的数字,卡号以“62”开头,如图所示。
查看本章节 查看作业目录 需求说明: 使用单例模式,创建可以生成银联借记卡号的工具类,银联借记卡号是一个 19 位的数字,卡号以"62"开头,如图所示. 实现思路: (1)创建 J ...
- [汇编] 从键盘输入一个一位数字,然后响铃n声
; multi-segment executable file template. data segment ends stack segment dw dup() ends code segment ...
- c编程:提示用户输入一个0—9的数字进行猜测电脑产生的随机数。一共有三次机会。
// // main.c // 使用c语言进行编程: 题目:由电脑生成一个由0-9之间的随机数,提示用户也输入一个数字进行猜测.当猜测三次仍不中的时候结束程序. 编译环境:Xcode6.3 特别介 ...
- 算法题 -- 输入一个Long数组,按要求输出一个等长的Long数组
/** * 输入一个Long数组,按要求输出一个等长的Long数组 * 输出数组的元素值等于,输入数组除相同下标外其他元素的积 * 如:输入[1, 2, 3, 4], 输出[24, 12, 8, 6] ...
- 剑指 Offer 44. 数字序列中某一位的数字 + 找规律 + 数位
剑指 Offer 44. 数字序列中某一位的数字 Offer_44 题目描述 题解分析 java代码 package com.walegarrett.offer; /** * @Author Wale ...
- 输入一个表示整数的字符串,把该字符串转换成整数并输出(实现atoi函数功能)
例如输入字符串"345",则输出整数345.-----------------------------此题一点也不简单.不信,你就先不看一下的代码,你自己先写一份,然后再对比一下, ...
- Java 输入一个整数,计算它各位上数字的和。(注意:是任意位的整数)
import java.util.*; /* * 输入一个整数,计算它各位上数字的和. * (注意:是任意位的整数) */ public class Sum02 { public static voi ...
随机推荐
- rhel7 启动网络
我装的是rhel7 服务器版本(在virtualbox虚拟机里),安装后默认不启动网络,另外还有很多命令也不能用,比如ifconfig, yum-config-manager等. 先解决网络问题: 切 ...
- Linux 新系统个人配置
1,装codeblocks 2,装vim,检查gcc,g++,修改vim环境 cd ~vim .vimrc添加如下几行:set shiftwidth=4 (表示每一级缩进的长度)s ...
- ACM Secrete Master Plan
Problem Description Master Mind KongMing gave Fei Zhang a secrete master plan stashed in a pocket. T ...
- 利用百度接口进行人脸识别并保存人脸jpg文件
利用百度接口进行人脸识别,根据返回的人脸location用opencv切割保存. # coding : UTF-8 from aip import AipFace import cv2 import ...
- ERROR: Cannot change version of project facet Dynamic Web Module to 3.0?
Issue: When you create web app in eclipse with maven configuration, you may get following error. Can ...
- Mac小技巧:强制退出程序的六种方法
原帖地址: http://www.cnbeta.com/articles/175447.htm 1.使用键盘快捷键强制退出处于活跃状态的Mac程序 快捷键:Command+Option+Shift+E ...
- UE4读取scv文件 -- 数据驱动游戏性元素
官方文档链接:http://docs.unrealengine.com/latest/CHN/Gameplay/DataDriven/index.html 略懒,稍微麻烦重复的工作,总希望能找人帮忙一 ...
- 6.2、Android Studio内存
Android Monitor提供了一个Memory Monitor,所以你可以非常容易的监测应用性能和内存使用,可以发现无用的对象,本地内存泄漏和连接设备的内存使用.Memory Monitor显示 ...
- 2.5、Android Studio添加多适配的向量图片
Android Studio包含一个Vector Asset Studio的工具,可以帮助你添加Material图标和导入SVG(Scalable Vector Graphic)文件到你的项目中作为向 ...
- Spark集群模式&Spark程序提交
Spark集群模式&Spark程序提交 1. 集群管理器 Spark当前支持三种集群管理方式 Standalone-Spark自带的一种集群管理方式,易于构建集群. Apache Mesos- ...