広告スペース(バナー)
🔧C言語 レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 22 / 68
配列の検索(strcmpでループする)
このレッスンでは、C言語のstrcmpを使った配列内の文字列検索方法を学び、目的の値が含まれているかを調べられるようになることを目標にします。「C言語 strcmp 使い方」で調べている方向けです。
C言語には文字列を直接==で比較する仕組みがないため、strcmp()関数を使って比較します。strcmp()は文字列が一致すると0を返す、少し独特な仕様です。
サンプルコードでは、for文で配列を1つずつ調べ、strcmp(fruits[i], "みかん") == 0という条件が成立したらfoundという変数を1に更新しています。==ではなくstrcmp()を使う点がC言語らしい特徴です。
初心者がよくつまずくのが、文字列の比較に==を使ってしまうことです。==で比較すると、文字列の内容ではなくポインタのアドレスが比較されてしまい、意図しない結果になります。
実際の開発現場では、リストの中に特定の商品IDやユーザー名が含まれているかを確認する場面で、この検索処理がよく使われます。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではC言語を直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
リストの中から目的のデータがあるか調べる、検索機能が作れるようになります。
リストの中から目的のデータがあるか調べる、検索機能が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)