#include<iostream>
using namespace std;
int addition(int sohaib[100][100], int waleed[100][100]) {
int row, column;
int sum[100][100];
for (int i = 0; i < 5; i )
{
for (int j = 0; j < 5; j ) {
sum[i][j] = sohaib[i][j] waleed[i][j];
}
}
for (int i = 0; i < row; i )
{
for (int j = 0; j < column; j ) {
cout << sum[i][j] << "\t";
}
}
}
int main() {
int row, column;
cout << "Enter the Rows and columns. "; cin >> row >> column;
int sohaib[100][100];
int waleed[100][100];
for (int i = 0; i < row; i ) {
for (int j = 0; j < column; j ) {
cin >> sohaib[i][j];
cin >> waleed[i][j];
}
}
addition(sohaib, waleed);
return 0;
}
請幫忙處理這段代碼,我終于設法讓它作業,但它沒有顯示。在此之前,它是 int add(int sohaib[row][column], int waleed[row][column]) 不起作用。幫助。
uj5u.com熱心網友回復:
行。所以這是我建議的解決方案。此代碼未使用 C 容器,例如std::vector或其他。但它是動態作業的,即您的矩陣可以是任意大小。如果我在評論中正確閱讀并假設這與課程有關,教授 C/C ,我認為這是在使用 C 中方便的容器之前更深入地了解指標。通過這種方式,您可以了解他們在表面下所做的事情。這并不像看起來那么容易,我留下了一些注釋掉的代碼,這樣你就可以看到我是如何找到一種快速測驗它的方法而不必每次都輸入數字的。要了解代碼的實際作業原理,請閱讀并使用指標!您不會通過復制此代碼來學習。
#include<iostream>
using namespace std;
int** createMatrix(int numRows, int numColumns)
{
int** matrix;
matrix = new int *[numRows];
for (int r = 0; r < numRows; r )
matrix[r] = new int(numColumns);
return matrix;
}
void deleteMatrix(int **matrix)
{
delete[] matrix;
}
void sumMatrix(int** matrixA, int** matrixB, int** const sum, int numRows, int numColumns)
{
for (int i = 0; i < numRows; i )
{
for (int j = 0; j < numColumns; j ) {
sum[i][j] = matrixA[i][j] matrixB[i][j];
}
}
}
void printMatrix(int **matrix, int numRows, int numColumns)
{
cout << endl;
for (int i = 0; i < numRows; i )
{
for (int j = 0; j < numColumns; j ) {
cout << matrix[i][j] << "\t";
}
cout << endl;
}
}
int mainJ() {
//int numRows = 2, numColumns = 2;
int numRows, numColumns;
cout << "Enter the number of rows: ";
cin >> numRows;
cout << "Enter the number of columns: ";
cin >> numColumns;
int** sohaib = createMatrix(numRows, numColumns);
int** waleed = createMatrix(numRows, numColumns);
int** sum = createMatrix(numRows, numColumns);
for (int i = 0; i < numRows; i ) {
for (int j = 0; j < numColumns; j ) {
//sohaib[i][j] = 1;
//waleed[i][j] = 2;
cin >> sohaib[i][j];
cin >> waleed[i][j];
}
}
sumMatrix(sohaib, waleed, sum, numRows, numColumns);
printMatrix(sum, numRows, numColumns);
deleteMatrix(sohaib);
deleteMatrix(waleed);
deleteMatrix(sum);
return 0;
}
uj5u.com熱心網友回復:
這個給你:
#include<iostream>
int row, col;
int const row_lim = 100, col_lim = 100;
int arr1[row_lim][col_lim], arr2[row_lim][col_lim], arr3[row_lim][col_lim];
void read(int dest[][col_lim]) {
int i, j;
for (i = 0; i != row; i) {
for (j = 0; j != col; j) {
std::cin >> dest[i][j];
}
}
}
void sum(int const lhs[][col_lim], int const rhs[][col_lim], int dest[][col_lim]) {
int i, j;
for (i = 0; i != row; i) {
for (j = 0; j != col; j) {
dest[i][j] = lhs[i][j] rhs[i][j];
}
}
}
void print(int const src[][col_lim]) {
int i, j;
int const col_last = col - 1;
for (i = 0; i != row; i) {
for (j = 0; j != col; j) {
std::cout << src[i][j] << (j != col_last ? '\t' : '\n');
}
}
}
int main() {
std::cout << "row = "; std::cin >> row;
std::cout << "col = "; std::cin >> col;
read(arr1);
read(arr2);
sum(arr1, arr2, arr3);
print(arr3);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/417704.html
標籤:
