Microsoft Word - no02.doc

Similar documents
Microsoft Word - no01.docx

プログラミング実習I

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

Microsoft Word - no01.docx

プログラミング基礎

物質工学科 田中晋

Microsoft PowerPoint - CproNt05.ppt [互換モード]

JavaプログラミングⅠ

数値計算

gengo1-2

PowerPoint プレゼンテーション

バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科

Microsoft PowerPoint - CproNt02.ppt [互換モード]

Microsoft Word - no11.docx

Microsoft Word - no103.docx

Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx

PowerPoint プレゼンテーション

JavaプログラミングⅠ

プログラミング基礎

1. 関数 scanf() 関数 printf() は変数の値を画面に表示しますが それに対し関数 scanf() はキーボードで入力した値を変数に代入します この関数を活用することで対話式 ( ユーザーの操作に応じて処理を行う ) プログラムを作ることができるようになります 整数の和

PowerPoint Presentation

Microsoft PowerPoint - kougi2.ppt

Microsoft Word - Cプログラミング演習(1)_2012

CプログラミングI

02: 変数と標準入出力

Microsoft Word - 3new.doc

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

kiso2-09.key

Microsoft PowerPoint - 12.ppt [互換モード]

Microsoft Word - Training10_プリプロセッサ.docx

Microsoft Word - no202.docx

C言語入門

プログラミング基礎

第2回講義:まとめ

Microsoft Word - Cプログラミング演習(11)

スライド 1

PowerPoint プレゼンテーション

演習課題No12

Microsoft PowerPoint - 12.ppt [互換モード]

ガイダンス

8 / 0 1 i++ i 1 i-- i C !!! C 2

講習No.8

PowerPoint Presentation

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Prog1_2nd

JavaプログラミングⅠ

講習No.1

Taro-ポインタ変数Ⅰ(公開版).j

Microsoft PowerPoint - 11.ppt [互換モード]

memo

Microsoft Word - no13.docx

Java講座

Microsoft PowerPoint - 3.ppt [互換モード]

Microsoft PowerPoint - 計算機言語 第7回.ppt

情報処理演習 B8クラス

プログラミング実習I

Microsoft PowerPoint - 13.ppt [互換モード]

Microsoft Word - no15.docx

Microsoft Word - Cプログラミング演習(12)

4 月 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プロ

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

C プログラミング 1( 再 ) 第 4 回 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 1

Microsoft PowerPoint - 13th.ppt [互換モード]

情報工学実験 C コンパイラ第 2 回説明資料 (2017 年度 ) 担当 : 笹倉 佐藤

PowerPoint プレゼンテーション

講習No.9

FORTRAN( と C) によるプログラミング 5 ファイル入出力 ここではファイルからデータを読みこんだり ファイルにデータを書き出したりするプログラムを作成してみます はじめに テキスト形式で書かれたデータファイルに書かれているデータを読みこんで配列に代入し 標準出力に書き出すプログラムを作り

Cコンパイラパッケージお知らせ

C 言語固有の命令で全部で32 個 の関数C 言語第 1 回 C 言語って?( シラバス 1 2 回目 ) 関数型言語 コンピュータに実行してもらう命令はすべて関数の中に記述されている 関数がプロ グラム

02: 変数と標準入出力

問 2 ( 型変換 ) 次のプログラムを実行しても正しい結果が得られない 何が間違いかを指摘し 正しく修正せよ ただし int サイズが 2 バイト long サイズが 4 バイトの処理系での演算を仮定する #include <stdio.h> int main( void ) { int a =

02: 変数と標準入出力

計算機プログラミング

C 言語の式と文 C 言語の文 ( 関数の呼び出し ) printf("hello, n"); 式 a a+4 a++ a = 7 関数名関数の引数セミコロン 3 < a "hello" printf("hello") 関数の引数は () で囲み, 中に式を書く. 文 ( 式文 ) は

JavaプログラミングⅠ

memo

Microsoft Word - no12.doc

Microsoft PowerPoint - 4.ppt [互換モード]

C 言語第 7 回 掛け算 (multiply number) ìz1 = x1 + iy1 í îz = x + iy 割り算 (devide number) ( )( ) ( ) Þ z z = x + iy x + iy = x x - y y + i y x + x y

Microsoft PowerPoint - C1(演算と変数).ppt

Prog1_10th

Microsoft PowerPoint pptx

Microsoft PowerPoint - 2.ppt [互換モード]

Microsoft PowerPoint - 第1回目復習_pdf用.ppt [互換モード]

System.out.println("char : " + (int)character.min_value + "~" + (int)character.max_value); System.out.println("float : " + Float.MIN_VALUE + "~" + Flo

02: 変数と標準入出力

講習No.12

第1回 プログラミング演習3 センサーアプリケーション

C C UNIX C ( ) 4 1 HTML 1

Microsoft PowerPoint - kougi7.ppt

sinfI2005_VBA.doc

02: 変数と標準入出力

ポインタ変数

memo

Microsoft PowerPoint - prog06.ppt

JavaプログラミングⅠ

1. if~ 1.1. 確認を促す まずは簡単な分岐プログラムを作ってみましょう 以下はそのフローチャートです 開始 charc よろしいですか? (y/n) 変数 c の値が 'y' と等しいかどうか c c='y' Yes よろしいですね No 終了 1: 2: 3: 4: 5: 6: 7: 8

kiso2-03.key

JavaプログラミングⅠ

Microsoft PowerPoint ppt

Transcription:

使い方 1ソースプログラムの入力今回の講義では C++ 言語用の統合環境ソフトといわれるプログラムを利用します デスクトップにある CPad for C++ のアイコン ( 右参照 ) をダブルクリ ックしましょう ( 同じアイコンで Java_pad とかい エディタ部 てあるものもありますので気をつけてください ) これで 起 動します 統合環境を立ち上げると エディタ部とメッセージ部をもった画面が出てきます エディタ部はソースを入 メッセージ部 力 編集する部分で メッセージ部はコンパイラ等のメッセージを表示します ではエディター部に次のとおり入力しましょう ex01.c #include <stdio.h> int main(void) { printf("hello, world n"); 入力が終われば ファイル メニューから 名前をつけて保存 を選んで保存してください このとき 保存する場所 を変更するのを忘れないでください ファイル名は必ず ex01.c としてください 適当なフォルダ( 例えば応プロ ) を作成して その中に保存しましょう 2コンパイル 実行次にこれをコンパイルして実行形式のファイルを作成します アプリケーションの三角のボタン ( 右図参照 ) を押します そうすると メッセージ部に次のように表示され ( ) プログラムがコンパイルされたものが 実行されます ( 右 ) i

タイプミスなどがなければこのように実行されます もし タイプミスなどがありましたらエラーが出ます このときには ソースプログラムに戻って 間違いを直してください たとえば printf とすべきところを print としてしまうと のようなダイアログが出て メッセージ部につぎのようなエラーが出ます 警告 W8065 ex01.c 4: プロトタイプ宣言のない の部分のコロンの前の数字 4 がエラーのある行を意味しています このときには ミスがある可能性がありますので 自分で調べてください ソースファイルを作って コンパイル そして実行する という流れを必ず覚えていてください 講義の Web http://hakuto.mis.ous.ac.jp/~yanagi/aprog2009/ 講義で配布した資料をここに全ておいておきます 紛失 欠席したとには自分で印刷しておいてください また レポート提出もこのページから行ってもらいます ii

応用プログラミング I II 1. 基本型と演算子 1.1 基本型 プログラミング基礎 では大きく分けて整数型(int) と実数型 (double) の2 通りだけを使っていました しかし 実際は C 言語で使われる基本型は次のものがあります char int float double 文字型 8 ビット (=1 バイト ) 整数型整数型単精度浮動小数点型倍精度浮動小数点型 前の2つが整数の値を保持するための型 後 2つが実数の値を保持するための型です もちろん 実数は正確な値が保持できるわけないので 近似値となります この基本型に次のような修飾子をつけることができます signed unsigned short long 符号付きを表す (char, int) 符号なしを表す (char, int) 短い整数を表す (int) 長い整数を表す (int), 拡張精度を表す (double) 短い とか 長い とかありますが これに関しては C 言語の規格書で定義されていないためです short より long が長いビット数を持つということだけが規定されています 実際 この大きさはシステム 処理系によって異なります 今回使っている Borland C++ Compiler では 次のようになっています short int = 16 ビット = 2 バイト long int = 32 ビット = 4 バイト では プログラミング基礎 で使った int は何ビットでしょうか? sizeof という型の大きさ ( バイト ) を調べる演算子がありますのでそれを使って調べてみましょう ex02a.c #include <stdio.h> int main(void) { int x; printf("%d n",sizeof(x)); 1

ex02b.c #include <stdio.h> int main(void) { printf("%d n",sizeof(int)); 結果をみると 4 バイトですから int = long int となっています しかし これは Borland C++ Compiler の仕様です 単に int としたとき それを short int とみなすか long int とみなすかはシステムやコンパイラで異なります まとめると表 1 のような型が利用できます 表 1 基本データ型 表記 ビット数 値の範囲 char, signed char 8 ビット 128 ~ 127 unsigned char 8 ビット 0 ~ 255 short, signed short, short int, 16 ビット 32768 ~ 32767 signed short int unsigned short, unsigned short int 16 ビット 0 ~ 65535 int, signed int, long, signed long, -2147483648 ~ 2147483647 long int, 32 ビット signed long int unsigned int, unsigned long, 32 ビット 0 ~ 4294967295 unsigned long int float 32 ビット 0, 1.2 10-37 ~ 3.4 10 +38, -1.2 10-37 ~ -3.4 10 +38 double long double 64 ビット 80 ビット 0, 2.2 10-307 ~ 1.7 10 +308, -2.2 10-307 ~ -1.7 10 +308 0, 2.2 10-4931 ~ 1.1 10 +4932, -2.2 10-4931 ~ -1.1 10 +4932 2

1.2 演算子の優先順序 プログラミング基礎 ではいくつかの演算子を習ってきました このまとめをします 次のプログラムを実行するとどのような数値が表示されるでしょうか? ex03.c 1 :#include <stdio.h> 2 : 3 :int main(void) { 4 : int x, y; 5 : 6 : x = 1 + 2 * 3; 7 : y = 5-3 + 1; 8 : printf("x=%d, y=%d n",x,y); 9 : 10 : y = 5 +- x; 11 : printf("x=%d, y=%d n",x,y); 12 : 13 : y = x == 5; 14 : printf("x=%d, y=%d n",x,y); 15 : 16 : y = x = 5; 17 : printf("x=%d, y=%d n",x,y); 18 : 19 : return(0); 20 : 10 行目ですが +- という演算子は存在しません + と - にわけて考えます 後の - は負の記号を表す - です つまり y = 5 + (-x) と同じ意味になるのです 13 行目は x == 5 を計算して その結果を y に代入しているのです 同様に 16 行目は x = 5 を計算して その結果を y に代入しています 普通の加減乗除と同様に C 言語でも演算に優先順位が定まっています 式はその優先順位の順序で行われるのです まだ習っていない演算子もありますが まとめておきます なお 結合度というのは同じ優先順位のものがあったとき それが右から計算されるかから計算されるかを表しています 実際 7 行目は y = (5-3) + 1 と計算され 16 行目は y = (x = 5) と計算されています この順序にも気をつけておきましょう 3

演算子のまとめ 優先順位 演算子 名称 結合性 1 2 ( ) [ ]. -> ++ -- ++ -- sizeof & * + - ~! 関数呼出し演算子添字演算子 ( 配列 ). 演算子 ( 構造体 共用体 ) -> 演算子 ( 構造体 共用体 ) 後置増分演算子後置減分演算子 前置増分演算子前置減分演算子 sizeof 演算子単項 & 演算子 ( アドレス ) 単項 * 演算子 ( 間接演算子 ポインタ ) 単項 + 演算子 ( 符号設定 ) 単項 - 演算子 ( 符号設定 ) ~ 演算子 ( 補数 ) 論理否定演算子 3 ( 型 ) キャスト演算子右 4 5 6 7 8 * / % + - << >> < <= > >= ==!= 2 項 * 演算子 ( 積 ) 2 項 / 演算子 ( 商 ) 2 項 % 演算子 ( 剰余 ) 2 項 + 演算子 ( 和 ) 2 項 - 演算子 ( 差 ) << 演算子 ( シフト ) >> 演算子 ( 右シフト ) < 演算子 ( 大小比較 ) <= 演算子 ( 大小比較 ) > 演算子 ( 大小比較 ) >= 演算子 ( 大小比較 ) == 演算子 ( 等号 )!= 演算子 ( 不等号 ) 9 & ビット単位の AND 演算子 10 ^ ビット単位の排他的 OR 演算子 11 ビット単位の OR 演算子 12 && 論理積演算子 13 論理和演算子 14 = += -= 他 単純代入演算子複合代入演算子 右 右 4

練習問題 1.1 二つの整数を入力してもらい その二つの整数の和 差 積 商 剰余を表示するプログラムを作成しなさい ex04.c < > int ( ) { int, ; printf(" 一つ目の整数を入力してください n"); ("%d", & ); printf(" 二つ目の整数を入力してください n"); ("%d", & ); printf(" と の和は です n",,, ); printf(" と の差は です n",,, ); printf(" と の積は です n",,, ); printf(" を で除算したときの商は です n",,, ); printf(" を で除算したときの剰余は です n",,, ); 練習問題 1.2 x, y の連立方程式 x + y = a x y = b の解を表示するプログラムを作成しなさい ただし a, b はともに整数型とし 解は実数の範囲で計算しなさい a, b はプログラムで入力してもらうように作りなさい 練習問題 1.3 一つの整数を入力してもらい その整数の2 乗 3 乗 4 乗 1 乗を表示するプログラムを作成しなさい 5