c语言数组输入知识点,c语言学习之基础知识点介绍(十):数组

/*数组:一个变量可以存n个变量。

语法:类型 数组名[长度(正整数)];

例如:int score[5];//定义了一个int类型的数组,长度为5,可以保存5个数据。

char score[5];//定义了一个char 类型的数组,长度为5,可以保存5个数据。

访问数组中的元素:

取值:数组名[编号];

赋值: 数组名[编号] = 值;

元素:数组中实际存放的一个个数据。

下标/索引:系统自动分配的编号,从0开始。

长度:数组实际保存元素的个数。*/

//例如:

int main(int argc,const char *argv[]){int scores[10];//可以保存10个数据。//循环为scores赋值。

for(int i= 0;i<10;i++){

scores[i]=i;

}//循环打印scores的元素。

for(int i= 0;i<10;i++){

printf("第%d个元素的值为:%d",i+1,i);

}

}/*数组的赋值:

1、先声明,后赋值。

类型 数组名[长度];

数组名[下标] = 值;

2、在声明的时候初始化。

1)、类型 数组名[长度] = {数据1,数据2,数据3,数据4,.......};

例如:char charTest[3] = {'a','b','c'};

2)、类型 数组名[] = {数据1,数据2,数据3,数据4,.......};

例如:char charTest[] = {'a','b','c'};

//第二种方式的长度,编译器会根据元素的个数来确定。

3)、类型 数组名[5] = {数据1,数据2};//给的数据小于指定的长度

例如:char charTest[5] = {'a','b','c'};

4)、类型 数组名[5] = {[下标]=数据1,[下标]=数据2,};//给的数据小于指定的长度

例如:char charTest[5] = {[3] = 'a',[1] = 'b',[0] = 'c'};

遍历数组:

用循环依次访问数组中的每一个元素。

数组的越界:

定义:访问不属于数组本身空间的元素,运行时会报错,也可能是未知的异常。

数组最大访问的下标:长度-1。

计算数组的长度:

sizeof(数组名);:得到这个数组占用内存的总长度。

数组的长度 = sizeof(数组名) / sizeof(类型);

注意:

1、数组和数组变量之间,不能赋值。

例如:int nums1[5] = {1,2,3,4,5};

int nums2[5] = nums1;

2、数组名声明后也不能直接赋值。

例如:int nums1[5] ;

nums1 = {1,2,3,4,5};

原因:数组名是一个地址常量。*/

/*数组作为函数的参数:

语法:返回值类型 函数名(类型 数组名[]){ 函数体; }

注意:参数中数组的长度可不写,写了也没用,规范的写法时不写。

下面看一组代码*/

void test1(intnums[]){

nums[0]=11;

nums[1]=22;

nums[2]=33;

}int main(int argc,const char *argv[]){int nums[] = {1,2,3};

test();for(int i = 0;i<3;i++){//注意:这里输出的不是1,2,3,而是11,22,33。

printf("%d",nums[i]);

}return 0;

}/*上面的代码涉及到另外一个概念:引用传递。

概念:传递的是地址,相当于把该变量的内存地址共享给函数。

特点:在函数内部改变了形参的值,外面的实参也会发生变化。

说明:基本数据类型(int,char,long,double,float,short)不是引用传递;

数组是引用传递。

注意:1、在函数中,不能直接计算形参(数组)的长度,永远等于2。解决办法就是在多传递一个参数,作为数组的长度。

2、函数的数组形参可以不写长度,但是区分类型。*/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值