演習6ー9
問:要素数がnであるint型の配列vの要素の並びを反転する関数を作成せよ。
void rev_intary(int v[], int n)
// Ex0609.c
#include <stdio.h>
#define NUMBER n
void rev_intary(int v[], int NUMBER)
{
for (int i = 0; i < (NUMBER / 2); i++) {
int tmp = v[i];
v[i] = v[(NUMBER - 1) - i];
v[(NUMBER - 1) - i] = tmp;
}
}
int main(void) {
int i, n, x[100];
do {
printf("入力する要素数を指定してください:");
scanf("%d", &n);
if (n <= 0 || n > 100) {
puts("1 以上 100 以下の整数を入力してください。");
}
} while (n <= 0 || n > 100);
printf("%d 個の整数を入力して下さい。\n", n);
for (i = 0; i < n; i++) {
printf("x[%d] : ", i);
scanf("%d", &x[i]);
}
printf("要素を反転\n");
rev_intary(x, n);
for (i = 0; i < n; i++) {
printf("x[%d] = %d\n", i, x[i]);
}
return 0;
}
コメント
特になし。
書籍情報
コメント