【C言語】配列array[100]をreverse[100]に逆順にコピーして出力するプログラム

C言語 研修プログラム

ソフトウェア会社の研修時代に作成したプログラムです。
参考になればうれしいです。

今回の研修プログラムは配列を逆順にコピーして出力するという内容です。

配列操作に慣れるために作成した課題です。

スポンサーリンク

Sample Code

/*****************************************************************************
配列array[100]をreverse[100]に逆順にコピーして出力するプログラム

<lesson_010.c> ver1.00
------------------------------------------------------------------------------
作成日:
作成者:

*****************************************************************************/
//---ヘッダファイル---
#include <stdio.h>

//---マクロ宣言---
#define NUMBER 100

/*******************************************************************
---main関数---
********************************************************************/
int main(void)
{
  int i = 0;
  int j = 0;

  int array [NUMBER];
  int reverse [NUMBER];

  /* 配列データ格納(1~100) */
  for(i = 0; i < NUMBER; i++)
  {
    array[i] = i + 1;
  }

  /* array[]をreverse[]に逆順にコピー */
  // iは0で初期化 jはNUMBER(100)で初期化
  for(i = 0, j = NUMBER; i < NUMBER; i++)
  {
    reverse[j - 1] = array[i];  // 例:reverse[99]にarray[0]を格納
    j--;  // jは1ずつ減らす
  }

  /* 配列array[]を表示 */
  printf("\n配列arrayを表示\n");
  for(i = 0; i < NUMBER; i++)
  {
    printf("%3d", array[i]);
    if((i + 1) % 10 == 0)  //10で割ったあまりが0の時のみ改行
    {
      printf("\n");
    }
  }

  /* 配列reverse[]を表示 */
  printf("\n配列reverseを表示\n");
  for(j = 0; j < NUMBER; j++)
  {
    printf("%3d", reverse[j]);
    if((j + 1) % 10 == 0)  //10で割ったあまりが0の時のみ改行
    {
      printf("\n");
    }
  }

  return 0;
}

実行例

その他:研修で作成したC言語プログラム

その他のC言語プログラムはこの投稿にまとめてあります!

C言語の初心者用コードなので是非活用して下さい。
【C言語】研修 サンプルプログラム集

コメント

タイトルとURLをコピーしました