全站搜索未启用
跳到主要内容

文本二:一维数组的定义和使用

1.一维数组定义语句格式

<元素类型关键字> <数组名> [<常量表达式>][={<元素初值表>}];

如:int grade[10];

一维数组的存储空间大小:等于元素类型长度乘以数组长度。

如 int a[10]; 占用40个字节

2.一维数组定义语句举例

(1) int a[20];//a[0] a[1] … a[19] 80

(2) double b[MS];//b[0] b[1] … b[NS-1] 8*MS

(3) int c[5]={1,2,3,4,0};//数组长度5 占用字节数20

(4) char d[]={a,b,c,d};//d[0]=a d[1]=b d[2]=c d[3]=d

(5) int e[8]={1,4,7};//e[0]=1 e[1]=4 e[2]=7 e[3]-e[6]=0

(6) char f[10]={B,A,S,I,C};// f[5]-f[9]=’\0’

(7) float h1[5], h2[10];//一条语句中定义多个同类型数组

(8) int x=1, y=2, w[4]={0};//同在一条语句中定义简单变量和数组

3.一维数组元素的使用

int a[10];

下标变量表示:<数组名>[<下标表达式>]

下标表达式:常量、变量、函数或一般表达式

下标变量例:a[5]、a[i]、a[j++]、a[2*x+1]

数组与下标变量具有相同的表示格式,但具有不同的出现场合。

int a[6]={1,2,3,4,5,6};// a[6]为数组,数组长度为6

表达式a[4]*3+2中的a[4]为下标变量,表达式值为5*3+2=17。

使用一维数组的程序举例

程序1:


#include <stdio.h>
void main() 
{
  int i, a[6];
  printf("输入6个整数: ");
  for(i=0;i<6;i++) scanf("%d",&a[i]);
  for(i=5;i>=0;i--) printf("%d ",a[i]);
  printf("\n");
   }
输入:3 8 12 6 20 15 


输出:15 20 6 12 8 3 

程序2:


#include <stdio.h>
#define M 10
void main() 
{
  int i, a[M+1];
  a[0]=1; a[1]=2;
  for(i=2; i<=M; ++i) a[i]=a[i-1]+a[i-2];
    //a[2]=a[1]+a[0]=3, a[3] =a[2]+a[1]=5, a[4]=8,
  for(i=0; i<M; ++i) printf("%d, ",a[i]);
  printf("%d\n",a[M]);
   }
输出:1,2,3,5,8,13,21,34,55,89

最后修改: 2019年09月26日 Thursday 18:50