第一回 C言語講座 序章: C言語の決まりごと printf・scanfについて C言語とは 1972年にアメリカAT&T社のベル研究所でD. M. Ritchie氏とB. W. Kernighan氏によって開発され たプログラミング言語。1986年にアメリカ規格協会 (ANSI)によって標準化され、国際標準化機構 (ISO)や日本工業規格(JIS)にも標準として採用さ れている。 B言語という言語の後継として開発されたためCと 名づけられた。表記法などはB言語やPascalの祖 先であるALGOLに近い。 準備: 必要なもの: PC(学校支給のもの) または、C言語のコンパイラが入ったPC 起動(初回のみ) ① ② ③ マイドキュメントを開いて 「新規作成」→「フォルダ」→フォルダ名「K3」 microsoft visualstudio .netを起動。 ソースファイルの作成 [新しいプロジェクト]をクリック プロジェクトの種類:Visual c++ テンプレート :c++コンソ-ルアプリケーション プロジェクト名 :01kadai 場所 :マイドキュメント\K3 起動(プログラムの作成) ① ② ③ ④ ⑤ ⑥ ⑦ ソースファイルの追加 ソリューションエクスプローラのソースファイルを右 クリック [追加]→[新しい項目の追加] 開くボタンをクリック ソースを書く [ファイル]メニュー→[すべて保存] コンパイルと実行 [デバック]メニュー→[デバックなしで実行] 実践 それではいよいよ実際にプログラムを打って見ま しょう。 #include <stdio.h> main() { printf ( “Hello World!!” ); } と入力してみてください。 結果 Hello World!! と表示されたでしょうか? 解説 #include <stdio.h> stdio.hとは標準入出力 ライブラリと言い、簡単 かつ効果のよい、バッ ファリングされたスト リーム入出力インター フェースを提供するた めに用いられる。入力 と出力は論理データス トリームに割り付けられ、 入出力の物理的な特 徴は隠蔽される。 解説 #include <stdio.h> 平たく言うとPCがC言 語の基本命令以外の 命令を理解するのに必 要な参考書みたいなも のがstdio.hだよ、とい うことです。 ほかにもmath.hなど があります。 最初のうちは呪文だと 思ってください。 解説 main() { } C言語には必ずメイン関数というものが存 在します。そして、メイン関数内に書かれ ていることをすべて実行しようとします。 main()の()には引数(ひきすう)をいれ ます。今は引数がないので()の中身は空 白になります。 引数を使う場合には後にやる関数の概念 をしっかり持つ必要があります。 今は特に考える必要はありません。 解説 printf(“ ”); printfを使うことで(“ ”)←で囲ま れた文字を出力することができま す。 「;」(セミコロン)は文末につける決 まりになっています。 プログラムを書く際は見やすいよう にTabを入れます。 実践2 次に #include <stdio.h> main() { int a; a = 10; printf ( “out number : %d”, a ); } と入力してください。 出力結果 number : 10」 と出力されたでしょうか? 「out 解説 int a; intというのは整数型の変数を宣言する 予約語です。この場合は「aは整数型の 変数が入るよ」と宣言しています。 「int a;」はひとつの文が終わっているの でセミコロンが必要です。 aは任意につけた変数の名前です。 整数型の変数のほかに double型やfloat型やchar型などがあり ます。 予備知識 変数とは・・・ 値を入れるための器、だと思ってください。 int型 ⇒整数を入れるための器。 double型⇒浮動小数を入れる器。 float型 ⇒浮動小数を入れる器。 char型 ⇒文字を入れるための器。 少し詳しい予備知識 分類 型名 サイズ 値の範囲 整数 byte 1byte -128~127 short 2byte int 4byte long 8byte -32768 ~32767 -2147483648 ~2147483647 入りきらない… 浮動小数点数 float 4byte double 8byte 文字 char 1byte 解説 a=10; aという変数に10という数字を代入して いることを表します。この辺は数学と似 ています。 セミコロンは必要です。 解説 printf ( “out number : %d”, a ); printfに関しては先ほどと変わりません。 「%d」は重要で、ここに10進数の変数がおかれるこ とになっています。ということを示しています。 当然、変数がおかれるという宣言があるのだから、 何の変数をおくのかを決めなければなりません。 そこで「 ,a 」をprintfの中の終わりにおくことで%d にはaという変数が置かれるということがわかります。 実践3 最後の実践 main() { int a; printf ( “input number->\n” ); scanf ( “%d”, &a ); printf ( “output number is %d”, a ); } と入力してください 実行結果 input number-> (数字入力 10と入力) output number is 10 と、入力されたかな? 解説 必要部分だけ。 scanf ( “%d”, &a ); scanfとは数字をキーボード入力で得ること を意味します。この場合%dなので 「10進数の数字を得ますよ」ということを先に宣 言します。そして ,&a というのを後について aという変数の箱の中に入れるという動作をし ます。 解説 なんで&aとするかは後にやるポインタのとこ ろで詳しくやります。(今知りたければ近くの わかりそうな人を捕まえてください) printf ( “ \n” ); この\nは改行という意味。ただ、表示するとき 改行したいところにこれをおけば改行してくれ る。 補足 先ほど変数の入出力には%dというものを使 いましたが、これは10進数の入出力する宣 言する予約語です。(%dを変数にはできま せん) もし8進数の入出力を宣言したければ%oを 使います。 もし16進数の入出力を宣言したければ%xを 使います。 課題 aという変数に10進数で数字を得て、その数 字を8進数と16進数で出力しなさい。 (見やすいように工夫しなさい。) 文字の表示 #include <stdio.h> main(){ char c; printf ( "文字を入力してください-> "); scanf ( "%c", &c); printf ( "入力された文字は %c です\n", c); }
© Copyright 2024 ExpyDoc