亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++如何實現轉置矩陣的循環

發布時間:2022-01-02 17:50:02 來源:億速云 閱讀:536 作者:小新 欄目:開發技術

這篇文章主要介紹了C++如何實現轉置矩陣的循環,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

    前言

    矩陣的轉置主要考查我們對循環的使用,通過簡單的循環結構,我們可以很方便的完成矩陣的轉置。

    C++如何實現轉置矩陣的循環

    一、思路分析

    轉置矩陣與原矩陣的區別在于行列交換,我們可以構建一個二維數組完成對原矩陣的存儲,我們只需將每個元素與其行列相反的位置處的元素進行交換,就可完成對矩陣的轉置。

    C++如何實現轉置矩陣的循環

    二、代碼實現

    1.轉置矩陣函數

    我們首先編寫一個函數,完成對矩陣的轉置。

    代碼如下(示例):

    /* Alkaid#3529 */
    
    // 轉職矩陣函數,按照指定的矩陣大小將矩陣轉置
    void transpose_matrix(int matrix[10][10], int a);
    
    // 函數實現
    void transpose_matrix(int matrix[10][10], int a) // int matrix[10][10] 為存儲矩陣的數組,int a 為所需轉置矩陣的大小
    {
    	int mid = 0; // 中間量,輔助值的傳遞
    
    	for (int i = 0; i < a; i++) // 從行開始,逐行檢索
    	{
    		for (int j = i + 1; j < a; j++) // 對該行每一列的元素檢索
    		{
    		// 將對應位置的兩個元素交換位置
    			mid = matrix[i][j];
    			matrix[i][j] = matrix[j][i];
    			matrix[j][i] = mid;
    		}
    	}
    
    	return;
    }

    2.調用函數實現轉置矩陣

    我們在主函數中只需調用已經寫好的函數,對轉置前后的矩陣分別輸出即可。

    代碼如下(示例):

    /* Alkaid#3529 */
    
    #include<iostream>
    using namespace std;
    
    // 轉職矩陣函數,按照指定的矩陣大小將矩陣轉置
    void transpose_matrix(int matrix[10][10], int a);
    
    int main()
    {
    
    	int matrix[10][10];
    	int size = 0;
    
    
    	for (int i = 0; i < 10; i++)
    	{
    		for (int j = 0; j < 10; j++)
    		{
    			matrix[i][j] = (i * i + j * i + j ^ i) % 10;
    		}
    	}
    
    	//  讀入要求的矩陣大小,方便起見,使用矩陣的默認值,默認為方陣
    	cout << "請輸入矩陣的尺寸 (方便起見,矩陣大小設在10以內) :\n";
    	cout << "size = ";
    	cin >> size;
    
    	cout << "\n原矩陣為:\n";
    
    	// 輸出原矩陣
    	for (int i = 0; i < size; i++)
    	{
    		for (int j = 0; j < size; j++)
    		{
    			cout << matrix[i][j] << "  ";
    		}
    		cout << endl;
    	}
    
    	transpose_matrix(matrix, size);
    
    	cout << "\n轉置后的矩陣為:\n";
    
    	//  輸出轉置后的矩陣
    	for (int i = 0; i < size; i++)
    	{
    		for (int j = 0; j < size; j++)
    		{
    			cout << matrix[i][j] << "  ";
    		}
    		cout << endl;
    	}
    
    	return 0;
    
    }
    
    void transpose_matrix(int matrix[10][10], int a)
    // int matrix[10][10] 為存儲矩陣的數組,int a 為所需轉置矩陣的大小
    {
    	int mid = 0; // 中間量,輔助值的傳遞
    
    	for (int i = 0; i < a; i++) // 從行開始,逐行檢索
    	{
    		for (int j = i + 1; j < a; j++) // 對該行每一列的元素檢索
    		{
    			// 將對應位置的兩個元素交換位置
    			mid = matrix[i][j];
    			matrix[i][j] = matrix[j][i];
    			matrix[j][i] = mid;
    		}
    	}
    
    	return;
    }

    運行程序,看看效果如何。

    C++如何實現轉置矩陣的循環

    C++如何實現轉置矩陣的循環

    正常運行,且功能完整,可以放心復制黏貼使用。

    感謝你能夠認真閱讀完這篇文章,希望小編分享的“C++如何實現轉置矩陣的循環”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    c++
    AI

    文成县| 理塘县| 炎陵县| 六枝特区| 合水县| 吉隆县| 日喀则市| 宣恩县| 双城市| 佛教| 安庆市| 卢湾区| 阿拉尔市| 瑞安市| 江北区| 乐亭县| 太原市| 云和县| 葫芦岛市| 洛宁县| 海南省| 田阳县| 会东县| 恩平市| 淮滨县| 阜宁县| 丰台区| 砚山县| 长泰县| 碌曲县| 四川省| 安达市| 元朗区| 湖口县| 文山县| 永济市| 项城市| 丰宁| 克山县| 柘城县| 昭通市|