日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【MATLAB】数据类型 ( 元胞数组 | 单位阵 | 幻方 | 结构体 | 元胞数组值获取 )

發布時間:2025/6/17 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【MATLAB】数据类型 ( 元胞数组 | 单位阵 | 幻方 | 结构体 | 元胞数组值获取 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、元胞數組
    • 1、定義元胞數組
    • 2、生成單位陣
    • 3、生成幻方
    • 4、元胞數組元素賦值
    • 5、元胞數組元素賦值 二
  • 二、元胞數組
    • 1、定義結構體
    • 2、小括號獲取元胞數組子數組
    • 3、大括號獲取元胞數組值
  • 三、代碼示例





一、元胞數組





1、定義元胞數組


元胞數組中的元素可以是不同類型的數據 ;

元胞數組定義 : 使用 cell 定義元胞數組 , 其中的兩個參數分別是行數和列數 ;

% 元胞數組定義, 定義一個 23 列的元胞數組 array = cell(2,3)

執行結果 :



2、生成單位陣


eye 函數用于 生成 nnn 階單位陣 ;

% 生成單位陣 eye(3)

運行效果 :



3、生成幻方


magic 函數用于生成 nnn 階幻方 ;

333 階幻方由 999 個數字組成 3×33 \times 33×3 矩陣 , 橫向 , 縱向 , 傾斜方向 , 三個方向上的 333 個數字的總和是相同的 ;

% 生成幻方 magic(3)

運行效果 :



4、元胞數組元素賦值


matlab 中的元胞數組數組索引值從 1 開始 , 主流編程語言 C/C++/Java/Python 等都是從 0 開始 ;

array{2} 指的是元胞數組第 2 個元素 ;

matlab 的二維數組索引優先從列開始 , 第一列, 第二列… , 因此 array{2} 是第一列第二個 ;


代碼示例 :

% eye(3) 生成一個 3x3 對角線數值為 1 的單位矩陣 % matlab 中的索引值從 1 開始 , 主流編程語言 C/C++/Java/Python 等都是從 0 開始 % array{2} 指的是元胞數組第 2 個元素 % matlab 的二維數組索引優先從列開始 , 第一列, 第二列... % 因此 array{2} 是第一列第二個 array{2} = eye(3)

運行效果 :



5、元胞數組元素賦值 二


為第 5 個元素賦值幻方 , 第 5 個元素是第三列第一個元素 ;

代碼示例 :

% 為第 5 個元素賦值幻方 %5 個元素是第三列第一個元素 array{5} = magic(3)

執行效果 :





二、元胞數組





1、定義結構體


結構體使用 struct 關鍵字定義 , 在括號 " ( ) " 之間 , 輸入結構體內容 , 結構體中的內容由鍵值對組成 ;

% 結構體 students = struct('name', {{'Tom', 'Jerry'}}, 'age', [12, 18])

執行效果 : students 結果是 1x1 struct 結構體 ;

獲取結構體 name 對應的值 , 取出的是 1x2 的 cell 元胞數組 ;

% 結構體中的 name 對應的值 ,1x2 的 cell students.name



2、小括號獲取元胞數組子數組


使用小括號 + 索引值 , 取出元胞數組中的元素 , 結果是子元胞數組 ;

% 結構體中的 name 對應的值的第 1 個元素 ,1x1 的 cell % 使用括號取出的是 cell students.name(1)

執行效果 :



3、大括號獲取元胞數組值


使用大括號 + 索引值 , 取出元胞數組中的元素 , 結果是元胞數組中的值 ;

% 結構體中的 name 對應的值的第 1 個元素的值 , 是字符串 % 使用大括號取出的是數據值 students.name{1}

執行效果 :





三、代碼示例



%% 注釋% 普通注釋%% 1. 數字1 + 22 - 12 * 33 / 2%% 2. 字符和字符串 s= 'a' str = 'Hello Woirld !'% 獲取字符 ASCII 碼 abs(s) % 字符 char(65) % 數字轉字符串 num2str(65) % 計算字符串長度, 包括空格 length(str)%% 3. 矩陣% 定義矩陣, 行之間的元素使用 空格 或 逗號隔開 , 每行之間使用分號隔開 ; A = [1,2,3; 4,5,6; 7,8,9;]% 定義矩陣 B , 矩陣值是 A 的轉置矩陣 B = A'% 將矩陣按照列放到一列中 , 依次是第一列,第二列 ... C = A(:)% 逆矩陣, 只有方陣才能求逆矩陣 D = inv(A)% 生成 0 矩陣 , 最后一個 3 代表 3 維矩陣 % 開始的 32 分別代表 32 列 E = zeros(3, 2, 3)% 隨機生成均勻分布的隨機數, 0 ~ 1 區間中 E(:,:,1) = rand(3, 2)% 隨機生成均勻分布的隨機整數, 0 ~ 20 開區間中 E(:,:,2) = randi(20, 3, 2)% 隨機生成正太分布的隨機數, 0 ~ 1 區間中 E(:,:,3) = randn(3, 2)%% 4. 元胞數組% 元胞數組定義, 定義一個 23 列的元胞數組 array = cell(2,3)% 生成單位陣 eye(3)% 生成幻方 magic(3)% eye(3) 生成一個 3x3 對角線數值為 1 的單位矩陣 % matlab 中的索引值從 1 開始 , 主流編程語言 C/C++/Java/Python 等都是從 0 開始 % array{2} 指的是元胞數組第 2 個元素 % matlab 的二維數組索引優先從列開始 , 第一列, 第二列... % 因此 array{2} 是第一列第二個 array{2} = eye(3)% 為第 5 個元素賦值幻方 %3 個元素是第三列第一個元素 array{5} = magic(3)%% 5. 結構體% 結構體 students = struct('name', {{'Tom', 'Jerry'}}, 'age', [12, 18])% 結構體中的 name 對應的值 ,1x2 的 cell students.name% 結構體中的 name 對應的值的第 1 個元素 ,1x1 的 cell % 使用括號取出的是 cell students.name(1)% 結構體中的 name 對應的值的第 1 個元素的值 , 是字符串 % 使用大括號取出的是數據值 students.name{1}

總結

以上是生活随笔為你收集整理的【MATLAB】数据类型 ( 元胞数组 | 单位阵 | 幻方 | 结构体 | 元胞数组值获取 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。