C5-二維數組、字符串數組、多維數組

一、二維數組
1.二維數組定義:
這裏寫圖片描述
注:常量表達式1->第一維度
常量表達式2->第二維度
可以沒有第一維度的長度,但一定要寫第二維度長度
若不指定第一維度,就一定要加初值
2.使用二位數組中的元素,數組名[第一維度下標][第二維度下標]
這裏寫圖片描述
二、字符數組(注:每個字符串長度不能超過第二個維度的長度-1)
這裏寫圖片描述

三、三維數組
這裏寫圖片描述

代碼:

int main(int argc, const char * argv[]) {

//二維數組定義
//類型說明符 數組名[常量表達式1][常量表達式2] = 初值
//常量表達式1->第一維度
//常量表達式2->第二維度

// int array[3][4] = {0};
// int array1[2][3] = {1, 2, 3, 4, 5, 6};
//可以沒有第一維度的長度,但一定要寫第二維度長度
//若不指定第一維度,就一定要加初值
// int array2[][3] = {1, 2, 3, 4, 5, 6};
//語法糖
// int a[3] = {1, 2, 3};
// printf(“%d\n”, 2[a]);

//使用二維數組中的元素,數組名[第一維度下標][第二維度下標]

// int array[2][3] = {1, 2, 3, 4, 5 ,6};
// printf(“%d\n”, array[1][2]);

// float array[7][8] = {0};
// array[2][4] = 3.3;
// printf(“%f “, array[2][4]);

// int array[2][3] = {1, 2, 3, 4, 5, 6};
// //遍歷行
// for (int i = 0; i < 2; i++) {
// //遍歷列
// for (int j = 0; j < 3; j++) {
// printf(“%d “, array[i][j]);
// }
// printf(“\n”);
// }

//生成隨機數組,輸出個位爲‘7’的數

// int array[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4; j++) {
// array[i][j] = arc4random() % (40 - 20 + 1) + 20;
// if (7 == array[i][j] % 10) {
// printf(“%d “, array[i][j]);
// }
// //printf(“%d “, array[i][j]);
// }
// printf(“\n”);
// }

//數組行列交換

// int a[2][3] = {1, 2, 3, 4, 5, 6};
// int b[3][2] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 2; j++) {
// b[i][j] = a[j][i];
// printf(“%d “, b[i][j]);
// }
// printf(“\n”);
// }

//求一個數組中的最大數以及所在位置

// int max = 0;
// int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4; j++) {
// max = max > a[i][j] ? max : a[i][j];
// }
// }
// printf(“最大數是:%d\n”, max);
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4; j++) {
// if (max == a[i][j]) {
// printf(“在第%d行,第%d列”, i + 1, j + 1);
// }
// }
// }
// printf(“\n”);

//一維數組字符定義

// char str[5] = {‘a’, ‘b’, ‘c’};
// char str[5] = “abc”;

//二維數組字符定義

// char array[2][2] = {‘a’, ‘b’, ‘c’, ‘d’};
// char array[2][2] = {“ab”, “cd”};
//
// char array[2][3] = {“ab”, “cd”};
// printf(“%c\n”, array[0][1]);
// printf(“%s\n”, array[0]);
// printf(“%s\n”, array[0]);

// char a[4][30] = {“chexiaoming”, “zhangzhengmei”, “lijiawei”, “jiangyunlong”};
// long max = 0;
// for (int i = 0; i < 4; i++) {
// long ret = strlen(a[i]);
// max = max > ret ? max : ret;
// printf(“%ld “, ret);
// }
// printf(“\n%ld “, max);

// char a[4][30] = {“chexiaoming”, “zhangzhengmei”, “lijiawei”, “jiangyunlong”};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 3 - i; j++) {
// //判斷大小
// if (strcmp(a[j], a[j + 1]) > 0) {
// //交換
// //注意:空瓶的大小要足夠容納最長的字符串
// char temp[30] = {0};
// //注意:字符串不能用’=’進行賦值
// strcpy(temp, a[j]);
// strcpy(a[j], a[j + 1]);
// strcpy(a[j + 1], temp);
// }
// }
// }
// for (int i = 0; i < 4; i++) {
// printf(“%s “, a[i]);
// }

//int a[2][3][4] = {0};
//表示整型的三維數組,2層3行4列
//元素個數 2*3*4 = 24個

//三維數組遍歷(注意:for循環中的循環條件的數值)

// int a[2][3][4] = {0};
// for (int i = 0; i < 2; i++) {
// for (int j = 0; j < 3; j++) {
// for (int n = 0; n < 4; n++) {
// a[i][j][n] = arc4random();
// printf(“%d “, a[i][j][n]);
// }
// printf(“\n”);
// }
// printf(“\n”);
// }

return 0;

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章