方法一:将一个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. HDU 5778 abs (枚举)

    abs 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5778 Description Given a number x, ask positive ...

  2. 转载github上最全的资源教程--前端涉及的所有知识体系

    以下地址为园子里一个哥们总结的前端所涉及的所有知识体系 http://www.cnblogs.com/bymax/p/5878113.html 很值得学习参考

  3. UVaLive 7371 Triangle (水题,判矩形)

    题意:给定两个三角形,问你能不能拼成矩形. 析:很明显,要想是矩形,必须是四个角是直角,那么三角形必须是直角三角形,然后就是只能斜边相对,然后呢?就没了. 代码如下: #pragma comment( ...

  4. Model First:创建实体数据模型(ADO.NET 实体数据模型)

    Microsoft Entity Framework是一个对象关系映射工具(Object Relational Mapping ,O/RM)工具.它可以让你从一个数据库自动地生成数据接入层.实体框架免 ...

  5. LINUX消息队列实战之一

    前言 能说能抄能论皆不算,能写能打才是真功夫. 唠叨 反正我也是一个孤独的程序猿,多说一些奇奇怪怪的唠叨也无妨,第一次写消息队列,书本的东西和实战很不同,根据实战总结的一些注意事项会和大家分享,也敲打 ...

  6. 去除Linq to Sql 查询结果中的空格

    原来的写法: Dim db = From city In DataContext1.AddressCity Where city.ProvinceID = dgvAddress(2, e.RowInd ...

  7. 更新证书错误Code Sign error: Provisioning profile ‘XXXX'can't be found

    在Xcode中当你在更新了你得证书而再重新编译你的程序,真机调试一直会出现 Code Sign error: Provisioning profile ‘XXXX’ can't be found是不是 ...

  8. 短信验证倒计时60s

    $("#zphone").click(function(){ var tel2 = $("#regTel").val(); if(flag.tel){ $.po ...

  9. PyQt入门系列(一):Hello World

    开始搞PyQt了,顺便记录一下自己的学习!资料参考某大神的PyQt4 精彩实例分析,以及<征服Python>这本书. 下面是Demo: #-*- coding:utf-8 -*- #编码声 ...

  10. Covarience And ContraVariance

    using System; using System.Collections.Generic; using System.IO; namespace CovarientAndContraVarient ...