
C言語の演習問題を解けるおすすめのWebサイトを教えて!
こういった悩みにお答えします.
本記事の信頼性(長いので太字のみでOK)
- 私の実績
- 東京大学を含む様々な大学でプログラミングを学生に教育.
- 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校コンピュータサイエンス学部(2021年の世界大学学術ランキングで20位)で客員研究員として勤務.プログラミングを利用した研究開発.
- プログラミング歴15年以上,習得している言語: C/C++,Solidity/Vyper,Java,Python,Ruby,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM).
- 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」をGitHubにオープンソースとして公開.
- 2020年1月~現在はアメリカのスタートアップ「Guarantee Happiness LLC」のCTOとしてECサイト開発やWeb/SNSマーケティングの業務.2022年6月~現在はアメリカのノースカロライナ州チャペルヒルにあるJapanese Tar Heel, Inc.のCEO兼CTO.
- 2020年からC言語で業務委託のエンジニアとして3件,コンサル(技術顧問,アドバイザー)として3件,講師として1件の案件を請け負った実績.
- プログラミングを教えた学生の実績
- 有名な企業やスタートアップに就職(例:グーグル,任天堂,ソニー,メルカリ,プリファードネットワークス).
- 欧米の大学や企業に進学,交換留学,インターン(例:アメリカのカリフォルニア大学バークレー校,イギリスのエディンバラ大学,エストニアのタリン工科大学,ドイツのNEC欧州研究所).
こういった私が解説していきます.
目次
本記事の対象読者
本記事の対象読者は以下になります.
- コンピュータの初級レベルを習得していること
- 英語で学べること
- プログラミング言語を初級~中級レベルで1つ以上習得していること
- わからないことを自分で調べたり質問できて解決できること(独学できること)
C言語はWeb系の言語であるHTMLやCSSと比較すると難易度の高い言語ですので,注意して下さい.
C言語を独学で習得することは難しいです.
私にC言語の無料相談をしたいあなたは,公式LINE「ChishiroのC言語」の友だち追加をお願い致します.
私のキャパシティもあり,一定数に達したら終了しますので,今すぐ追加しましょう!
やっぱり独学は難しいなと思ったあなたに,C言語を学べるプログラミングスクールをおすすめします.
-
-
元東大教員がおすすめするC言語を学べるオンラインプログラミングスクール5社
こういった悩みにお答えします. 本記事の内容:おすすめのC言語を学べるオンラインプログラミングスクール5社 SAMURAI ENGINEER(侍エンジニア) Tech Teacher KENスクール ...
続きを見る
C言語の演習問題を解けるおすすめWebサイト
C言語の演習問題を解けるおすすめWebサイト3選を紹介します.
3つとも英語のWebサイトですが,世界中のエンジニアに使われています.
C言語の腕試しをしたい方は,是非これらのWebサイトを利用しましょう.
また,他の言語も学べますので,C言語だけでなく他の言語も学びたい方にもおすすめです.
ハッカーランク(HackerRank)
ハッカーランクは,C言語を含む様々なプログラミングの演習問題を解くことのできるWebサイトです.
解いた演習問題の数によってランキング化され,成績が良いと企業からオファーが来ることもあります.
Skills Available For Practice
Skills Available For Practiceは,プログラミングの演習問題を解くことができます.
自分で使ってみた感じでは,計算ドリルみたいな印象でした.
時間制限はなく,難易度はEasy,Medium,Hardの3段階となっていますので,自分が必要な演習問題を選んで解きましょう.
項目 | 学べる内容 |
---|---|
プログラミング言語 | C/C++,Java,Python,Ruby言語. |
アルゴリズム(Algorithms),データ構造(Data Structures),数学(Mathematics) | プログラミングの基本となる概念. |
Linux シェル(Shell),関数プログラミング(Functional Programming),人工知能(Artificial Intelligence),SQL,データベース(Databases),正規表現(Regex) | プログラミングの応用となる実践的な内容. |
Get Your Skills Certified
Get Your Skills Certifiedではスキルを認定してもらえます.スキルを認定してもらえることで,企業からオファーをもらいやすくなります.
これらの認定テストは,1時間~1時間30分の時間制限があります.
項目 | 認定スキル | 時間制限 |
---|---|---|
Problem Solving (Basic) | 初級レベルのアルゴリズムやデータ構造を利用した問題解決 | 1時間30分 |
Problem Solving (Intermediate) | 中級レベルのアルゴリズムやデータ構造を利用した問題解決 初級よりは難易度が高い | 1時間30分 |
Rest API (Intermediate) | 中級レベルのRest API ※RESTはHTTPを利用した呼び出しインターフェース | 1時間30分 |
Angular (Basic) | 初級レベルのAugular.js | 1時間 |
JavaScript (Basic) | 初級レベルのJavaScript | 1時間30分 |
Python (Basic) | 初級レベルのPython | 1時間30分 |
Java (Basic) | 初級レベルのJava | 1時間 |
React (Basic) | 初級レベルのReact.js | 1時間30分 |
Contests
Contestsはプログラミングコンテストです.週1~月1くらいの頻度で不定期で開催されます.
自分の実力を試したい方は,是非参加しましょう!
リートコード(LeetCode)
リートコードは,GAFA(Google,Amazon,Facebook,Apple)(現在FacebookはMeta Platformsなので正確にはGAMA) のコーディング面接で使われたことのある,もしくは似たような演習問題をオンラインで解くことができるWebサイトです.
C言語を含む様々なプログラミング言語の演習問題があります.
ハッカーランクと比較すると若干難易度が高めですが実践的です.
演習問題の難易度はリートコードと同様にEasy,Medium,Hardの3段階から選べます.
Problems
Problemsは,プログラミングの演習問題を解くことができます.
リートコードのSkills Available For Practiceのようなものですが,大きな違いは演習問題毎に書く言語を選べることです.
項目 | 学べる内容 |
---|---|
アルゴリズム(Algorithms) | C/C++,C#,Java,Python/Python3言語でプログラミングの基本的な手順や作法 |
データベース(Database) | MySQL,MySQL Server,Oracle言語でデータベースの基礎 |
シェル(Shell) | Bashでファイルからデータを読み込んで処理 |
コンカレンシー(Concurrency) | 並行プログラミング.これらの項目で一番高難易度 |
Explore
Exploreには,Interview,Learn,Challengeがありますので,それぞれ解説します.※一番上の段にあるFeaturedはおすすめの内容です.
Interview
Google,Amazon,Facebook,Apple,Microsoft,Adobe,Bloomberg,Uberのコーディング面接の模擬問題(過去問題)を解くことができます.
標準アカウントでは利用できず,プレミアムアカウント限定です.プレミアムアカウントは,月契約なら35ドル,年契約なら159ドルになります.
これらの会社に絶対受かりたいのであればプレミアムアカウントの購入をおすすめします.
Learn
Learnは個々の演習問題を解く計算ドリルのようなものですが,Exploreでは再帰(Recursion)や連結リスト(Linked List)のようなテーマで連続した演習問題を用意しているので,特定のスキルを集中して学びたい方におすすめです.
Challenge
Challengeはプログラミングコンテストです.リートコードだとContestsですね.
こちらも不定期で開催されます.
Project Based Learning
Project Based Learningは,C言語でカーネルレベルプログラミングを学べます.
具体的には,C言語でOSをフルスクラッチで開発します.
他にもネットワークプログラミングやOpenGLを学べます.
上記の2つのWebサイトと比較すると難易度が高いので,C言語の中級者~上級者におすすめします.
Project Based Learningで学べる言語は以下になります.
- C#
- C/C++
- Clojure
- Elixir
- Erlang
- F#
- Go
- Haskell
- HTML/CSS
- Java
- JavaScript
- Kotlin
- Lua
- OCaml
- PHP
- Python
- R
- Ruby
- Rust
- Scala
- Swift
- Additional Resources(React等)
まとめ
C言語の演習問題を解けるおすすめWebサイト3選を紹介しました.
C言語の腕試しをしたい方は,是非これらのWebサイトを利用しましょう.
グーグルのソフトウェアエンジニアとして働いている教え子の学生から聞いた情報ですが,GAFAのコーディング面接の実践練習をしたい方はPrampがおすすめです.
Prampは,面接を相互評価するWebサービスで,無料で使えます.面接の練習に是非!
C言語を独学で習得することは難しいです.
私にC言語の無料相談をしたいあなたは,公式LINE「ChishiroのC言語」の友だち追加をお願い致します.
私のキャパシティもあり,一定数に達したら終了しますので,今すぐ追加しましょう!
独学が難しいあなたは,元東大教員がおすすめするC言語を学べるオンラインプログラミングスクール5社で自分に合うスクールを見つけましょう.後悔はさせません!