首页 > 编程知识 正文

c语言数组概念及作用,c语言数组的定义方法

时间:2023-05-04 15:24:59 阅读:266114 作者:3658

定义方法:

类型  变量名[元素个数];

比如:

int  a[6];

char b[24];

double c[3];

注意,c语言中数组的元素个数是不能动态定义的(修改:在c99中已经可以了)

也就是说,下面的代码是错误的:

#include <stdio.h>#include <stdlib.h>int main(){ int a[6]; char b[24]; double c[3]; int n; printf("请输入n的值n"); scanf("%d",&n); int r[n];//这样是不行的,因为从语言的数组是不能动态定义的,必须要是一个常量; return 0;}

访问数组:用循环的方式访问数组,可以防止数组越界,把计数器的初始值设置为0;

#include <stdio.h>#include <stdlib.h>int main(){ int a[6]; for(int i=0;i<6;i++) { a[i]=i; } for(int j=0; j<6;j++) { printf("%dn",a[j]); } return 0;}

把数组和输入的值结合起来,把数组的复制和输入放到循环里面:

如下,计算六个数的平均值,记得转化为浮点型,因为平均值

#include <stdio.h>#include <stdlib.h>#define NUM 6int main(){ int a[NUM]; int sum = 0; for(int i=0;i<6;i++) { printf("请输入第%d位同学",i+1); scanf("%d",&a[i]); sum+=a[i]; } printf("%dn",sum); printf("%.2fn",(double)sum/NUM); return 0;

数组的初始化,未赋值的则全部添0;

如果初始化了又完全没有赋值的话,会打印一些乱七八糟的东西。

int a[10] ={0};//把第一个元素赋值为0,也就是后面全都加零;

int a[10] = {1,2,3,14,15,15,13,14,14,13};//直接赋值

int a[10] = {1,2};//后面八个数全都添为0;

如果已经写出了初始化的数组元素的值,那就可以不写长度:编译器会自己计算

int[] = {1,2,1,3,4};

c99的新特性,可以指定一些元素,其他会全部置零;

用sizeof计算法会计算数组总的占的位数。

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。