C++系列-第1章顺序结构-4-整型int

简介: C++系列-第1章顺序结构-4-整型int

C++系列-第1章顺序结构-4-整型int

在线练习:

http://noi.openjudge.cn/

https://www.luogu.com.cn/

总结

本文是C++系列博客,主要讲述整型int的用法

整型int

在C++中,int 是一个关键字,用于声明整型变量。int 类型用于存储整数,它是一个基本数据类型,占用固定大小的内存。在大多数现代计算机上,int 通常占用4个字节(32位)的内存,但这个大小是由编译器和所运行的操作系统决定的。

int 类型的变量可以存储任何整数值,包括正数、负数和零。下面是 int 类型的一些基本用法:

  1. 声明变量:使用 int 关键字声明一个整型变量,并给它一个名字。
  2. 赋值:使用等号 = 给变量赋一个整数值。
  3. 输出:使用 std::cout 输出变量的值。
  4. 输入:使用 std::cin 从用户输入获取值。
    下面是一个简单的案例,展示了如何使用 int 类型:
#include <iostream>
int main() {
    // 声明一个整型变量,名为 number
    int number;
    // 输出提示信息,让用户输入一个整数
    std::cout << "请输入一个整数:";
    // 从用户那里获取输入,并存储在变量 number 中
    std::cin >> number;
    // 输出用户输入的整数值
    std::cout << "你输入的整数是:" << number << std::endl;
    // 输出用户输入的整数值
    std::cout << "你输入的整数*2是:" << number *2<< std::endl;
    // 程序结束
    return 0;
}

输出为:

在这个案例中,我们声明了一个名为 numberint 类型变量,然后使用 std::cout 输出提示信息,让用户输入一个整数。用户输入的值通过 std::cin 获取,并存储在 number 变量中。最后,我们再次使用 std::cout 输出用户输入的整数值。

INT的大小

参考:C/C++之最值limits.h(climits)和limits头文件

在limits.h/climits中,定义了INT_MAX,INT_MIN,可以直接使用

INT_MAX = 2^31-1,INT_MIN= -2^31,分别表示最大整数和最小整数。

占的位数

32位编译系统:int占四字节,与long相同。long int和int是一回事

64位编译系统:int占四字节,long占8字节,long数据范围变为:-2^63 ~ 2^63-1

注意,long long在任何平台和编译器上都已经被定义为占8个字节。

#include <iostream>
#include <climits>        //limits.h
using namespace std;
int main() {
  cout << "sizeof(char)"    << sizeof(char) << endl;
  cout << "sizeof(int) "    << sizeof(int) << endl;
  cout << "sizeof(long) "   << sizeof(long) << endl;
  cout << "sizeof(double)  "    << sizeof(double) << endl;
  cout << "sizeof(float)  "   << sizeof(float) << endl;
  /*
  sizeof(char)1
  sizeof(int) 4
  sizeof(long) 4
  sizeof(double)  8
  sizeof(float)  4
  */
  return 0;
}

输出为:

最大值

#include <iostream>
#include <climits>    //limits.h
using namespace std;
int main() {
  cout << "char: "    << CHAR_MAX << endl;
  cout << "short: "   << SHRT_MAX << endl;
  cout << "int: "     << INT_MAX << endl;
  cout << "long: "    << LONG_MAX << endl;
  cout << "long long: " << LLONG_MAX << endl;
  /*
  char: 127
  short: 32767
  int: 2147483647
  long: 2147483647
  long long: 9223372036854775807
  */
  return 0;
}

输出为:

最小值

#include <iostream>
#include <climits>        //limits.h
using namespace std;
int main() {
  cout << "char: "    << CHAR_MIN << endl;
  cout << "short: "   << SHRT_MIN << endl;
  cout << "int: "     << INT_MIN << endl;
  cout << "long: "    << LONG_MIN << endl;
  cout << "long long: " << LLONG_MIN << endl;
  /*
  char: -128
  short: -32768
  int: -2147483648
  long: -2147483648
  long long: -9223372036854775808
  */
  return 0;
}

输出为:

带符号与无符号

#include <iostream>
#include <climits>        //limits.h
using namespace std;
int main() {
  cout << "signed char_max: "   << SCHAR_MAX << endl;
  cout << "signed char_min: "   << SCHAR_MIN << endl;
  cout << "unsigned char: "   << UCHAR_MAX << endl;
  cout << "unsigned short: "    << USHRT_MAX << endl;
  cout << "unsigned int: "    << UINT_MAX << endl;
  cout << "unsigned long: "   << ULONG_MAX << endl;
  cout << "unsigned long long: "  << ULLONG_MAX << endl;
  /*
  signed char_max: 127
  signed char_min: -128
  unsigned char: 255
  unsigned short: 65535
  unsigned int: 4294967295
  unsigned long: 4294967295
  unsigned long long: 18446744073709551615
  */
  return 0;
}

int 计算机中占4个字节,32位,是有符号数,long long ,占8个字节,64位。

题目1:计算两个整数的和

题目描述:编写一个程序,接受两个整数输入,计算它们的和,并输出结果。

输入:两个整数,用空格分隔

输出:两个整数的和

样例输入:10 20

样例输出:30

代码:

#include <iostream>
int main() {
    int num1, num2, sum;
    std::cin >> num1 >> num2;
    sum = num1 + num2;
    std::cout << sum << std::endl;
    return 0;
}

输出为:

题目2:计算两个整数的差

题目描述:编写一个程序,接受两个整数输入,计算它们的差,并输出结果。

输入:两个整数,用空格分隔

输出:两个整数的差

样例输入:20 10

样例输出:10

代码:

#include <iostream>
int main() {
    int num1, num2, difference;
    std::cin >> num1 >> num2;
    difference = num1 - num2;
    std::cout << difference << std::endl;
    return 0;
}

输出为:

题目3:计算两个整数的乘积

题目描述:编写一个程序,接受两个整数输入,计算它们的乘积,并输出结果。

输入:两个整数,用空格分隔

输出:两个整数的乘积

样例输入:5 6

样例输出:30

代码:

#include <iostream>
int main() {
    int num1, num2, product;
    std::cin >> num1 >> num2;
    product = num1 * num2;
    std::cout << product << std::endl;
    return 0;
}

输出为:

题目4:计算两个整数的商

题目描述:编写一个程序,接受两个整数输入,计算它们的商,并输出结果。如果第二个整数是0,则输出“除数不能为0”。

输入:两个整数,用空格分隔

输出:两个整数的商或者错误信息

样例输入:10 2

样例输出:5

样例输入:10 0

样例输出:除数不能为0

代码:

#include <iostream>
int main()
{
    int num1, num2, quotient;
    std::cin >> num1 >> num2;
    quotient = num1 / num2;
    std::cout << quotient << std::endl;
    return 0;
}

输出为:

添加除数为0的代码

#include <iostream>
int main() {
    int num1, num2, quotient;
    std::cin >> num1 >> num2;
    if (num2 == 0) {
        std::cout << "除数不能为0" << std::endl;
    } else {
        quotient = num1 / num2;
        std::cout << quotient << std::endl;
    }
    return 0;
}

这些题目都是基础的整数运算题目,适合初学者练习。通过这些练习,可以加强对整数类型 int 的理解和使用。

相关文章
|
22天前
|
C语言 C++
C/C++ 自定义头文件,及头文件结构详解
还是从"stdio.h"说起,这是C语言中内置的标准库,也就是说,头文件很多时候其实就是一个“库”,类似于代码的仓库,也就是说将某些具有特定功能的常量、宏、函数等归为一个大类,然后放进这个“仓库”,就像stdio.h就是一个标准输入/输出的头文件
29 1
C4.
|
2月前
|
算法 程序员 C++
C++标准头文件结构
C++标准头文件结构
C4.
25 0
|
7天前
|
编译器 C++
C++_int负数转unsigned
C++_int负数转unsigned
15 0
|
8天前
|
存储 搜索推荐 C++
【C++高阶(二)】熟悉STL中的map和set --了解KV模型和pair结构
【C++高阶(二)】熟悉STL中的map和set --了解KV模型和pair结构
|
21天前
|
Python
在Python中,整型(int)
【4月更文挑战第9天】Python的整型(int)数据类型支持无限大小的整数,包括正数、负数和零。可通过加、减、乘、除、取模和幂运算进行操作。使用`int()`函数可进行类型转换,例如将浮点数转为整数。Python还支持位运算,如按位与、或、异或、取反、左移和右移。整型无固定范围,但大规模数据可能消耗大量内存。注意整数除法会丢失小数部分,浮点数转整数会截断。
7 1
|
24天前
|
程序员 C语言 C++
C++流程结构
C++流程结构
|
2月前
|
存储 程序员 C语言
【C/C++ 数据结构 】二维数组结构解析
【C/C++ 数据结构 】二维数组结构解析
44 0
|
2月前
|
存储 算法 C语言
【C/C++ 链表结构】探索链表迭代器:C++实现的深入分析与优化策略
【C/C++ 链表结构】探索链表迭代器:C++实现的深入分析与优化策略
39 0
|
2月前
|
存储 算法 C++
【C++ map结构 】std::map 和 std::unordered_map 在使用上的差异
【C++ map结构 】std::map 和 std::unordered_map 在使用上的差异
22 0
|
2月前
|
存储 算法 C++
【C++ 包装器类 map】C++ 标准库(std)中的map结构 哈希表(unordered_map)和黑红树(map)教程
【C++ 包装器类 map】C++ 标准库(std)中的map结构 哈希表(unordered_map)和黑红树(map)教程
85 1