2016-07-17 9 views
-4

ので、行2で、A [0] [0] =次いで0スワップ行は

がどのように行列「A」の1行を入れ替えることができガウス消去法における行列の最初の値を仮定します正しい結果が得られるか?

+0

なぜあなたはそれらを交換しますか? –

答えて

-1

同じタイプの一時値を保持します。値によって スワップ値、 例:行だけを交換:以下に示すようにsimpel 2Dアレイが道を構築すると仮定

temp=a[i][j]; 
a[i][j]=a[i+1][j]; 
a[i+1][j]=temp; 
-1

#include <stdio.h> 
#include <stdlib.h> 

#define S_MATRIX_DIM 5 

int main() 
{ 

    int **A; 
    int *tmp; 
    int i, j, entry; 

    entry = 0; 
    A = malloc(S_MATRIX_DIM * sizeof(int *)); 
    for (i = 0; i < S_MATRIX_DIM; i++) { 
    A[i] = malloc(S_MATRIX_DIM * sizeof(int)); 
    for (j = 0; j < S_MATRIX_DIM; j++) { 
     A[i][j] = entry++; 
    } 
    } 

    puts("Matrix A ="); 
    for (i = 0; i < S_MATRIX_DIM; i++) { 
    for (j = 0; j < S_MATRIX_DIM; j++) { 
     printf("%d,", A[i][j]); 
    } 
    putchar('\n'); 
    } 

    tmp = A[0]; 
    A[0] = A[1]; 
    A[1] = tmp; 

    puts("Matrix A, row exchanged ="); 
    for (i = 0; i < S_MATRIX_DIM; i++) { 
    for (j = 0; j < S_MATRIX_DIM; j++) { 
     printf("%d,", A[i][j]); 
    } 
    putchar('\n'); 
    } 

    for (i = 0; i < S_MATRIX_DIM; i++) { 
    free(A[i]); 
    } 
    free(A); 

    exit(EXIT_SUCCESS); 
}