#include <iostream>
#include <string>

using namespace std;


int main()
{

int COUNT_OF_STRINGS;
cout << "Please, write the count of strings: ";
cin.clear();
cin >> COUNT_OF_STRINGS;

const int MAX_STRING_LEN = 1000;

char temp[MAX_STRING_LEN];

char *S[MAX_STRING_LEN];

for (int i = 0; i < COUNT_OF_STRINGS; i++)
{
  S[i] = new char[MAX_STRING_LEN];
}


// После считывания COUNT_OF_STRINGS в буфере остается символ перевода строки.
// Вам просто надо сбросить буфер после считывания N - например, так
cin.ignore(MAX_STRING_LEN, '\n');

cout << "Please, write " << COUNT_OF_STRINGS << " strings: " << '\n';
for (int i = 0; i < COUNT_OF_STRINGS; i++)
{
  cin.getline(S[i], MAX_STRING_LEN);  
}	
  
  

for (int i = 0; i < COUNT_OF_STRINGS; i++)
{
cout << "S[" << i << "]=" << S[i] << '\n';
}


for (int i = 0; i < COUNT_OF_STRINGS; i++)
{
delete[] S[i];
}


return 0;
}