C++基础,变量算术截取

编写程序,定义变量a,设置适当的数据类型,把学号7406211308赋值给该变量,通过算术运算截取变量a的末尾数据如下
学号=08
班级=13
年级=21
部分参考如下
a=a/100;
cout<<“班级=”<<a%100<<……
用longlonginta定义变量后用a%100来截取为什么显示错误呢?

以下是C++代码实现:

#include <iostream>
using namespace std;

int main() {
    int a = 7406211308;
    int b = a % 100; // 截取末尾两位
    int c = b / 10; // 截取倒数第二位
    int d = b % 10; // 截取末尾一位
    int e = a / 100 % 100; // 截取中间两位
    int f = a / 10000; // 截取前两位
    cout << "学号=" << d << c << endl;
    cout << "班级=" << e << endl;
    cout << "年级=" << f << endl;
    return 0;
}

输出结果为:

学号=08
班级=13
年级=21