Error en la salida al extraer un int de un array двумерный en C

Buenas танго el siguiente código que me понимают el cálculo de un número combinacional:

int combinacional(int_pair par) {
int i,j;
int tabla[par.a+1][par.b+1] ;

if(par.b == 0 || par.b == par.a) {
   return 1;
}
else if (par.b == 1 || par.b == (par.a - 1)) {
    return par.a;
}
else {
   for (i=0; i<=par.a; i++) {
     tabla[i][0] = 1;
   }

   for (i=1; i<=par.a; i++) {
     tabla[i][1] = i;
   }

   for (i=2; i<=par.b; i++) {
     tabla[i][i] = 1;
   }

   for (i=3; i<=par.a;i++) {
     for (j=2; j<par.a; j++) {
       if(j<=par.b) {
         tabla[i][j] = tabla[i-1][j-1] + tabla[i-1][j];
       }
     }
   }
   }

   return tabla[par.a][par.b];
}

En ella hago uso de "int_pair" que sería un equivalente una кортеж доблесть en el cuál se puede seleccionar el primer o Эль-Сегундо, también creo ООН выстраивают двумерный параграф poder guardar Лос доблесть del triángulo se Паскаль y шулер al заключительный el resultado de este. Ошибка El viene al mostrar la salida, параграф ello uso lo siguiente:

void test() {
list enteros = leerFichero4("ficheros/entradaE4.txt");

for (int i = 0; i < enteros.size; i++) {
    int_pair tupla = *(int_pair*) list_get(&enteros, i);
    int result = combinacional(tupla);
    printf("Entrada = %s; ", int_pair_tostring(&tupla, mem));
    printf("Salida = %i\n", result);
    printf("========================================\n");
}
}

int main() {
   test();
}

Esto я muestra lo siguiente:

Entrada = (10,1); Salida = 10
========================================
Entrada = (9,2); Salida = 36
========================================
Entrada = (8,3); Salida = 7105
========================================
Entrada = (7,4); Salida = -996404052
========================================
Entrada = (6,5); Salida = 6
========================================

Сын La dos primeras salidas y la última correctas. Эмбарго греха, сер las demás deben 56 лет 35 лет aparecen punteros posiciones de memoria imagino. Ошибка Supongo que será algún de punteros pero никакой logro encontrarlo.

1
задан 05.12.2019, 14:27
1 ответ

так как я издаю ответ, чтобы делать ее mГЎs ясная, если кто-то входит в нее ища informaciГіn. Как хорошо я respondiГі в комментариях @PaperBirdMaster. Ошибка находилась, в котором она versiГіn использованная не permitГ - в нее creaciГіn arrays, где размеры менялись. Следовательно array tabla был зачинщиком проблемы, так как construГ - в в зависимости от стоимости, полученных из-за parГЎmetro. Следовательно, она soluciГіn он состоял в том, чтобы строить это с tamaГ±o [100][100], имея эту форму одного tamaГ±o закрепил.

1
ответ дан 21.12.2019, 12:19
  • 1
    Пример и возможно explicació n полнее, из-за которого твоего ответа ayudarí в, проверь CГіmo отвечать , так как в момент твой вклад светит немного низкого качества –  Aprendiz 21.12.2019, 00:46
  • 2
    Просто tení в intenció n закрытия вопроса. Благодаря комментариям PaperBirdMaster я смог упорядочивать это создавая array " tabla" с tamañ или 100x100 вместо с tamañ или diná обезьяна, которая менялась в зависимости от pará метры, перешедшие в funció n. –  Jesus_jbs 21.12.2019, 00:49
  • 3
    Он превосходный, однако считает, что эта publicació n возможно será консультировавшая другими людьми, в которых они vendrí в хорошо explicació n, из-за которого этой solució n –  Aprendiz 21.12.2019, 00:51
  • 4
    @Aprendiz я изменил вопрос, спасибо за комментарий. –  Jesus_jbs 21.12.2019, 00:55