一维数组输入输出

如题所述

第1个回答  2022-08-02

方法一、数组的下标法:

如:

int a[5],i;

printf("Input five numbers:");

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

{

scanf("%d",&a[i]);

}

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

{

printf("%4d",a[i]);

}

方法二、指针下标法:

int a[5],  *p=NULL,  i;

printf("Input five numbers:");

p=a;// p=a等价于p=&a[0]  //

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

{

scanf("%d",  &p[i]  );//  &p[i]等价于p+1  //

}

p=a;//   在再次循环开始前,确保指针p指向数组首地址   //

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

{

printf("%4d",  p[i]  );// p[i]等价于*(p+i)  //

}

数组声明

在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。

数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。

相似回答