二維陣列操作(程式設計題 簡單)

2021-07-25 16:48:10 字數 1186 閱讀 9711

有乙個資料**為二維陣列(陣列元素為int型別),行長度為row_length,列長度為column_length。對該**中資料的操作可以在單個單元內,也可以對乙個整行或整列進行操作,操作包括交換兩個單元中的資料;插入某些行或列。

請編寫程式,實現對**的各種操作,並跟蹤**中資料在進行各種操作時,初始資料在**中位置的變化軌跡。

詳細要求:

1.資料表規格的表示方式為「行*列」, 資料表元素的位置表示方式為[行,列],行列均從0開始編號

2.資料表的最大規格為9行*9列,對**進行操作時遇到超出規格應該返回錯誤

3.插入操作時,對m*n**,插入行號只允許0~m,插入列號只允許0~n。超出範圍應該返回錯誤

4.只需記錄初始**中資料的變化軌跡,查詢超出初始**的資料應返回錯誤

例如: 初始**為4*4,可查詢的元素範圍為[0,0]~[3,3],假設插入了第2行,陣列變為5*4,查詢元素[4,0]時應該返回錯誤

5.查詢資料要求返回乙個鍊錶,鍊錶中節點的順序即為該查詢的資料在**中的位置變化順序(需包含初始位置)

輸入資料按下列順序輸入:

1 **的行列值

2 要交換的兩個單元格的行列值

3 輸入要插入的行的數值

4 輸入要插入的列的數值

5 輸入要獲取運動軌跡的單元格的值

輸出按下列順序輸出:

1 初始化**是否成功,若成功則返回0, 否則返回-1

2 輸出交換單元格是否成功

3 輸出插入行是否成功

4 輸出插入列是否成功

5 輸出要查詢的運動軌跡的單元查詢是否成功

3 4

1 1 0 1

2 1

2 2

0

0 0 0 0

看題寫碼

程式設計題 二維陣列中查詢

題目 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路 矩陣是有序的,從左下角來看,向上數字遞減,向右數字遞增,因此從左下角開始查詢,當要查詢數字比左下角數字大時。右移 要查詢數...

二維陣列操作

includeusing namespace std int main int line2 int line3 int p 3 for int i 0 i 3 i cout int a 3 3 cout a endl a表示二維陣列第首元素的位址,其實就是元素1的位址 cout a endl a表示...

二維陣列操作運算

編寫乙個通用程式,求出二維陣列的非對角線元素之和,即求兩條對角線之外的元素之和。pragma once include using namespace std class matrix include matrix.h matrix matrix matrix matrix int x 40 int...