プログラムの作成と実行2(スライド) (6/16)

プログラムの作成と実行2
プログラムのための言語
• 機械語
– コンピュータが実行する命令
– 0,1
• アセンブリ言語
– 機械語とほぼ1対1対応
– 人間が読み書きできるように機械語を拡張
• 高級言語
– 人間が読んで理解できる
– 自然言語に近い文法
高級言語
• 用途に合わせてたくさんの種類がある
– Fortran , Cobol , Lisp , BASIC
– Scheme , CommonLisp , Pascal , C , C++
– Java, Haskel , Python , Ruby ...
• 情報科学1では C を使用する
プログラムの入力、コンパイルと実行
• 人間が入力したプログラム
– ソースプログラム、ソースコード、ソースファイル
• コンパイル
– ソースコードを計算機が実行できる機械語に書き換
える操作
• コンパイラ
– コンパイルを行うプログラム
• コンパイルの結果できるファイル
– オブジェクトプログラム、オブジェクトファイル、オブ
ジェクト
エディタ
コンパイラ
コンソール
(ターミナル)
エディタ
• 情報科学1の講義では、プログラムの作成、
実行にはVisualStudioを使用する。
• プログラムの開発に必要なエディタやコンパ
イラ等を組み合わせたプログラム統合開発環
境である。
– VisualStudio プログラム統合開発環境
• IDE (Integrated Development Environment)
– Visual C++ プログラミング言語(Cの拡張版)
/* 66666 tachibana masayoshi */
/* p42 list 2.9 */
#include "stdafx.h"
int main(void)
{
int a,b,c ;
a = 1;
b = 2;
c = a+b;
printf(”c=%d\n”,c);
return 0;
}
/* 66666 tachibana masayoshi */
/* p42 list 2.9 */
#include "stdafx.h"
int main(void)
{
int a,b,c ;
変数を宣言する
a = 1;
b = 2;
式の計算と値の代入
c = a+b;
printf(”c=%d\n”,c);
変数 c の値を出力
return 0;
}
変数の定義(宣言)
int a,b,c
型
変数の並び
変数とは
• コンピュータのメモリに確保された領域
• 数値を入れる「箱」と考えても良い
• 変数(variable)の名前
– 最初の文字はA-Zまたはa-zおよび_
– 2番目以降は数字(0-9)も使用できる
– 最大31文字
– 大文字と小文字は区別される
– 途中に空白があってはいけない
– 予約済みの名前は使えない(p375)
変数の定義(宣言)
int a,b,c
型
int
char
float
double
....
• 型はいっぱいある
• 変数が保持できる値の性質
を表している
変数の定義(宣言)
int a,b,c
int 型
• 整数で 231-1~0~-231 の値を扱える
• この範囲外の数は扱えない
• 数学での整数とは異なる
(値の範囲が制限されているため)
• ほかの型については3章で...
変数の定義(宣言)
int a,b,c
変数の並び
変数の並び←変数
OR 変数の並び , 変数
(再帰的な定義)
代入
c = a+b
変数
式
代入
c = a+b
変数
式
(1) 式の「値」を計算する
(2) 「値」を変数に書く
代入
c = a+b
変数
式
(1) 式の「値」を計算する
(2) 「値」を変数に書く
2段階の処理:順序がある
(数学の等式とは異なる)
式の定義
式
←定数
OR 変数
OR (式)
OR -式
OR 式+式
OR ......
(再帰的な定義)
式の定義
式
←定数
OR 変数
OR (式)
OR -式
OR 式+式
OR ......
128
-54
'H'
(単項演算)
(二項演算)
演算子はいっぱいある (p94)
二項演算
+ 和(加算)
- 差(減算)
* 積(乗算)
/ 商(除算)
% 余り(剰余)
int型に対して可能なものの一部
printf関数
書式制御文字列
printf(”c=%d\n”,c)
式の並び
計算した式の「値」を
%d の位置に埋め込む
printf関数
書式制御文字列
printf(”c=%d\n”,c)
式の並び
文字として % を出力する場合
は %% とする
printf関数
書式制御文字列
printf(”c=%d\n”,c)
式の並び
整数でない値の場合については、
3章以降で扱う
printf関数
書式制御文字列
printf(”c=%d\n”,c)
\n 改行
\t タブ
%d 整数値を出力
%% %を出力
式の並び
\n 改行
\t タブ
\\ \ (バックスラッシュ)
\" " (ダブルクォーテーション)
\' ' (シングルクォーテーション)