首页
学习
活动
专区
圈层
工具
发布

输⼊⼀个正整数,计算这个整数是几位数

问题介绍 例如: 输⼊:1234 输出:4 输⼊:12 输出:2 特别说明 之所以将这个问题单独拿出来讲,是因为解决思路的特殊之处,因为0的特殊存在,即使是0也要输出一位数...并创建一个临时变量temp拷贝输入的值,对备份进行操作,防止破坏原来的值 2.创建一个变量count存储数字的个数 3.使用一个do while循环,进入循环之后先让count++,因为只要输入了值,就至少有一位数...再让 temp的值整除10赋给它本身(这相当于将这个数去掉了一位)当操作之前该值语句的值已 经 只有一位数时,整除10之后就变为0,这时再进行while的条件判断,就不再成立。...这时得到的count的值就是我们要求得的位数 代码实现——do while循环 int main() { int a = 0; int count = 0; scanf("%d", &a); int...= a;//用临时拷贝的值进行操作,防止破坏原来的值 do { count++; temp = temp / 10; } while (temp); printf("%d是%d位数

34710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    个位数字为 K 的整数之和(枚举)

    题目 给你两个整数 num 和 k ,考虑具有以下属性的正整数多重集: 每个整数个位数字都是 k 。 所有整数之和是 num 。 返回该多重集的最小大小,如果不存在这样的多重集,返回 -1 。...注意: 多重集与集合类似,但多重集可以包含多个同一整数,空多重集的和为 0 。 个位数字 是数字最右边的数位。...示例 1: 输入:num = 58, k = 9 输出:2 解释: 多重集 [9,49] 满足题目条件,和为 58 且每个整数的个位数字是 9 。 另一个满足条件的多重集是 [19,39] 。...示例 2: 输入:num = 37, k = 2 输出:-1 解释:个位数字为 2 的整数无法相加得到 37 。...解题 特殊情况先考虑,然后再考虑个位数个数从 1 - 10 个,能否得到 num 的个位数,注意 k*个数 <= num class Solution: def minimumNumbers(self

    54220

    13—个位数字为 K 的整数之和【LeetCode2310】

    个位数字为 K 的整数之和 - 力扣(LeetCode) 给你两个整数 num 和 k ,考虑具有以下属性的正整数多重集: 每个整数个位数字都是 k 。 所有整数之和是 num 。...注意: 多重集与集合类似,但多重集可以包含多个同一整数,空多重集的和为 0 。 个位数字 是数字最右边的数位。...提示: 0 <= num <= 3000 0 <= k <= 9 示例一: 输入:num = 58, k = 9 输出:2 解释: 多重集 [9,49] 满足题目条件,和为 58 且每个整数的个位数字是...示例二: 输入:num = 37, k = 2 输出:-1 解释:个位数字为 2 的整数无法相加得到 37 。 示例三: 输入:num = 0, k = 7 输出:0 解释:空多重集的和为 0 。

    27920

    PHP操作MongoDB时的整数问题及对策

    本文所说的整数问题,其实并不是MongoDB的问题,而是PHP驱动的问题:MongoDB本身有两种整数类型,分别是:32位整数和64位整数,但旧版的PHP驱动不管操作系统是32位还是64位,把所有整数都当做...32位整数处理,结果导致64位整数被截断。...为了在尽可能保持兼容性的前提下解决这个问题,新版PHP驱动加入了mongo.native-long选项,以期在64位操作系统中把整数都当做64位来处理,有兴趣的可参考:64-bit integers in...那么PHP驱动真的完全解决了整数问题么?NO!在处理group操作的时候还有BUG: 为了说明问题,我们先来生成一些测试数据: php ini_set('mongo.native_long', 1); $instance = new Mongo(); $instance = $instance->selectCollection

    67320
    领券