カテゴリ: C言語 更新日: 2025/12/12

C言語プログラムの基本構造を完全ガイド!初心者でもわかるmain関数とreturnの役割

C言語プログラムの基本構造【main関数とreturn】
C言語プログラムの基本構造【main関数とreturn】

先生と生徒の会話形式で理解しよう

生徒

「C言語のプログラムって、どんな形をしているんですか?最初に何を書くのかがわかりません。」

先生

「C言語には基本の形が決まっています。どんなプログラムでも、必ず書く場所や書き方があります。特に大事なのがmain関数です。」

生徒

「main関数ってよく見かけますけど、どういう意味なんでしょうか?」

先生

「main関数は、パソコンに『ここから実行を開始してください』と教える場所です。さらにreturnという命令で、プログラムの終了を伝えます。」

1. C言語プログラムの基本構造とは?

1. C言語プログラムの基本構造とは?
1. C言語プログラムの基本構造とは?

C言語は、世界中で使われているプログラミング言語です。コンピュータに命令を伝えるために、特定の書き方と決まりごとがあります。特に初心者が最初に覚えるべきなのは、プログラムの形です。家を建てるときに設計図が必要なように、C言語にも基本の型があります。

C言語でプログラムを書くときは、基本的に次のような順番になります。

  • 必要な部品を読み込む(ヘッダーファイル)
  • main関数を書く
  • returnで終わりを示す

この3つは、ほとんどのC言語プログラムに共通して登場します。とくにmain関数はとても重要です。main関数を書かないと、プログラムはどこから動き出せば良いのかが分かりません。

2. main関数はプログラムのスタート地点

2. main関数はプログラムのスタート地点
2. main関数はプログラムのスタート地点

main関数(main関数)とは、プログラムの実行が始まる場所です。パソコンがプログラムを読み込むと、まずmainを探します。たとえるなら、読み物の第一ページのようなものです。そこから順番に命令を実行していきます。


#include <stdio.h>

int main(void)
{
    printf("こんにちは\n");
    return 0;
}

このようにmain関数を書いておくと、プログラムが動き出し、画面に文字を表示できます。main関数がないとC言語のプログラムは成立しません。それほど重要な場所です。

3. returnとは?プログラム終了の合図

3. returnとは?プログラム終了の合図
3. returnとは?プログラム終了の合図

C言語のプログラムは、main関数の最後にreturnという命令を書きます。returnは「プログラムが正常に終了した」という意味の合図です。returnの後に0と書くのが一般的です。これは、「問題なく終了しました」という決まり文句のようなものです。


return 0;

数字の0は成功、0以外は異常終了という意味で使われています。初心者は「最後にreturn 0を書くもの」と覚えておけば大丈夫です。

4. main関数の書き方を分解して理解しよう

4. main関数の書き方を分解して理解しよう
4. main関数の書き方を分解して理解しよう

先ほどのプログラムを、さらにやさしく分解してみます。


#include <stdio.h>  // 標準入力と標準出力を使うための部品

int main(void)      // プログラムの入り口
{                   // 実行が始まる場所
    printf("こんにちは\n");  // 画面に文字を表示
    return 0;       // 正常終了
}

ひとつひとつに役割があり、この形を守ればプログラムは正しく動きます。「書き方を暗記する」というより、意味を理解しながら覚えることで、後から応用できる力がつきます。

5. なぜreturnを書く必要があるのか?

5. なぜreturnを書く必要があるのか?
5. なぜreturnを書く必要があるのか?

returnは、プログラムの終了をパソコンへ伝えるための命令です。もしreturnを書かずにプログラムが終わると、終了の合図がないままになります。パソコンは「きちんと終わったのか、それとも問題があったのか」を判断できません。

プログラムは道案内のようなものです。スタート地点がmain関数、ゴールを知らせるのがreturnというイメージで覚えると理解しやすくなります。

6. mainの書き方は複数あるが初心者はこれで安心

6. mainの書き方は複数あるが初心者はこれで安心
6. mainの書き方は複数あるが初心者はこれで安心

実は、main関数には書き方がいくつかあります。


int main()
{
    return 0;
}

このように書いても動きます。ただし、教育現場や技術書では、より正確な形として次のように書かれることが一般的です。


int main(void)
{
    return 0;
}

voidは「引数がない」という意味です。初心者は「int main(void)」と書く形で覚えておくと安心です。

7. 画面表示を追加して動作を確認しよう

7. 画面表示を追加して動作を確認しよう
7. 画面表示を追加して動作を確認しよう

プログラムの仕組みを知るために、文字を表示してみましょう。「printf」という命令を使うと、画面に好きな文字を表示できます。日本語でも大丈夫です。


#include <stdio.h>

int main(void)
{
    printf("C言語の世界へようこそ\n");
    printf("main関数から実行が始まります\n");
    return 0;
}

C言語の世界へようこそ
main関数から実行が始まります

このように表示されれば成功です。プログラムは必ず上から順に実行されるため、一行目、二行目の順番で画面に表示されます。

8. C言語のプログラムは「部品を組み合わせる仕組み」

8. C言語のプログラムは「部品を組み合わせる仕組み」
8. C言語のプログラムは「部品を組み合わせる仕組み」

C言語は、必要な部品を組み合わせて動作を作る言語です。その最初の部品がmain関数です。さらに、たくさんの関数を追加することで、複雑なプログラムを作れるようになります。まずはmain関数とreturnをしっかり理解することで、次のステップで迷いにくくなります。

初心者がつまずきやすい点は、単純なプログラムでも正しい形を書かないとエラーになることです。これは紙の作文と違い、少しのミスでもパソコンが読み取れないためです。だからこそ、main関数、printf、returnの基本形を体で覚えることが大切です。

まとめ

まとめ
まとめ

C言語のプログラムは、どんなに小さなものでも「基本構造」を正しく理解して書くことが欠かせません。今回の記事で紹介したように、C言語ではmain関数が実行の入り口であり、プログラムの流れを決める重要な場所です。プログラムはmain関数からスタートし、順番に書かれた命令を一つずつ処理していきます。そして最後にreturnを使うことで「正常に終了しました」という合図をコンピュータへ伝えます。この二つを理解することは、C言語の学習における最初の大きな一歩です。 また、ヘッダーファイルである#include <stdio.h>を読み込むことで、画面表示のためのprintf関数などが利用できるようになります。外部の機能を利用するには、その機能がどこにあるかを知らせる必要があり、これを正しく行うことがC言語の土台となります。たとえ短いプログラムでも、構造を理解して書くことで、後の関数作成や条件分岐、繰り返し処理などの応用につながります。 初心者にとってmain関数とreturnの書き方は最初の壁に感じるかもしれませんが、この形に慣れてしまうと、どんなプログラムでもスムーズに書けるようになります。特にint main(void)という形式は標準的であり、引数を使わない基本的なプログラムに適しています。慣れてきたらmain関数の別の書き方や、引数を受け取る形式にも挑戦すると理解が深まります。 さらに、printfを使って画面に文字を表示することで、プログラムの流れが目に見える形で確認できます。実際にコードを書いて動かす経験は、学習を大きく前に進める力になります。下のようなサンプルを実行し、プログラムの始まりから終わりまでの流れを体感してみましょう。

基本構造を確認するサンプルプログラム


#include <stdio.h>

int main(void)
{
    printf("C言語の基本構造を学びましょう\n");
    printf("main関数から実行が始まり、returnで終了します\n");
    return 0;
}

たとえば、上のプログラムを実行すると、必ずmain関数の一行目から始まり、printfによって文字が順番に表示され、最後にreturn 0で終了します。この一連の流れを理解しておくことで、今後、条件分岐や繰り返し処理、関数分割といった応用的な学習を進めた際にも、プログラムの基礎がぶれずに済みます。 C言語は自由度が高い分、少しの書き間違いでエラーが出ることがあります。しかし、文章の構造を覚えるように「決まった書き方」に慣れることで、エラーが怖くなくなります。main関数の形、ヘッダーファイルの書き方、returnの役割を理解することで、あなたのC言語学習は確実に前進します。 最後に大切なのは、ただ暗記するのではなく、意味を理解しながら書くことです。C言語は論理の積み重ねで動く言語です。今回学んだ基本構造をしっかり押さえておくと、複雑なプログラムを作るときにも必ず役に立ちます。小さな成功を積み重ねながら、自信をつけていきましょう。

先生と生徒の振り返り会話

生徒

「先生、C言語のプログラムって最初は複雑に見えましたけど、main関数がスタート地点なんだと思ったら理解しやすくなりました!」

先生

「そうですね。どんなプログラムでも必ず入口があります。その入口がmain関数なので、ここが理解できるとぐっと楽になりますよ。」

生徒

「return 0も意味を知ると納得できました。ただ書くだけじゃなくて、正常に終わったことを伝える大事な合図なんですね。」

先生

「その通りです。プログラムは人にもコンピュータにも意味が伝わるように書く必要があります。基本を丁寧に理解すると応用が効くようになります。」

生徒

「printfで動作を確認すると、プログラムの流れが見えるので楽しいですね!最初の一歩がつかめました。」

先生

「プログラムは書いた通りに動くので、こうして観察しながら学ぶのが一番です。これからいろいろな構文を覚えていけば、もっと面白くなりますよ。」

生徒

「はい!まずは今回学んだ基本構造を繰り返し書いて、しっかり身につけます!」

カテゴリの一覧へ
新着記事
New1
C++
C++の変数のスコープと有効範囲を完全解説!初心者でもわかる基本と考え方
New2
C++
C++とは?歴史と特徴を初心者向けに解説!Rustとの違いとモダン言語比較
New3
C++
MinGWとMSYS2でWindowsにC++環境を構築する方法を徹底解説!初心者でもできるセットアップガイド
New4
Rust
Rust開発環境をLinuxで構築する方法とおすすめ設定を初心者向けに徹底解説
人気記事
No.1
Java&Spring記事人気No1
C言語
C言語をオンラインで実行できる便利なコンパイラサービスまとめ【初心者向け】
No.2
Java&Spring記事人気No2
C言語
C言語の関数定義と呼び出しを完全ガイド!初心者でも分かる基本の書き方
No.3
Java&Spring記事人気No3
C++
C++の主要な実装をわかりやすく解説!GCC・Clang・MSVCの違いと特徴
No.4
Java&Spring記事人気No4
C言語
Makefile入門:C言語プロジェクトを自動ビルドしよう!初心者でも分かる仕組みと使い方
No.5
Java&Spring記事人気No5
C言語
C言語の列挙型(enum)の使い方を完全ガイド!初心者でもわかる基本操作
No.6
Java&Spring記事人気No6
C言語
C言語の開発環境をWindowsに構築する方法【Visual Studio編】
No.7
Java&Spring記事人気No7
C言語
Visual Studio CodeでC言語を実行する方法【拡張機能の設定と実行手順】
No.8
Java&Spring記事人気No8
C言語
C言語を学ぶ初心者におすすめの環境構築手順【2025年版】