C语言设计

第21章


4) 方括号中常量表达式表示数组元素的个数,如 a[5]表示数组 a 有 5 个元素。但是其下
标从 0 开始计算。因此 5 个元素分别为 a[0],a[1],a[2],a[3],a[4]。
5) 不能在方括号中用变量来表示元素的个数, 但是可以是符号常数或常量表达式。
例如:
    #define FD 5
        main()
       {
        int a[3+2],b[7+FD];
……
}
是合法的。
但是下述说明方式是错误的。
    main()
        {
         int n=5;
         int a[n];
……
}
谭浩强      C 语言程序设计               2001 年 5 月 1 日
6) 允许在同一个类型说明中,说明多个数组和多个变量。
例如:
    int a,b,c,d,k1[10],k2[20];
7.1.2 一维数组元素的引用
数组元素是组成数组的基本单元。数组元素也是一种变量, 其标识方法为数组名后跟
一个下标。下标表示了元素在数组中的顺序号。
数组元素的一般形式为:
数组名[下标]
其中下标只能为整型常量或整型表达式。如为小数时,C 编译将自动取整。
例如:
a[5]
a[i+j]
a[i++]
都是合法的数组元素。
数组元素通常也称为下标变量。必须先定义数组, 才能使用下标变量。在C语言中只
能逐个地使用下标变量,而不能一次引用整个数组。
例如,输出有 10 个元素的数组必须使用循环语句逐个输出各下标变量:
    for(i=0; i=0;i--)
      printf("%d ",a[i]);
}
 
【例 7.2】
main()
{
  int i,a[10];
  for(i=0;i=0;i--)
      printf("%d",a[i]);
 }
 
【例 7.3】
main()
{
  int i,a[10];
  for(i=0;imax) max=a[i];
  printf("maxmum=%d ",max);
}
    本例程序中第一个 for 语句逐个输入 10 个数到数组 a 中。 然后把 a[0]送入 max 中。
在第二个 for 语句中,从 a[1]到 a[9]逐个与 max 中的内容比较,若比 max 的值大,则把该
下标变量送入 max 中,因此 max 总是在已比较过的下标变量中为最大者。比较结束,输出
max 的值。
【例 7.5】
main()
{
  int i,j,p,q,s,a[10];
谭浩强      C 语言程序设计               2001 年 5 月 1 日
  printf("  input 10 numbers: ");
  for(i=0;i<10;i++)
      scanf("%d",&a[i]);
  for(i=0;i<10;i++){
      p=i;q=a[i];
      for(j=i+1;j<10;j++)
  if(q
小说推荐
返回首页返回目录