#include <iostream>
using namespace std;
int main(){
    int a[3], no;
    cout  << "Index Value\n";
    for(int i = 0; i < 100; i++){
        cin >> no;
        a[i] = no;
        cout << i << "\t" << a[i] << endl;
    }
    return 0;
}
Here I initialized a[ 3 ].  In for loop, I'm feeding input 100 times to a[ ], exceeding the indices of [ 3 ].
Why don't it give segmentation error right after when i equals 4.
Input
1 2 3 4 5 6 7
Output
Index Value
 0 1
 1 2
 2 3
 4 0
 5 5
 6 6
 7 7
Output is wrong when Index equals 4. Printed 0 . Expected 4
 
    