C言語では、for
文を使用して配列に値を入力することができます。
配列は同じデータ型の要素を格納するためのデータ構造で、for
文を使うことで効率的に各要素に値を代入できます。
通常、for
文のループカウンタを配列のインデックスとして使用し、array[i] = value;
のようにして値を設定します。
この方法は、配列のサイズが大きい場合や、連続した値を入力する場合に特に有用です。
- 配列の宣言と初期化の方法
- for文を使った配列への効率的な値の入力方法
- 2次元配列への値の入力方法
- ユーザーからの入力を配列に格納する方法
- 配列の要素を条件付きで変更する方法
for文を使った配列への値の入力
配列の宣言と初期化
C言語で配列を使用するには、まず配列を宣言し、必要に応じて初期化します。
配列の宣言は、データ型、配列名、要素数を指定して行います。
以下に基本的な配列の宣言と初期化の例を示します。
#include <stdio.h>
int main() {
// 整数型の配列を宣言し、初期化
int numbers[5] = {0, 1, 2, 3, 4};
// 配列の要素を表示
for (int i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
このコードでは、numbers
という名前の整数型の配列を宣言し、5つの要素を初期化しています。
for
文を使って配列の要素を順に表示しています。
for文を使った値の入力方法
for
文を使うことで、配列に効率的に値を入力することができます。
以下の例では、for
文を使って配列に値を入力しています。
#include <stdio.h>
int main() {
int numbers[5];
// for文を使って配列に値を入力
for (int i = 0; i < 5; i++) {
numbers[i] = i * 2; // 各要素に2の倍数を代入
}
// 配列の要素を表示
for (int i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
このコードでは、for
文を使ってnumbers
配列の各要素に2の倍数を代入しています。
for
文を使うことで、同じ処理を繰り返し実行することができ、コードの簡潔さと可読性が向上します。
インデックスを利用した値の代入
配列の各要素にはインデックスを使ってアクセスし、値を代入することができます。
インデックスは0から始まるため、配列の最初の要素はインデックス0でアクセスします。
以下にインデックスを利用した値の代入の例を示します。
#include <stdio.h>
int main() {
int numbers[5];
// インデックスを利用して値を代入
numbers[0] = 10;
numbers[1] = 20;
numbers[2] = 30;
numbers[3] = 40;
numbers[4] = 50;
// 配列の要素を表示
for (int i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
このコードでは、numbers
配列の各要素に直接値を代入しています。
インデックスを利用することで、特定の位置にある要素にアクセスし、値を設定することができます。
応用例
2次元配列への値の入力
2次元配列は、行と列で構成される配列で、表形式のデータを扱うのに便利です。
以下の例では、for
文を使って2次元配列に値を入力しています。
#include <stdio.h>
int main() {
int matrix[3][3];
// 2次元配列に値を入力
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
matrix[i][j] = i + j; // 各要素に行番号と列番号の和を代入
}
}
// 2次元配列の要素を表示
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
このコードでは、matrix
という3×3の2次元配列を宣言し、for
文を使って各要素に行番号と列番号の和を代入しています。
2次元配列を使うことで、複雑なデータ構造を簡単に扱うことができます。
ユーザーからの入力を配列に格納
ユーザーからの入力を配列に格納することで、動的にデータを扱うことができます。
以下の例では、ユーザーから入力された値を配列に格納しています。
#include <stdio.h>
int main() {
int numbers[5];
// ユーザーからの入力を配列に格納
printf("5つの整数を入力してください:\n");
for (int i = 0; i < 5; i++) {
printf("numbers[%d] = ", i);
scanf("%d", &numbers[i]);
}
// 配列の要素を表示
printf("入力された整数は次の通りです:\n");
for (int i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
このコードでは、scanf関数
を使ってユーザーから5つの整数を入力し、それをnumbers
配列に格納しています。
ユーザーの入力を受け取ることで、プログラムの柔軟性が向上します。
配列の要素を条件付きで変更
配列の要素を条件付きで変更することで、特定の条件に基づいてデータを操作することができます。
以下の例では、配列の要素を条件付きで変更しています。
#include <stdio.h>
int main() {
int numbers[5] = {1, 2, 3, 4, 5};
// 配列の要素を条件付きで変更
for (int i = 0; i < 5; i++) {
if (numbers[i] % 2 == 0) {
numbers[i] *= 2; // 偶数の要素を2倍にする
}
}
// 配列の要素を表示
printf("変更後の配列の要素:\n");
for (int i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
このコードでは、numbers
配列の偶数の要素を2倍にしています。
条件付きで配列の要素を変更することで、特定の条件に応じたデータの操作が可能になります。
よくある質問
まとめ
この記事では、C言語におけるfor
文を使った配列への値の入力方法とその応用例について詳しく解説しました。
配列の宣言と初期化、for
文を使った効率的な値の入力、条件付きでの要素の変更方法など、実用的なテクニックを学びました。
これらの知識を活用して、より複雑なプログラムを作成し、C言語の理解を深めてください。