C语言数组

数组分为 一维数组和二维数组

同一数组其所有元素的数据类型都是相同的

数组名的定义符合标识符规范

数组开辟完大小不可以改变

数组名不可以和其他变量名相同

认识一维数组

一般形式int a[5] 其地址为连续 

开辟5个int 类型空间一个空间有4个字节 a[0],a[1],a[2],a[3],a[4] 一个空间内有4个字节,其空间内首个字节的地址为空间地址

a[0]+1=a[1]

int         a[5] :定义长度为5,int类型的数组

a:数组名,数组的首地址a为常量不可进行自增自减,不可进行赋值

 

 char会开辟一个字节

char a[5] a[0],a[1],a[2],a[3],a[4]

 int a[5] 数组的开辟

a[0]-a[4]里[]的数是描述数组的的第几位

可以用符号常量或者字符常量或者整形表达式

eg:int b; int a[b];不可以 因为数组名不可以和其他数组名相同 int a(3);数组表达不对应为[],int a[2,3];

数组可以为符号常量,整型常量,或者整型表达式。int auto[10]不可以因为auto为特殊字符 其表达式得符合标识符规范。

数组元素

1.是组成数组的基本单元

2.数组下标从0开始

3.可以理解为变量

4。相邻数组元素地址连续

引用数组元素时,下标可以是整型常量,整型变量,整型表达式

eg;int a[5]; a[2];a[2+1];a[2<1];int b=3; a[b]

一维数组的引用

c语言只能逐个引用数组里的元素,而不可以一次引用整个数组

 sizeof()关键字

sizeof()是一个判断数据类型或者表达式长度的运算符 

 一维素组的初始化

int a[5]={1,2,3,4,5}         =                a[0]=1,a[1]=2,a[2]=3,a[3]=4,a[4]=5

inta[10]={1,2,3,4,5}        =                a[0]=1.....a[4]=5        a[5]-a[9]=0

c语言初始化时数组长度超过正常输出长度会产生告警

c语言的引用时(输出长度)超过数组长度时不会报错

 

 

 算法:计算学生成绩平均值

 算法:输出最大值

 

 冒泡排序

for(i=0;i<5;i++)

        if(a[i]>a[i+1]

{t=a[i];a[i]=a[i+1];a[i+1]=t}

依次进行循环进行大小比较并且进行排序外循环一次内循环n次

 

 二维数组

类型名 数组名[整型常量][整型常量]

int a[2][3]

char a[2][3]

float a[2][3]

2.存储方式

数组元素连续存放,地址连续

int a[2][3] 2行三列 a[0][0] a[0][1] a[0][2]

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

a[0]是第一行的数组名 a[1]第二行的数组名 a=&a[0] a[0]=&a[0][0] a+1=a[1] a[0]+1=&a[0][1]

二维数组的初始化

int a[3][3]={1,2,3,4,5,6,7,8,9}

inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};

int a[][3]={{1,2,3},{4,5,6},{{7,8,9}}

int a[3][4]={{1},{5},{9}};={1,0,0,0}{5,0,0,0},{9,0,0,0}

int a[3][4]={{1},{0,6},{0,0,0,1};={1,0,0,0}{0,6,0,0}{0,0,11,0}

输出矩阵并且判断最大值在第几个数 

缺陷:不能判断是否有相同的最大值,和相同的在第几位。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值