Prueba esto:
Código C:
Ver original#include <stdio.h>
#include <stdlib.h>
int main()
{
int v[20];
int i;
int n_elementos=0;
char op = 's';
while(((op == 's') || (op == 'S')) && (n_elementos<20))
{
scanf("%d", &v
[n_elementos
]); n_elementos++;
}
for(i=0; i<n_elementos; i++)
}
Creo que el problema lo tienes en que estás empleando la variable i antes de asignarle un valor. No debes dar por hecho que una variable declarada dentro del cuerpo de una función se inicie a cero. Estas variables se crean en la pila, y mientras no se les asigne algún valor tomarán el valor correspondiente a lo que hubiera antes en esas posiciones de memoria. En este caso, estabas empleando i como índice, y vete a saber dónde estabas escribiendo el valor leído, de ahí el error que te está dando.
Saludos,