2012-05-17 163 views
0

這個錯誤不斷出現,但我沒有看到代碼(它在C++中)的問題 該程序應該找到一個2×2矩陣運行時檢查失敗#2 - 圍繞變量'B'的堆棧已損壞

#include <iostream> 

using namespace std; 

int main() { 
    float d; 
    float A[2][2], B[2][2]; 

    do { 
     cout << "please enter valid parameters in for 11,12,21,22" << endl; 

     for(int i = 0; i < 2; i++) { 
      for(int j = 0; j < 2; j++) 
       cin >> A[i][j]; 
     } 

     d = (A[1][1] * A[2][2]) - (A[1][2] * A[2][1]); 
    } while(d == 0); 

    B[1][1] = A[2][2] * (1.0/d); 
    B[1][2] = A[1][2] * (-1.0/d); 
    B[2][1] = A[2][1] * (-1.0/d); 
    B[2][2] = A[1][1] * (1.0/d); 

    for(int k = 0; k < 2; k++) { 
     for(int h = 0; h < 2; h++) 
      cout << B[k][h] << " "; 
     cout << endl; 
    } 

    return 0; 
} 

回答

2

您索引B和A 1至2,用它代替從0到1

+0

哦確定謝謝 – noname

相關問題