本文へスキップ
BecomeCoder

C言語コース · 第1章 C言語をはじめる · レッスン1

Hello, World ― printfで画面に表示する

ブラウザで完結

導入

最初のプログラムは、画面に文字を出すことから。C言語では printf(プリント・エフ)という関数を使って出力します。

説明

C言語のプログラムは main 関数から始まります。次が最小の形です。

#include <stdio.h>

int main(void) {
    printf("Hello, World!\n");
    return 0;
}

プログラム全体は、次のような「入れ子の箱」の形をしています。まず main という入口があり、その { } の中に、上から順に実行される命令を並べます。

flowchart TB
  inc["#include <stdio.h><br/>(道具を読み込む)"] --> main["int main(void) { … } = プログラムの入口"]
  subgraph BODY["main の { } の中身(上から順に実行)"]
    direction TB
    s1["printfで文字を表示する"] --> s2["return 0;(正常終了の合図)"]
  end
  main --> BODY

一行ずつ意味を見ていきます。

  • #include <stdio.h> … 入出力の機能(printf など)を使えるようにする「おまじない」。stdio は Standard I/O(標準入出力)の略。
  • int main(void) { ... } … プログラムの入口。{} の中が上から順に実行される。void は「引数を受け取らない」という意味。
  • printf("...");" で囲んだ文字列をそのまま画面に表示する。
  • \n … 改行を表す特別な文字(エスケープシーケンス)。C++ の endl のような役割を、文字列の中に書き込む形で果たす。
  • return 0; … 「正常に終了した」という合図。

printf は何度でも呼べます。呼ぶたびに、その文字列が画面に追加されていきます。

#include <stdio.h>

int main(void) {
    printf("1行目\n");
    printf("2");
    printf("つの語\n");
    return 0;
}

\n を書かないと改行されず、次の printf の内容が同じ行に続いて表示されます(上の例の "2""つの語\n" がつながって 2つの語 と表示されます)。各文の終わりには必ず ;(セミコロン)が必要です。忘れるとエラーになります。

やってみよう

上のコードを実行して表示を確かめましょう。printf の行をもう1行足して、好きな言葉を表示してみてください。

演習

printf を使って、あなたの名前を1行で表示してください(末尾に \n で改行を入れましょう)。

ヒント1を見る

printf("山田太郎\n"); を main の中に書きます。

実際に動かしてみよう

下のエディタにCを書いて「実行」を押すと、ブラウザ内のインタプリタで出力が表示されます。本文の例をそのまま試したり、書き換えたりしてみましょう(scanf を使う回は「標準入力」欄に値を入れてから実行します)。

C/C++ — ブラウザ内で実行

ブラウザ内でC/C++を動かす学習用インタプリタ(JSCPP)を読み込みます(入門向けのサブセットです)。
スクロールして表示された時点でも自動で読み込まれます。