Какие изменения я должен внести в этот код, чтобы он решал систему линейных уравнений?

#c #loops #matrix #multidimensional-array #linear-algebra

#c #циклы #матрица #многомерный массив #линейная алгебра

Вопрос:

 #include<stdio.h>
int main()
{
    int i,j,k,n;
    float A[20][20],c,x[10];
    scanf("%d",amp;n);//size of matrix
    for(i=1; i<=n; i  )
    {
        for(j=1; j<=(n 1); j  )
        {
            printf(" A[%d][%d]:", i,j);
            scanf("%f",amp;A[i][j]);
        }
    }
    //looking for elements in the diagonal matrix
    for(j=1; j<=n; j  )
    {
        for(i=1; i<=n; i  )
        {
            if(i!=j)
            {
                c=A[i][j]/A[j][j];
                for(k=1; k<=n 1; k  )
                {
                    A[i][k]=A[i][k]-c*A[j][k];
                }
            }
        }
    }

    for(i=1; i<=n; i  )
    {
        x[i]=A[i][n 1]/A[i][i];
        printf("n x%d=%fn",i,x[i]);//solution
    }
    return(0);
}
  

он печатает такие вещи, как «#IO». Предполагается, что алгоритм должен иметь три уравнения с n переменными в качестве входных данных. Я думаю, что проблема в том, что я делю на ноль, но я не знаю, что я могу добавить, чтобы избежать этого.

Комментарии:

1. выглядит нормально: ideone.com/E9S8wK

2. Выполните тест для A[j] [j] и A[i] [i], чтобы избежать деления на 0.

3. Вы должны опубликовать все сообщение, которое оно печатает.