Hello everyone, i don't understand whats wrong with this example....

Code:
#include <iostream.h>

void main(){
     double a[4];
     cout << "enter 4 real numbers: \n";
     for (int i = 1; i <=4; i++) {
     cout << i << ": ";
     cin >> a[i-1];

     }
     cout << "Here they are in reverse order:\n";
     for (i = 3; i >= 0; i--)
     cout << "\ta[" << i << "] = " << a[i] << endl;
     }

I get the following errors:
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp: In function `int main(...)':
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:13: name lookup of `i' changed for new ANSI `for' scoping
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:7: using obsolete binding at `i'
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp: In function `int main(...)':
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:16: redefinition of `int main(...)'
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:4: `int main(...)' previously defined here
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp: In function `int main(...)':
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:25: name lookup of `i' changed for new ANSI `for' scoping
c:\my documents\c++programs\programming in c++\array's\printing array numbers.cpp:19: using obsolete binding at `i'

thanks for listenign