prob2(): By using a pointer to pointer **A and the function malloc()

allocate the memory for the 4x4 matrix A[][]. By using a pointer *b

and the function malloc() allocate the memory for the 4-dimensional vector

b[]. Read the components of A and b from the given input file matrix.dat.

The last line of the input file contains the components of b. The rows of

matrix A are the first four lines of the input file. Print the components

of A[][] row by row, and the components of b[]. Using the function gauss()

given in the lecture notes week9.txt, solve the system of linear algebraic

equations A[][]*x[]=b[]. Print the components of the solution vector x[].

Calculate and print the length of this vector. Free the allocated memory.

..

the code that i constructed is as followed starting with the gauss

Code:double **A, *b; int row; s=gauss(4,A,b); printf("x[]={%7.3f", s); for(row=0; row<4; row++) free(A[row]); printf("\nThe length of x[] is"); free(A); free(b); fclose(input); } return; } double gauss(int n, double **A, double *b) { double one = 1.0, zero=0.0; double i, j; double s; int nm, row, col, Arow; nm = n-1; if(n==1) { b[0] /= A[0][0]; A[0][0] = one; return; } for(row=0; row<nm; row++) { i = A[row][row]; A[row][row] = one; for(col=row+1; col<n; col++) A[row][col] /=i; b[row] /=i; for(Arow=row+1; Arow<n; Arow++) { j=A[Arow][row]; A[Arow][row]=zero; for(col=row+1; col<n; col++) A[Arow][col] -= j * A[row][col]; b[Arow] -= j * b[row]; } } b[nm] /= A[nm][nm]; for(row=nm-1; row>=0; row--) { for(col=row+1; col<n; col++) b[row] -=A[row][col]*b[col]; s=b[row]; } return s;