方法一:将一个int类型整数不断加1,加到最大值,再加1,就变成负值(最小值)

 最大值就是除最高位外,其余位都为1,-1即是所有位全部是1,右移1位后最高位变0
   最小值即是最高位为1,其余位为0,所以最大值+1之后就变成了最小值

//#include <stdio.h>
#include <iostream>
//#include <limits.h> using namespace std; int main(){
int i = , min, max;
while(){
if(i+<=){
max = i;
min = i+;
break;
}
i++;
}
cout << "min is " << min <<endl;
cout << "max is " << max << endl;
getchar();
return ;
}

方法二:利用标准头文件limits.h,该文件包含一些很有用的常量,它们定义了各种类型所能容纳的值,其中int类型最大值最小值的预定义为

#define INT_MAX 2147483647
#define INT_MIN (-INT_MAX-1)
所以可以利用此头文件打印int类型整数的最小值和最大值。
//#include <stdio.h>
#include <iostream>
#include <limits.h> using namespace std; int main(){
cout << "最小值是:" << INT_MIN << endl;
cout << "最大值是:" << INT_MAX << endl;
getchar();
return ;
}

方法三:C++模板numeric_limits(对模板不熟悉啊)可以参考:

http://blog.163.com/wujiaxing009@126/blog/static/7198839920124135147911/

代码:

#include <iostream>
#include <limits>
using namespace std; int main(){
cout<<(numeric_limits<int>::max)()<<endl;
cout<<(numeric_limits<int>::min)()<<endl;
cout<<(numeric_limits<size_t>::max)()<<endl;
cout<<(numeric_limits<size_t>::min)()<<endl;
cout<<(numeric_limits<float>::max)()<<endl;
cout<<(numeric_limits<float>::min)()<<endl;
cout<<(numeric_limits<double>::max)()<<endl;
cout<<(numeric_limits<double>::min)()<<endl;
getchar();
return ;
}

以上是在网上看到的三种方法,学习学习。

编程计算int类型整数的最大值和最小值的更多相关文章

  1. [转载] 不查资料确定int型整数的最大值和最小值

    原文地址:http://blog.csdn.net/zhanghuoding/article/details/42719213 想法来自于书中的习题. Java的话直接输出 Integer.MAX_V ...

  2. 通过移位与或非运算获取整形最大值,最小值,以及获取输入的int类型整数的二进制表示

    以上是最终效果 实现类: package com.corejava.chap02; public class IntBin { private int value; public IntBin(int ...

  3. C++-int类型整数超出范围后的处理

    最近做了一道题目: Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: ...

  4. mysql varchar类型转换int类型找出最大值

    (1) 不严谨的,最简单的 select MAX(字段名 + 0) from 表名; (2) 使用函数实现 select MAX(cast(字段名 as SIGNED INTEGER)) from 表 ...

  5. 对int类型最小值INT_MIN取负值结果不变

    在32位系统中,int类型的最大值是0x7fffffff(即除了最高的1Bit其他31位都为1),而最小值是0x80000000(除了最高1bit,其他31位都为0). 显然,对于最小值求负数是不存在 ...

  6. double类型转换为int类型四舍五入工具类

    package com.qiyuan.util; import java.math.BigDecimal; import java.text.DecimalFormat; public class G ...

  7. C语言:通过返回指针的形式找出数组的最大值和最小值

    // //  main.c //  Pointer_max_min(return) // //  Created by ma c on 15/8/2. //  Copyright (c) 2015年 ...

  8. int类型的整数转换成汉字

    int类型的整数转换成汉字 一.源代码:IntegerNumberToChinese.java package cn.com.zfc.example; import java.util.Scanner ...

  9. C# 求余 int a = 371 / 100 % 10,求a的结果为多少?//nt 和int类型计算得到的结果还是int类型

    //int 和int类型计算得到的结果还是int类型 eg:int a = 371 / 100 % 10,求a的结果为多少? 首先371除以100,再让此结果除以10求余数. 一 371除以100得到 ...

随机推荐

  1. POJ 2236 Wireless Network (并查集)

    Wireless Network 题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/A Description An earthqu ...

  2. codeforces300A Array

    A. Array time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...

  3. Session.Abandon, Session.Clear和Session.Remove的区别

    Session.Clear()就是把Session对象中的所有项目都删除了, Session对象里面啥都没有.但是Session对象还保留. Session.Abandon()就是把当前Session ...

  4. 新网注册域名如何转向其他(如花生壳)DNS(不会报错,已经转入成功)

    最近在玩域名,发现相比较来说,新网的域名注册费用相对廉价好多. 但是我以前是用花生壳的,用惯了花生壳,就觉得新网的域名管理界面很不适应,并不是新网的不好,而是习惯了花生壳. 那么如何将新网注册的域名D ...

  5. CodeForces 707B Bakery (水题,暴力,贪心)

    题意:给定n个城市,其中有k个有仓库,问你在其他n-k个城市离仓库的最短距离是多少. 析:很容易想到暴力,并且要想最短,那么肯定是某一个仓库和某一个城市直接相连,这才是最优,所以只要枚举仓库,找第一个 ...

  6. UVaLive 7375 Hilbert Sort (递归,四分图,模拟)

    题意:告诉你一条希尔伯特曲线的大小,然后给你n 个人,及n 个人的坐标,你的起点是左下角,终点是右下角,按照希尔伯特的曲线去走,按照这个顺序给n个人排序, 按顺序输出每个人的名字! 析:这就是一个四分 ...

  7. SqlServer刷新所有视图

    CREATE PROCEDURE RefreshAllView AS DECLARE MyCursor CURSOR FOR select Name from dbo.sysobjects where ...

  8. Windows命令大全

    From:http://technet.microsoft.com/zh-cn/library/cc731728(v=ws.10).aspx Adprep Append Arp Assoc At At ...

  9. 方法javaJVM学习笔记-内存处理

    本文是一篇关于方法java的帖子 大多数JVM将内存区域分离为Method Area(Non-Heap),Heap,Program Counter Register,Java Method Statc ...

  10. sql 指令

    SELECT 是用来做什么的呢?一个最经常使用的方式是将资料从数据库中的表格内选出.从这一句回答中.我们立即能够看到两个keyword:从 (FROM)数据库中的表格内选出 (SELECT).(表格是 ...