分离整数的各个数位

总时间限制:

1000ms

内存限制: 
65536kB
描述

从键盘输入一个任意的三位整数,要求正确地分离出它的百位、十位和个位数,并分别在屏幕上输出,输出采用每行输出一个数的方式,不带其它符号。

输入
一个任意的三位整数
输出
一个任意的三位整数
样例输入
123
样例输出
1
2
3
#include <iostream>
using namespace std;
int main(){
    int n ; //定义一个整数
    int a ,b ,c ;
    //输入一个整数
    cin >> n;
    a = n / 100; // 将整数的百位置赋予 a
    b = ( n / 10 ) % 10; //将整数除以10之后再除以10取一个余数
    c = n % 10; //将整数除以10取余数
    cout << a << endl;
    cout << b << endl;
    cout << c << endl;
    return 0;

}

解题思路:这道题看似很简单,只要是百位除以100 十位 除以10 个位呢?

时间: 2024-09-20 19:33:49

分离整数的各个数位的相关文章

JAVA 浮点数转化为百分数,分离整数和小数部分

JAVA 浮点数转化为百分数 public class DoubleToPercentformat { /** * 将double类型数据转换为百分比格式,并保留小数点前IntegerDigits位和小数点后FractionDigits位 * @param d * @param IntegerDigits * @param FractionDigits * @return */ public static String getPercentFormat(double d,int IntegerD

【51nod-1315】合法整数集(数位)

[思路] 既然是or操作,将数转化为二进制,数位是1,对应的数组元素+1,再将x转为成二进制,只要查找X为1的位置,将之前存放的数组数字找个最小的输出就可以了. 但是并不是所有的数都要参与or,因为有些数的位数>X,显然这些数是不用删除的,所以不用让这些数加到数组里.还有哪些数呢?当有些数的位数是1,而X对应的位数是0,这些数也是一定不用删除的.综合以上只要满足(x|xx)> x就可以参与or. [code] #include <bits/stdc++.h> using names

整理小朋友在noi.openjudge上的作业(1)

NOI(题库正在建设中,做题纪录有可能会被删除,请注意) 第一章的统计放前面 1 编程基础之输入输出 10 0 0% 最基础有空补刷 2 编程基础之变量定义.赋值及转换 10 0 0% 最基础有空补刷 3 编程基础之算术表达式与顺序执行 20 0 0% 最基础有空补刷 4 编程基础之逻辑表达式与条件分支 21 0 0% 最基础有空补刷 5 编程基础之循环控制 45 10 22% 最基础有空补刷 6 编程基础之一维数组 15 5 33% 最基础有空补刷 7 编程基础之字符串 35 0 0% 有必要

bzoj1026: [SCOI2009]windy数 数位dp

题目: http://www.lydsy.com/JudgeOnline/problem.php?id=1026 题意: Description windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道, 在A和B之间,包括A和B,总共有多少个windy数? Input 包含两个整数,A B. Output 一个整数 思路: 数位dp,记忆化搜索. 1 #include <bits/stdc++.h> 2 3 using namesp

SPOJ BALNUM Balanced Numbers 平衡数(数位DP,状压)

题意: 平衡树定义为“一个整数的某个数位若是奇数,则该奇数必定出现偶数次:偶数位则必须出现奇数次”,比如 222,数位为偶数2,共出现3次,是奇数次,所以合法.给一个区间[L,R],问有多少个平衡数? 思路: 这题比较好解决,只有前导零问题需要解决.如果枚举到011,那么其前导零(偶数)出现了1次而已,而此数11却是平衡数,所以不允许前导零的出现! 由于dfs时必定会枚举到前导零,否则位数较少的那些统计不到.状态需要3维or2维也行,3维的比较容易处理,用一维表示数位出现次数,另一维表示数位是否

大整数算法[04] 位操作

上一篇文章介绍了大整数的比较操作,今天来谈谈和位相关的操作. ★ 引子         在大整数的表示和相关定义这篇文章中讲到了大整数是如何表示的.为了方便后面的讲解,这里先按照前面的定义,给出一个大整数的例子(32位系统下,每一个数位长度为32比特): 假设有一 bignum x,十进制值为 1134924633606254832,对应的十六进制值为 0xFC00FF0F0F0F0F0,那么按照大整数的表示方法, 2^32 进制就表示成(每一位用逗号隔开): (264245232,404232

JavaScript实用功能代码片段

1.原生JavaScript实现字符串长度截取 1 function cutstr(str, len) { 2 var temp; 3 var icount = 0; 4 var patrn = /[^\x00-\xff]/; 5 var strre = ""; 6 for (var i = 0; i < str.length; i++) { 7 if (icount < len - 1) { 8 temp = str.substr(i, 1); 9 if (patrn.e

实数加法的一个解决思路

33:实数加法 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 求2个实数相加的和. 输入输出中出现的实数都有如下的形式: P1P2...Pi.Q1Q2...Qj.对于整数部分,P1P2...Pi是一个非负整数:对于小数部分,至少有一位且最后一位Qj不等于0. 输入 2行,分别是两个加数.每个加数不超过100个字符. 输出 一行输出是相应的和.数据保证一定是一个小数部分不为0的实数. 样例输入 0.111111111111111111111111111111

实现printf 浮点数打印 -- 待解决

#include <stdio.h> void printHex(int integer) { unsigned char isnegative = 0,len = 0, intstr[10]={'\0'}; if(integer < 0) { isnegative = 1; integer = 0 - integer; } if (integer == 0) intstr[len++] = '0'; while (integer) { intstr[len++] = (integer