Well, for starters you really shouldn't initailize (or for the most part, declare) anything in a loop. The way you have it set up, you'd just be inputting into names[100] everytime, which by the way is outside of the arrays range. The reason you use a for loop for these things is to use the count control as your changing index. Try this:
Code:
#include <iostream>
#include <string>
using namespace std;
const char STUDENTS = 100;
int main(void) {
string names[STUDENTS];
for(int i = 0; i < STUDENTS; i++) {
cout <<"Please enter the Student " << i + 1 <<"'s name." << endl;
getline(cin, names[i], '\n');
}
cin.get();
return 0;
}
Anothing thing worth mentioning that I changed in the example is the use of the string datatype. Using a character array would only allow you to input one name, since each element is only a single character. As it seems, you want to input many names. You need to use a string for that, or a two dimensional array. I also used getline() rather than cin so you can accept spaces in your string.