Entiendo que lo que quieres hacer es un vector de cadenas de caracteres. Entonces como una cadena de caracteres ya es un vector, pues necesitas un vector de vectores. Un vector de vectores es lo mismo que una matriz.
#include <stdio.h>
#define MAX_ARTICULOS 4
#define MAX_SIZE 100
int main(){
char descripciones[MAX_ARTICULOS][MAX_SIZE];
for(size_t i = 0; i < MAX_ARTICULOS; ++i){
printf("Introduce la descripcion del articulo %d: ", i
+1); fgets(descripciones
[i
], MAX_SIZE
, stdin
); }
for(size_t i = 0; i < MAX_ARTICULOS; ++i)
printf("Descripcion %d: %s", i
+1, descripciones
[i
]); }
Ahí tienes un ejemplo de cómo trabajar con vectores de cadenas. Piensa que cada línea es una cadena (una frase) y cada columna es un caracter.
Puedes probar ese pequeño código para que veas cómo funciona o intentar hacer algún cambio para entender el funcionamiento. También puedes por ejemplo pedir el número de artículos a tratar y si es menor que <MAX_ARTICULOS> usarlo como condición del bucle.