C言語:1970年頃にAT&T社のデニス・M・リッチーが開発
その後UNIXを記述するために利用された
C言語は構造化言語ALGOLの流れを受け継ぐ
CPL言語 → BCL言語 → B言語 → C言語
ビット処理やポインタ処理などのアセンブラ言語に準じた処理が可能であるのに加え高級言語の意味合いの強い言語
高級言語の機能と、低級言語の機能を備えた、操作性に優れた言語となっている
C:細かい処理を記述するのに適した言語
実行速度が速い
小回りがきく
構造体を使用できる
豊富なライブラリを利用できる
2.3 Cの読み方
@自由形式
Cは、書く位置(桁)を意識せずに記述できる即ち、どこで改行しても良い
A半角小文字記入
半角小文字記入(直接入力)がC言語の原則
B文の単位の区切りは;
文の区切りには ; (セミコロン)を用いる
これは、文の終端記号
文字を画面に表示するプログラムの例
1) /* はじめてのプログラム */
2) #include<stdio.h>
3) main()
4) {
5) printf("Hello!! \n"); /*文字の出力*/
6) }
[実行結果]
上のプログラムをコンパイルし、実行してみると以下のようになる。
Hello!!
解説
1)【コメント文】 /*と*/とで囲まれた部分
プログラム内のどこに記入しても良い
プログラムの実行時、処理され無い
人間がプログラム内容を理解するために用いられる。
漢字やカタカナを書くことが出来る
2)【#include<stdio.h>】 printf()を含むプログラムの最初に記述する
#include:「毎回書かなければならない決まり文句を別のファイルに入れておきますからそこに挿入して下さい」という意思表示
取り込むファイル名は<>の中に書く
stdio.h は標準的な入出力関数を使うための決まり文句を集めたファイル
3)【main()】 プログラムでは必ず記入する
mainは関数名を表わす
( )内には引数を記入する
void main(void)と書けるが、ふつうはmain( )と表わす
main()の直後に;を書かない
4)6)プログラムの本文(処理)を{ と }で囲む
例)Cプログラムの基本型
main( )
{ 処理 }
main( )から書き始め、具体的な処理の内容を { と }で囲む
5)【printf()】 printfは出力をしてくれる関数
printf(”文字列”);
”と”で囲まれた情報を画面に出力
5)【\n】 改行を表す記号
「Hello!!\n」とは出力されない
注意!
改行には「\n」(バックスラッシュ)を用いますが、国産のキーボードで「\」記号が無い場合に「¥」記号をもちいる。
計算機のモデル
例) 1)#include<stadio.h>
2)main()
3){
4) int a,b,c;
5) a=60;
6) b=120;
7) c=b/a;
8) printf("%d\n",c);
9)}
解説)
1)〜3)プログラムの始まり
4)このプログラムで用いる変数(この場合a,b,c)とその型(この場合整数)の宣言
5)変数aに60を代入
6)変数bに120を代入
7)変数cにb/aの値を代入
8)cの値を表示
9)プログラムの終わり
名前(変数名、プログラム名など)
A,B,・・・,Z,a,b,・・・,z,0,1,・・・,9(英数字)
$,@,#,・・・(特殊記号)
を用いる
注意! 漢字カタカナを変数名に用いることは出来ません。
名前の基本的な形式
名前 = 英字(英字|数字)
名前の長さ:8文字以内
演算の優先順位
*,/は+,−に優先
優先順位が同じ場合は先の方が優先。
定数の記法
例) 6.37,6370,0.637E4,6.3700.0E-1
(6.37E4=6.37に10の3乗をかけた値)
例)
#include<stadio.h>
main()
{
1) float x,y,wa,sa,seki,sho;
2) scanf("%f,%f",&x,&y);
wa:=x+y;
sa:=x-y;
seki:=x*y;
sho:=x/y;
printf("%d, %d, %d, %d,\n", wa, sa, seki,
sho);
}
解説)
1)使う変数名の宣言、この場合は実数
2)入力装置からデータを2つ読んでx,yに代入