首页 > 其他分享 >整数反转

整数反转

时间:2023-06-03 12:31:34浏览次数:31  
标签:10 return int 反转 long 整数 printf input

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>

#include<math.h>

int main()

{

long long a, d;

int b, c = 0;

printf("input a number:\n");

scanf_s("%lld", &a);

d = pow(2, 31);

while (1)

{

 if (a == 0) {

  printf("%d", c);

  return 0;

 }

 if (a >= (d - 1) || a <= -d) break;

 b = a % 10;

 c = c * 10 + b;

 if (c <= (-d) || c >= (d - 1)) break;

 a /= 10;

}

printf("input error ");

return 0;

}

标签:10,return,int,反转,long,整数,printf,input
From: https://blog.51cto.com/u_16073189/6407768

相关文章

  • 397. 整数替换
    难度中等281给定一个正整数 n ,你可以做如下操作:如果 n 是偶数,则用 n/2替换 n 。如果 n 是奇数,则可以用 n+1或n-1替换 n 。返回 n 变为 1 所需的 最小替换次数 。 示例1:输入:n=8输出:3解释:8->4->2->1示例2:输入:n=7输出:4......
  • 整数在内存中的天才存储方案
    加法和减法是计算机中最基本的运算,计算机时时刻刻都离不开它们,所以它们由硬件直接支持。为了提高加减法的运算效率,硬件电路要设计得尽量简单。对于有符号数,内存要区分符号位和数值位,对于人脑来说,很容易辨别,但是对于计算机来说,就要设计专门的电路:有符号加、减,这无疑增加了硬件的复......
  • 2023-06-02:给定一个二进制数组 nums 和一个整数 k, k位翻转 就是从 nums 中选择一个长
    2023-06-02:给定一个二进制数组nums和一个整数k,k位翻转就是从nums中选择一个长度为k的子数组,同时把子数组中的每一个0都改成1,把子数组中的每一个1都改成0。返回数组中不存在0所需的最小k位翻转次数。如果不可能,则返回-1。子数组是数组的连续部分。输入:nums......
  • acm杭电2092-整数解
    ProblemDescription有二个整数,它们加起来等于某个整数,乘起来又等于另一个整数,它们到底是真还是假,也就是这种整数到底存不存在,实在有点吃不准,你能快速回答吗?看来只能通过编程。例如:x+y=9,x*y=15?找不到这样的整数x和y1+4=5,1*4=4,所以,加起来等于5,乘起......
  • [Python]-numpy模块-反转数组的三种方法
    给定一个一维numpy数组,反转数组的三种方法:切片索引numpy.flipud()函数numpy.flip()函数importnumpyasnpa=np.array([1,2,3,4,5])#切片索引ans1=a[::-1]print(ans1)#[54321]#numpy.flipud()函数ans2=np.flipud(a)print(ans2)#[54321]#n......
  • 算法题分析:反转整数
    最近刷到了一道medium难度的算法题,比较典型,可以用语法特性和常规解法来解决。题目如下:给定一个32字节的有符号整型数字x,将x反转过来返回。如果反转x会让其数值超出32位有符号整型数字范围[-2^31,2^31-1],那么就返回0。假设运行环境不允许你存储64位整型数字(有符号或者无符号)。......
  • 剑指 Offer 67. 把字符串转换成整数
    题目描述:写一个函数StrToInt,实现把字符串转换成整数这个功能。不能使用atoi或者其他类似的库函数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合......
  • 13. 罗马数字转整数
    class Solution {        Map<Character, Integer> maps = new HashMap<>(){{        put('I', 1);        put('V', 5);        put('X', 10);        put('L', 50);        put('C', 100);       ......
  • 12. 整数转罗马数字
      贪心策略:classSolution{int[]values={1000,900,500,400,100,90,50,40,10,9,5,4,1};String[]symbols={"M","CM","D","CD","C","XC","L","XL","X","IX&q......
  • java 两个整数相除,保留两位小数
    1.情景展示两个int类型的整数相除,如何保留两位小数?5÷18=0.2777...,除不尽,保留两位小数,第二位小数的值,按第三位小数的值进行四舍五入,最终值应该是:0.28。18÷5=3.6,能除尽,只有一位小数,保留两位小数的话,第二位小数应该是0,所以最终值为:3.60。但实际结果如下。计算结果只有整数......