No creo que sea necesario hacerlo de la manera en que la planteas. Podrías generar un bucle que itere N veces y en cada iteración, realizas cada una de las preguntas, las mismas que podrías guardar en objetos y cada uno de estos en un array general. Teniendo todos estos datos organizados de tal manera, cualquier búsqueda o muestra de datos, será mucho más sencilla.
 
Un ejemplo:   
Código Javascript
:
Ver original- function encuesta(n, preg){ 
-     for (var i = 0, result = [], aux = {}; i < n; i++){ 
-         for (var j in preg) aux[j] = prompt(preg[j]); 
-         result.push(aux); 
-         aux = {}; 
-     } 
-     return console.log(result);  
- } 
- encuesta(3, { 
-     sexo: "Sexo (M|F):", 
-     lugar: "Lugar:", 
-     nivel: "Nivel (A|B|C|D):" 
- }); 
Si, por ejemplo, las respuestas fueran: (M, Tacna, A), (F, Lima, C), (M, Trujillo, D), el resultado final sería así (las propiedades de los objetos se ordenan alfabéticamente de forma automática):    
Código Console:
Ver original- Array( 
-     { 
-         lugar: Tacna, 
-         nivel: A, 
-         sexo: M 
-     }, 
-     { 
-         lugar: Lima, 
-         nivel: C, 
-         sexo: F 
-     }, 
-     { 
-         lugar: Trujillo, 
-         nivel: D, 
-         sexo: M 
-     }, 
- ) 
El proceso es simple. Envío a la función la cantidad de encuestados y las preguntas dentro de un objeto literal. En la función, creo un bucle que iterará N veces (las que haya indicado) y, en cada iteración, recorreré el objeto con las preguntas y las iré realizando una por una. Cada resultado lo guardo en otro objeto literal y finalizada la ronda de preguntas al encuestado, guardo dicho conjunto de datos en el array principal y limpio el objeto auxiliar que es en el que guardo temporalmente las respuestas de cada encuestado. Y si te fijas, tanto la cantidad de encuestados como las preguntas, pueden variar. 
Saludos