C++学习笔记-2022.10.22

2022.10.22-C++学习笔记

part1 : 数组

1、为什么使用数组

解决大量同类型的数据的存储和使用问题
大部分语言都有数组,数组是很常见的存储数据的结构

2、数组不是学习的重点
很少使用数组,使用的是以数组为内核,别人给造的更方便的工具
3、数组的名称代表数组中第一个元素的地址
4、一维数组

怎样定义一维数组
1、为n个变量连续分配存储空间
2、所有的变量数据类型必须相同
3、所有变量所占的字节大小必须相等
有关一维数组的操作
1、初始化
  完全初始化
    int a[5] = {1,2,3,4,5} ;
  不完全初始化,未被初始化的元素自动为零
    int a[5] = {1,2,3} ;
  不初始化,所有元素是垃圾值
    int a[5] ;
  清零
    int a[5] = {0} ;

只有在定义数组的同时才可以整体赋值,其他情况下整体赋值都是错误的
错误写法:
int a[5];
a[5] = {1,2,3,4,5};

2、赋值
3、排序
4、求最小/最大值
5、倒置
6、查找
7、插入
8、删除

5、二维数组

1、表示形式
int a[3][4];
总共是12个元素,可以当做3行4列看待,这12个元素的名字依次是:

a[0][0] a[0][1]  a[0][2]  a[0][3]
a[1][0]  a[1][1]  a[1][2]   a[1][3]
a[2][0] a[2][1]  a[2][2]   a[2][3]
int a[m][n] : 该二维数组右下角位置的元素只能是a[m-1][n-1] .

2、初始化
int a[3][4] = {
  {1, 2, 3, 4},
  {5, 6, 7, 8},
  {9, 10,11,12}
};
3、输出二维数组
for(int i = 0;i < 3;i++){
  for(int j = 0;j < 4;j++){
    cout<<a[i][j]<<" ";
  }
  cout<<endl;
}
4、对二维数组排序
5、求每一行的最大值
6、判断矩阵是否对称
7、矩阵的相乘

6、多维数组

1、是否存在多维数组
不存在, 因为内存是线性一维的,n维数组可以当做每个元素是 n-1维数组的 一维数组。

比如:
  int a[3][4];
    该数组是含有3个元素的一维数组
    只不过每个元素都可以再分成4个小元素
  int a[3][4][5];
    该数组是含有3个元素的一维数组
    只不过每个元素都是4行5列的二维数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值