Day10:List 練習問題と解答解説
Day10 で学んだ List<T> / Add / Remove / Insert / Contains / Sort を確実に定着させるために、 初心者でも理解しやすい練習問題と丁寧な解答・解説をまとめています。 配列より柔軟な「増える・減るデータ」を扱うための基礎として、ここでしっかり身につけてください。
List<T> の基本を確認する
問題
文字列のリスト fruits を作り、 “Apple”、”Banana”、”Orange” を追加してすべて表示してください。
解答と解説
List<string> fruits = new List<string>();
fruits.Add("Apple");
fruits.Add("Banana");
fruits.Add("Orange");
foreach (string f in fruits)
{
Console.WriteLine(f);
}
C#List<T> は「サイズが自由に変わる配列」のようなものです。 Add を使うことで、必要なだけ要素を増やすことができます。
Add の理解を確認する
問題
整数のリスト numbers に 10、20、30 を追加し、 最後に 40 を追加してすべて表示してください。
解答と解説
List<int> numbers = new List<int>();
numbers.Add(10);
numbers.Add(20);
numbers.Add(30);
numbers.Add(40);
foreach (int n in numbers)
{
Console.WriteLine(n);
}
C#Add は「末尾に追加」されます。 配列ではできなかった柔軟な追加が可能です。
Remove の理解を確認する
問題
リスト animals に “Dog”、”Cat”、”Bird” が入っています。 “Cat” を削除してすべて表示してください。
解答と解説
List<string> animals = new List<string>() { "Dog", "Cat", "Bird" };
animals.Remove("Cat");
foreach (string a in animals)
{
Console.WriteLine(a);
}
C#Remove は「最初に見つかった1つだけ削除」します。 同じ値が複数ある場合は注意が必要です。
Insert の理解を確認する
問題
リスト colors に “Red”、”Blue” が入っています。 2番目(添字 1)に “Green” を挿入して表示してください。
解答と解説
List<string> colors = new List<string>() { "Red", "Blue" };
colors.Insert(1, "Green");
foreach (string c in colors)
{
Console.WriteLine(c);
}
C#Insert は「既存の要素を押し出す」ため、 順番を管理したい場面で非常に便利です。
Contains の理解を確認する
問題
リスト items に “Pen”、”Notebook”、”Eraser” が入っています。 “Notebook” が含まれているか判定して結果を表示してください。
解答と解説
List<string> items = new List<string>() { "Pen", "Notebook", "Eraser" };
bool exists = items.Contains("Notebook");
Console.WriteLine(exists);
C#Contains は「検索処理の基本」です。 重複登録を防ぐ場面で必須になります。
Sort の理解を確認する
問題
リスト names に “Taro”、”Hanako”、”Jiro” が入っています。 Sort で並び替えて表示してください。
解答と解説
List<string> names = new List<string>() { "Taro", "Hanako", "Jiro" };
names.Sort();
foreach (string n in names)
{
Console.WriteLine(n);
}
C#Sort は「昇順(小さい順)」で並び替えます。 文字列の場合は辞書順になります。
応用問題:TODOリストの操作
問題
次の操作を行って TODO リストを完成させてください。
- “買い物”、”掃除”、”勉強” を追加
- 先頭に “ストレッチ” を挿入
- “掃除” を削除
- 並び替えて表示
解答と解説
List<string> todos = new List<string>();
todos.Add("買い物");
todos.Add("掃除");
todos.Add("勉強");
todos.Insert(0, "ストレッチ");
todos.Remove("掃除");
todos.Sort();
foreach (string t in todos)
{
Console.WriteLine(t);
}
C#Add → Insert → Remove → Sort の流れが自然につながり、 柔軟に変化するデータを扱えることが実感できます。
応用問題:商品一覧管理
問題
商品リスト products を作り、 “Laptop”、”Mouse”、”Keyboard” を追加し、 “Mouse” を削除して並び替えて表示してください。
解答と解説
List<string> products = new List<string>();
products.Add("Laptop");
products.Add("Mouse");
products.Add("Keyboard");
products.Remove("Mouse");
products.Sort();
foreach (string p in products)
{
Console.WriteLine(p);
}
C#商品管理のような実務的な処理も、 List を使うことで簡単に実現できます。
Day10 練習問題まとめ
Day10 の練習問題では、次のポイントを確認しました。
List<T> → サイズが自由に変わるデータ構造 Add → 追加 Remove → 削除 Insert → 挿入 Contains → 検索 Sort → 並び替え
これらを組み合わせることで、 TODOリストや商品一覧管理など、実用的なアプリケーションが作れるようになります。
