プログラミング実習

プログラミング論
第三回
まずは動かしてみよう(復習)
Cプログラムの構成
画面への出力①
Cのコンパイラについて

以下の摂南大学のページに整理されて
いるモノが便利です。
http://www.setsunan.ac.jp/~center/
kyositu/freec/freecompiler.html
本日の内容

思い出そう!
– 出席メールの送信
– 実習 ~とりあえず動かしてみよう~


Cプログラムの構成
画面への出力①
出席メールの送信




宛先
[email protected]
CC
自分のメールアドレス
件名
EK**** 氏名
注意:学番,氏名以外は書かないこと!
本文 なし
出席の確認




自動的に確認メールが返信されます。
同時に多人数が送信した場合,確認メールの
送信が対応できない場合があります。次回の
講義で出席受付名簿を公開しますので確認し
てください。
確認メールが届かないからといって,何度も出
席メールを送信することは止めてください。
「出したのに出席登録されていない」場合は,
CCのメールにてメールを出したこと(出席したこ
と)を確認した上で出席登録します。CCで自分
に届いたメールは,出席を確認するまで削除し
ないようにお願いします。
実習
~とりあえず動かしてみよう~


Cプログラムのコンパイル,実行をやって
みましょう。
ensyu2.cを使います。プリントの指示に
従ってやっていきましょう。
Cプログラムの構成

Cプログラムの構成
– プリプロセッサ

前処理。#include <stdio.h>がある部分。
– main関数

どのプログラムにも必ずあり,最初に実行される部分
– その他の関数(サブ関数,サブルーチン)


必要に応じて追加される。
関数の構成
– 変数宣言部

その関数内で利用する変数名とその型を宣言する
– 処理部


3つの制御構造に従って処理が記述される
多くは「入力処理」「演算処理」「出力処理」の順番になる。
Cプログラムの構成
#include <stdio.h>
プリプロセッサ
return 0;
}
*サブ関数は無い
main
int main(void)
*変数宣言部は無い
{
/* 画面に出力する */
printf("さぁ");
printf("C言語を");
処理部
printf("勉強しよう!!\n");
(順次構造)
printf("Hello,\n\n c \nworld\n");
関
数
とりあえず入力して動かしてみよう
ensyu3.c
#include <stdio.h>
int
{
main(void)
printf("How are you?\n");
return 0;
}
Cプログラムの構成-1
#include <stdio.h>
とりあえず,これ。
int
{
main(void)
printf("How are
return 0;
}
これは,「関数」と呼ばれる
処理の単位です。
関数の範囲は,{ }で囲み
you?\n");
ます。この中に,実行する文
を書きます。
‘main’は「関数名」といいます。
さて,では’int’や’void’は何で
しょう?
intをvoidにしてみたら?
#include <stdio.h>
void
main(void)
{
printf("How are you?\n");
return 0;
}
こんな警告が出ます
void 関数は値を返してはならない(関数 main )
はぁ?
何のこと?
こうやってみよう
#include <stdio.h>
void
main(void)
{
printf("How are you?\n");
return 0;
}
return 0を消します
あれっ?
警告が消えた。。。。。
?
これがキーワード




関数が値を返す
– 関数というのは,「ある値を受け取って,何か処理を行って,その
結果を出力する」ものです。この,「関数が結果を出力する」ことを
「関数が値を返す」といいます。必ず一つの結果を返します。
戻り値
– 関数の結果として出力されるデータ,つまり,「関数を実行したと
ころへ返す値」のことを「戻り値」といいます。ちなみに,実行時に
関数が受け取る値のことを「引数」といいます。
戻り値の型
– プログラムでは,戻り値が数値とは限りません。無いかもしれま
せん。数値としても,整数か実数か指定しなければなりません。
プログラムでは,どのようなタイプの戻り値なのかを指定する必
要があるのです。
return
– 関数の中で処理を実行すると,いろいろな結果が得られます。関
数は,その結果として一つの結果だけを出力するので,いったい
どの結果が関数の結果なのかを指定する必要があります。
returnは,「関数の結果はこれだよ」と指定してくれるものです。
というわけで。
#include <stdio.h>
int
{
main(void)
‘void’は,「この関数には引数
はありません」つまり,「関数
の処理を行うとき,何も値は
もらいません」という意味を表
しています。数学の関数,f(x)
と同じ考え方です。
printf("How are you?\n");
return 0;
}
‘return 0’は,「この関数の
結果として戻る値は,整数
値の0です」という意味です。
‘int’は,「この関数は,int型,
つまり整数の数値を結果とし
て出力します(戻します)」と
いう意味を表しています。ここ
に’void’があると,「関数の結
果は何も戻りません」という
意味になります。
それでは,考えてみましょう。


void main(void) と書いたとき,どうして
あのような警告が出たのでしょうか?
「関数の結果は何も戻ってこない」とvoid
で指定しているにも関わらず,return 0と
いう表現で,「関数の結果として0を戻しま
す(returnする)」と指定しているためです。
main関数





実行したい処理や,何か画面に表示したい処理な
どは,すべて「関数」の中に記述します。
関数は,ある役割を持った処理の集まりです。つま
り,プログラムの処理実行中に,同じ処理が何度も
出てくる場合は,いちいちその処理を全て書くので
はなく,関数の名前を指定して呼び出せばよい事
になります。
では,最初に実行する関数はどうやって指定すれ
ば良いのでしょうか?
それがmain関数です。
main関数は,全てのプログラムに一つだけある特
別な関数で,最初に実行される関数です。
では,もう一度見てみましょう
関数の戻り値
#include <stdio.h>
の型を指定
関数名
関数へ与える引数
int
関数の開始 {
main(void)
printf("How are you?\n"); 実行される処理
return 0; main関数の戻り値の指定
関数の終了 }
*空行は無視されて何も処理されません。
*大文字と小文字は区別されます。注意しましょう。
次回は。。

printf( )という関数を詳しく勉強します