作業九總結

2022-07-15 20:54:15 字數 2346 閱讀 7662

一、知識點

1.二維陣列的定義和引用

(1)二維陣列的定義

型別說明符  陣列名[常量表示式][常量表示式]

例:float  a[3][4],b[5][10]; 

說明:①  可以把二維陣列看作是一種特殊的一維陣列。

a[0] → a[0][0]   a[0][1]   a[0][2]   a[0][3]  

a[1] → a[1][0]   a[1][1]   a[1][2]   a[1][3]

a[2] → a[2][0]   a[2][1]   a[2][2]   a[2][3]

②  二維陣列在記憶體中按行存放

a[0][0]     ↑   a[0][2]      ↑   a[1][0]    ↑    a[1][2]    ↑    a[2][0]    ↑     a[2][2]   ↑

a[0][1]          a[0][3]         a[1][1]          a[1][3]          a[2][1]         a[2][3]    

③  多維陣列定義方式與二維陣列類似

int    x[3][4][2];

float   y[4][2][3];

(2)二維陣列的引用

引用形式為: 陣列名[下標][下標]

注:下標可以是整型表示式,但應在已定義的陣列大小的      

範圍內。

(3)二維陣列的初始化

⒈  分行給二維陣列賦初值。如:

int a[3][4]=,,};

⒉  可以將所有資料寫在花括弧內,按陣列排列的順序對各元素賦初值。

int a[3][4]=

⒊  可以對部分元素賦初值,不賦的為0。如:

int a[3][4]=,,}

int a[3][4]=,,};

⒋  如果對全部元素都賦初值,則定義陣列時對第一維的長度可以不指定,但第二維的長度不能省。

2.矩陣與二維陣列

int   a[n][n];             n是正整數

a[i][j]:i、j的取值範圍[0,n-1]

用二維陣列a表示n*n方陣時,對應關係:

a[0][0]   a[0][1]  a[0][2]   主對角線   i==j

a[1][0]   a[1][1]  a[1][2]   上三角      i<=j

a[2][0]   a[2][1]  a[2][2]   下三角      i>=j

付對角線    i+j==n-1

3.字元陣列

char  str[80];

定義乙個含有80個字元型元素的陣列str

char t[5]=;

初始化陣列 t

(1)  一維字元陣列

char t[5] = ;

static char s[6] = ;

static char s[6]=;

0代表字元'\0',也就是ascii碼為0的字元

static char s[6]=;

(2)字串

字串常量用一對雙引號括起來的字串行

乙個字串結束符 '\0'      字串結束符

6個字元       'h'   'a』   'p』   'p』   'y'     '\0'

字串的有效長度:有效字元的個數

(3)字串與一維字元陣列

字串:乙個特殊的一維字元陣列

字串的儲存-陣列初始化

字串可以存放在一維字元陣列中

static char s[6] = ;

(4)字元陣列初始化:用字串常量

陣列長度 >= 字串的有效長度 + 1

(5)字串的儲存

字串遇 '\0' 結束

'\0' 之後的其他陣列元素與該字串無關

(6)對字串的操作

普通字元陣列:陣列元素的個數是確定的,一般用下標控制迴圈

字串:沒有顯式地給出有效字元的個數,只規定在字串結束符 '\0' 之前的字元都是字串的有效字元,一般用結束符 '\0' 來控制迴圈

迴圈條件:s[i] != '\0'

(7)字串的儲存-賦值和輸入

陣列初始化

static char s[6]= "hello";

賦值s[0]='a'; s[1]='\0';

或者static char s[6]= "a";

輸入'\0' 代表空操作,無法輸入

輸入時,設定乙個輸入結束符

將輸入結束符轉換為字串結束符 '\0'

二、實驗中遇到的問題及解決方法

這次的實驗內容有點難度,後面的兩個實驗內容有不會的地方,問了問做完的同學,其他的還好!以後會越來越難,加油!↖(^ω^)↗!

作業九總結

一知識點總結 1.二維陣列的定義和引用 型別名 陣列名 行長度 列長度 例如 int a 3 2 3行2列,共6個元素。引用 陣列名 行下標 列下標 行下標合理範圍值是 0,行長度 1 列下標合理取值範圍是 0,列長度 1 注意下標不要越界。2.二位陣列的初始化 分行賦值 型別名 陣列名 行長度 列...

作業九 報告及總結

軟體工程 課程既強調基本概念和基本知識的理解和掌握,又側重軟體專案的分析 設計 實現和維護的基本技能。比較注意 點 和 面 的結合。我還是蠻喜歡這門課的,通過對這門課的學習讓我意識到理論學習很重要,實踐更重要,實踐是檢驗真理的唯一標準,只有將理論與實際結合,才更能發揮我們所學的知識的作用。整乙個學期...

作業九 報告及總結

1 在像我一樣沒有什麼基礎的人要怎麼學習好構建之法?這本書讓我更加認識到實踐的重要性,要從做中學。只有實踐了才能夠真正發現自己的不理解的知識,還能夠促進學習的效率。這個學期我自己寫 做火車訂票系統,以前認為學會的知識,一開始做的時候,感覺實踐應用和己看書理解有出入。以前認為這樣做是對的,現在感覺那樣...