初歩的な質問ですみません。
配列の動作を確認しようとa[0]からa[4]まで0-4とカウントするように書いてみたのですが
実行してみると a[3] だけ 29637605 になってしまいしました。
ためしに桁数を変えてみると0-2までむちゃくちゃな答えになってしまいました
どこが悪いのでしょうか?

#include <stdio.h>

int main()
{
int a[5];
int tmp;

for (tmp = 0; tmp < 5; tmp++)
{
a[tmp] = tmp;
tmp++;
}

for (tmp = 0; tmp < 5; tmp++)
printf("a[%d] = %d\n" , tmp , a[tmp]);

return 0;
}