演習5ー4
問:List5-8の配列の要素数をオブジェト形式マクロで定義するように変更したプログラムを作成せよ。要素の交換を行う回数に関する規則性を見つけ出す必要がある。
// Ex0504.c
#include <stdio.h>
#define NUMBER 7
int main(void)
{
int x[NUMBER];
for (int i = 0; i < NUMBER; i++) { // 要素の値を組み込む
printf("x[%d] :", i);
scanf("%d", &x[i]);
}
for (int i = 0; i < (NUMBER / 2); i++) { // 要素の並びを反転
int t = x[i];
x[i] = x[(NUMBER - 1) - i];
x[(NUMBER - 1)- i] = t;
}
puts("\n");
puts("反転しました。");
for (int i = 0; i < NUMBER; i++) {
printf("x[%d] = %d\n", i, x[i]);
}
return 0;
}
コメント
入れ替える回数は配列数÷2です。奇数の場合、真ん中に位置する配列はそのままでよいことに気づけるか否か。
書籍情報
コメント