C言語① 開発環境とプログラムの記述方法 2011.04.22 2011.04.22 C言語① 開発環境とプログラムの記述方法.

Slides:



Advertisements
Similar presentations
プログラミング論 第八回数字の計算,整数の入出力. 本日の内容 前回の課題(続き) 前回の課題(続き) 数字の計算をする 数字の計算をする – 加減乗除を行う – インクリメント演算子とデクリメン ト演算子.
Advertisements

第 2 章 数値の入力と変数 scanf と変数をやります 第 2 章 数値の入力と変数 1. 以下のプログラムを実行してみよう  C 言語では文の最後に「 ; 」(セミコロン)が付きます 第 2 章 数値の入力と変数 2 #include int main() { int x; x = 3; printf("x.
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
演算、整数型と浮動小数点型 第3回目 [4月27日、H.16(‘04)] 本日のメニュー 1)前回の課題・宿題 2)ファイルサーバの利用
応用理工学情報処理 第1回(2015年10月 5日) 月曜日担当 前島展也 Manaba
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
初年次セミナー 第4回 整数と実数の取り扱い.
1.1 C/C++言語 Hello.ccを作りコンパイルしてa.outを作り出し実行する
第2章 数値の入力と変数 scanfと変数をやります.
演算、整数型と浮動小数点型 第3回[平成16年4月27日(火)]:PN04ー03.ppt 今日の内容 1 復習 2 加減・乗除演算子
基礎プログラミングおよび演習 第9回
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
C言語 第2講 生物機能制御学講座 濱田 農学部7号館209室.
プログラミング入門2 第1回 導入 情報工学科 篠埜 功.
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
第6章 2重ループ&配列 2重ループと配列をやります.
プログラミング演習Ⅰ 課題2 10進数と2進数 2回目.
初年次セミナー 第2回 文字の出力.
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
第2回 Microsoft Visual Studio C++ を使ってみよう
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
JAVA入門.
東京工科大学 コンピュータサイエンス学部 担当 亀田弘之
第二回 VB講座 電卓を作ろう.
C言語講習 第0章 Hello, world!.
プログラミング応用 printfと変数.
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第2回 ファイル処理 情報・知能工学系 山本一公
プログラムはどこに保存され,どこで実行されるのか?
プログラミング演習I 2003年6月25日(第10回) 木村巌.
プログラミング序論 2. n人のインディアン.
第10章 これはかなり大変な事項!! ~ポインタ~
知能情報工学演習I 第9回( C言語第3回) 課題の回答
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
前回の練習問題.
高度プログラミング演習 (02).
プログラムはどこに保存され,どこで実行されるのか?
コンピュータープログラミング(C言語)(2) 1.文字列出力と四則演算 (復習) 2.関数と分割コンパイル
地域情報学 C言語プログラミング 第1回 導入、変数、型変換、printf関数 2016年11月11日
プログラミング基礎B 文字列の扱い.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
2013年度 プログラミングⅡ ~ 計算してみよう ~.
2015年度 プログラミングⅡ ~ 計算してみよう ~.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
東京工科大学 コンピュータサイエンス学部 担当 亀田弘之
C言語 はじめに 2016年 吉田研究室.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
C言語ファミリー C# 高級言語(抽象的) Java オブジェクト指向 C++ C 機械語(原始的)
プログラミング演習I 2003年4月30日(第3回) 木村巌.
地域情報学 C言語プログラミング 第1回 導入、標準出力、変数 2017年10月13日
地域情報学 C言語プログラミング 第2回 変数・配列、型変換、入力 2017年10月20日
標準入出力、変数、演算子、エスケープシーケンス
情報実習I (第1回) 木曜4・5限 担当:北川 晃.
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
第7章 そろそろ int 以外も使ってみよう! ~データ型 double , bool~
第3回簡単なデータの入出力.
printf・scanf・変数・四則演算
第2章 数値の入力と変数 scanfと変数をやります.
復習 いろいろな変数型(2) char 1バイト → 英数字1文字を入れるのにぴったり アスキーコード → 付録 int
C言語講座 四則演算  if ,  switch 制御文.
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
第1章 文字の表示と計算 printfと演算子をやります 第1章 文字の表示と計算.
第1章 文字の表示と計算 printfと演算子をやります.
変数と代入・読込と表示 第2回[平成15年4月24日(木)]:PN03ー02.ppt 今日の内容 1 プログラムの構造(復習)
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

C言語① 開発環境とプログラムの記述方法 2011.04.22 2011.04.22 C言語① 開発環境とプログラムの記述方法

持ち物 ・教科書 ・ノート ・筆記用具 ・ボールペン(黒) ・色ペン(2色以上) ・のり ・レポート用紙 ・テンプレート 鉛筆 シャーペン × ・教科書 ・ノート ・筆記用具    ・ボールペン(黒)    ・色ペン(2色以上) ・のり ・レポート用紙 ・テンプレート (修正液、付箋、はさみ)

プログラミング実習の目的 実戦で役立つ自分を作る プログラムの学習 ものごとを順序立てて考える ひとつの問題を 細かくして考える ノートを活用するチカラ 論理的思考 実戦で役立つ自分を作る

開発環境 ※この画面は写さない。 プリントを後日配ります。 ノートを1ページあけて、貼るスペースを 確保してください。

プログラムの書き方 ①基本的に英小文字 ②適度のコメントを入れる(/*と*/で囲む 又は //よりうしろ) ②適度のコメントを入れる(/*と*/で囲む 又は //よりうしろ) ③mainはプロジェクトの中に1つしか存在が許されない ④#include<stdio.h> int main(void)     はおまじない  ⑤{ }で囲まれた部分は1段(TAB1個分)下げる。 字下げ (インデント) 美しいプログラムを書くよう心がける あとから見てわかりやすい。他人が見てもわかりやすい。

秘伝 ◎ プログラム上達のコツ ① ② ③ まずは例題を入力して動きをたしかめる(真似) よく解読して、1箇所変えてみる(改造) ◎ プログラム上達のコツ ① ② ③ まずは例題を入力して動きをたしかめる(真似) よく解読して、1箇所変えてみる(改造) 実行結果を予測してから実行。結果を確認する。 (②へ戻る)

レポート   題目 C言語①開発環境   内容 (1)プログラミング実習の目的       (2)開発環境(後日配るプリントをまとめる)       (3)プログラムの書き方       (4)考察(C言語について調べたりする)       (5)反省・感想

復習1 教科書p.21のプログラムを入力してみよう。 入力が終わったら、実行して動作を確認。 /*2数の和*/ #include<stdio.h> int main(void) { int a, b, wa; a = 20; b = 5; wa = a + b; printf("%d\n" , wa ); return 0; } 入力が終わったら、実行して動作を確認。

チャレンジ 「20」と「5」と書いてある部分を適当な数値に変えて実行してみよう!実行する前に結果を予測しよう! a = 20; b = 5; ? a = 5; b = 5; ? a = 33; b = 0; ? 25      プログラム上達の極意!     例題をちょっと改造して実行。

気付いた事 a と b は  数値(データ)を入れるための箱 → 変数 と wa 20 5 wa a b + 25

気付いた事2 = の 役割 a = 100; 変数 a に 数値の 100 を代入すると言う意味。 代入! =は 右から来たものを左へ = の 役割 a = 100; 変数 a に 数値の 100 を代入すると言う意味。 代入! =は 右から来たものを左へ 受け流している

解説 /*2数の和*/ #include<stdio.h> int main(void) { int a, b, wa; wa = a + b; printf("%d\n" , wa ); return 0; } 変数 a,b,wa を宣言 Cでは変数を使う時はあらかじめ 宣言する(作る)必要がある。 変数a に20を代入 変数b に5を代入 a と b を足し算したものを 変数wa に代入 変数wa の内容を表示 ※実行結果もノートに写す

変数宣言 [書式] 型指定子 変数名1, 変数名2, 変数名3,・・・・ ; (例) int a; ・・・・・・ 整数型の変数aを宣言    型指定子  変数名1, 変数名2, 変数名3,・・・・ ; 型指定子 バイト長 表現範囲 char 文字型 1 半角文字。または、±128ぐらい short int 単長整数型 2 ±32000ぐらいの整数 int 整数型 4 ±21億ぐらいの整数 long int 倍長整数型     〃 float 単精度実数型 ±10±38ぐらいの実数。有効桁数6~7桁。 double 倍精度実数型 8 ±10±308ぐらいの実数。有効桁数15~16桁。 (例)    int a; ・・・・・・ 整数型の変数aを宣言 double b, c;  ・・・・・・ 倍精度実数型の変数bとcを宣言 char moji; ・・・・・・ 文字型の変数mojiを宣言    int r = 20; ・・・・・・ 整数型の変数rを宣言し、20を代入。 注意!変数名は半角英数字で。但し、予約語は使えない。

例題1 教科書p.25のプログラムを入力してみよう。 入力が終わったら、実行して動作を確認。 /* E2-1 */ /* 文字列の出力 */ #include<stdio.h> int main(void) { printf("computer\n"); printf("programming\n");   return 0; } 入力が終わったら、実行して動作を確認。

例題1 1行節約してみる。 入力が終わったら、実行して動作を確認。 /* E2-1 */ /* 文字列の出力 */  1行節約してみる。 /* E2-1 */ /* 文字列の出力 */ #include<stdio.h> void main(void) { printf("computer\n"); printf("programming\n");   return 0; } 入力が終わったら、実行して動作を確認。

例題1 解説 注釈 /* E2-1 */ /* 文字列の出力 */ #include<stdio.h> #include指令  解説 「ここからmain関数を書きますよ」 という宣言 注釈 /* E2-1 */ /* 文字列の出力 */ #include<stdio.h> void main(void) { printf("computer\n"); printf("programming\n"); } main関数の始まりの中かっこ #include指令 stdio.hを読み込む 基本的な命令(関数)が格納 されている標準ライブラリ printf関数を使いたいので ディスプレイに「computer」と          表示して改行 ディスプレイに「programming」と          表示して改行 main関数の終わりの中かっこ 中かっこで囲まれた部分{ } は、1段(Tab1個分(4文字ぐらい))下げる。      ところで・・・・          \n って 改行 って事らしいけど・・・         c\no\nm\np\nu\nt\ne\nr\n ってやったらどうなる?

やってみるじゃん エラー! printf("computer\n"); printf("computer"\n);

拡張表記 printfの中で¥とセットで記述する特殊な文字 改行 printf("computer\n"); printf("programing\n"); computer programing \n new line 復帰 printf("computerABCDE\r"); printf("programming\n"); programmingDE \r 1行目に2行目が上書きされた carriage return 後退 printf("computerABCDE\b\b"); printf("programming\n"); computerABCprogramming \b 1行目の末尾が2文字消えた back space

水平タブ printf("A\tAB\tABC\tABCD"); A AB ABC ABCD \t horizontal tab 水平方向の特定の位置へカーソルが 移動している。 Aの位置だけをみると均一である! ベル/アラート hello printf("hello\a"); \a helloを表示する時プーという音がした。 alert, alarm printf("computerABCDE\r"); printf("programming\n"); \r 復帰 carriage return programmingDE 1行目に2行目が上書きされた printf("computerABCDE\b\b"); printf("programming\n"); \b 後退 back space computerABCprogramming 1行目の末尾が2文字消えた

水平タブ printf("A\tAB\tABC\tABCD"); A AB ABC ABCD \t horizontal tab 水平方向の特定の位置へカーソルが 移動している。 Aの位置だけをみると均一である! ベル/アラート hello printf("hello\a"); \a helloを表示する時プーという音がした。 alert, alarm ナル文字 hello, printf("hello,\0world"); \0 \0以降は無いものとして処理される。 NULL (何も無い) 特殊文字の表示 printf("引用符\"、アポストロフィー\'、円マーク\\ 改行\n"); \" \' \\ 引用符"、アポストロフィー'、円マーク\、改行 特殊な文字は\とセットで記述することで表示できる

水平タブ printf("A\tAB\tABC\tABCD"); A AB ABC ABCD \t horizontal tab 水平方向の特定の位置へカーソルが 移動している。 Aの位置だけをみると均一である! ベル/アラート hello printf("hello\a"); \v helloを表示する時プーという音がした。 alert, alarm ナル文字 hello, printf("hello,\0world"); \0 \0以降は無いものとして処理される。 NULL (何も無い) 特殊文字の表示 printf("引用符\"、アポストロフィー\'、円マーク\\ 改行\n"); \" \' \\ 引用符"、アポストロフィー'、円マーク\、改行 特殊な文字は\とセットで記述することで表示できる

8進数で 文字入力 1:S 2:m \数値 printf("1:\123\n2:\155\n"); \123 → 53h → S \155 → 6Dh → m 8進数のコードに基づく文字が表示される 16進数で 文字入力 1:S 2:m \数値 printf("1:\x53\n2:\x6D\n"); 16進数コードに基づく文字表示 ナル文字 hello, printf("hello,\0world"); \0 \0以降は無いものとして処理される。 NULL (何も無い) 特殊文字の表示 printf("引用符\"、アポストロフィー\'、円マーク\\ 改行\n"); \" \' \\ 引用符"、アポストロフィー'、円マーク\、改行 特殊な文字は\とセットで記述することで表示できる

8進数で 文字入力 1:S 2:m \数値 printf("1:\123\n2:\155\n"); \123 → 53h → S \155 → 6Dh → m 8進数のコードに基づく文字が表示される 16進数で 文字入力 1:S 2:m \数値 printf("1:\x53\n2:\x6D\n"); 16進数コードに基づく文字表示 ナル文字 hello, printf("hello,\0world"); \0 \0以降は無いものとして処理される。 NULL (何も無い) 問1   Price \1,980   Now On "SALE" と表示し、更に内蔵ベルを鳴らすプログラムを作りなさい。

8進数で 文字入力 1:S 2:m \数値 printf("1:\123\n2:\155\n"); \123 → 53h → S \155 → 6Dh → m 8進数のコードに基づく文字が表示される 16進数で 文字入力 1:S 2:m \数値 printf("1:\x53\n2:\x6D\n"); 16進数コードに基づく文字表示 ナル文字 hello, printf("hello,\0world"); \0 \0以降は無いものとして処理される。 NULL (何も無い) 問1   Price \1,980   Now On "SALE" と表示し、更に内蔵ベルを鳴らすプログラムを作りなさい。

問1   Price \1,980   Now On "SALE" と表示し、更に内蔵ベルを鳴らすプログラムを作りなさい。 プログラムが完成したら、ソースと、実行画面が同時に見れるようにして 先生を呼んで確認してもらうこと。 それが完了したら、ソースと実行画面をノートに写す。 レポート   題目 C言語①   内容 ①復習1の「ソース」、「解説」、「実行結果」       ②変数宣言についてまとめる       ③例題1の「ソース」、「解説」、「実行結果」       ④拡張表記についてまとめる       ⑤考察       ⑥反省・感想

8進数で 文字入力 1:S 2:m \数値 printf("1:\123\n2:\155\n"); \123 → 53h → S \155 → 6Dh → m 8進数のコードに基づく文字が表示される 16進数で 文字入力 1:S 2:m \数値 printf("1:\x53\n2:\x6D\n"); 16進数コードに基づく文字表示 レポート   題目 C言語①   内容 ①復習1の「ソース」、「解説」、「実行結果」       ②変数宣言についてまとめる       ③例題1の「ソース」、「解説」、「実行結果」       ④拡張表記についてまとめる       ⑤考察       ⑥反省・感想