配列の有効性を確認する簡単な例

例えば、次のプログラムはもっとも基本的なものでしょう。 整数値を5つ入力し、入力されたのと逆の順に結果を出力するものです。

#include <stdio.h>
main()
{
  int i;
  int a[5];
  for(i=0;i<5;++i){
    printf("a[%d]=", i);
    scanf("%d", &a[i]);
  }
  for(i=4;i>-1;--i){
    printf("%d\n", a[i]);
  }
}

次のプログラムを使っても、全く同じことができます。


#include <stdio.h>
main()
{
  int i;
  int a, b, c, d, e;
  printf("a[0]=");
  scanf("%d", &a);
  printf("a[1]=");
  scanf("%d", &b);
  printf("a[2]=");
  scanf("%d", &c);
  printf("a[3]=");
  scanf("%d", &d);
  printf("a[4]=");
  scanf("%d", &e);
  printf("%d\n", e);
  printf("%d\n", d);
  printf("%d\n", c);
  printf("%d\n", b);
  printf("%d\n", a);

}

このようなプログラムでは、無駄が多いのがわかると思います。 配列とfor文の組み合わせにより、この無駄を省くことができます。 また、繰り返し回数が1000とか10000の場合に、 このようなプログラムは現実的ではないでしょう。
prev index next