1 / 27

プログラミング Ⅰ ( 1 組) 第 4 回

プログラミング Ⅰ ( 1 組) 第 4 回. http://www.fit.ac.jp/~matsuki/lecture.html. 今日の内容. 前回の課題の 説明 前回 の復習 いろいろな演算. タイピングソフト. 喰人王を使用して結果を記録する ステージ:第一の店(中華) Excel のシートにスコアを毎回記録していく 残り時間 ⇒  FeedBack ページで報告 総タイプ数 ミスタイプ数 正確さ ⇒  FeedBack ページで報告 喰いっぷり ⇒  FeedBack ページで報告 このシートは,途中で提出してもらいます. char 型について.

elysia
Download Presentation

プログラミング Ⅰ ( 1 組) 第 4 回

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. プログラミングⅠ(1組)第4回 http://www.fit.ac.jp/~matsuki/lecture.html

  2. 今日の内容 • 前回の課題の説明 • 前回の復習 • いろいろな演算

  3. タイピングソフト • 喰人王を使用して結果を記録する • ステージ:第一の店(中華) • Excelのシートにスコアを毎回記録していく • 残り時間⇒ FeedBackページで報告 • 総タイプ数 • ミスタイプ数 • 正確さ⇒ FeedBackページで報告 • 喰いっぷり ⇒ FeedBackページで報告 • このシートは,途中で提出してもらいます

  4. char型について • char型は,1バイトの大きさ • 256種類の値を表現できる(16進数で00~FF) • char型はASCIIコードとして利用される (注意:文字型だけでなく,整数も使える)

  5. 文字について printf(“Hello World”); Hello Wolrd コンピュータの中で, 文字をどう扱っているの? 各文字に,予め番号が割り当てられている

  6. 黄色:上位の桁 緑色:下位の桁 ASCIIコード表 ASCIIコードの48(16)は,「H」

  7. 黄色:上位の桁 緑色:下位の桁 ASCIIコード表 SPACE Line Feed (\n) H e l l o W o r l d 48 65 6C 6C 6F 20 57 6F 72 6C 64 0A

  8. 変数に値を入れる ① 30 = x; //間違い ② x = 10 + 20; //10+20の計算結果をxに代入 ③ x = x + 1; //x + 1の計算結果をxに代入 ④ x = 0x41 //16進数の41をxに代入 ⑤ x = ‘A’; //x = 0x41と同じこと 65 x xという変数に,65という整数値を格納(代入) x = 65;

  9. printf関数 • 変数の中身を表示することが可能 • 書式を指定することが可能

  10. 演算 複合演算子

  11. 前回の課題 1.次のプログラムを実行したら,何が表示されるか? #include <stdio.h> int main() { printf(“%c %c %c %c %c %c\n”, 0x4c, 0x6f, 0x6e, 0x64, 0x61, 0x79); return 0; }

  12. 前回の課題 printf(“%c %c %c %c %c %c\n”, 0x4c, 0x6f, 0x6e, 0x64, 0x61, 0x79); printf(“%c”,0x4c); 4C(16)に対応するASCII文字として表示

  13. 黄色:上位の桁 緑色:下位の桁 ASCIIコード表 ASCIIコードの4C(16)は,「L」

  14. 前回の課題 printf(“%c %c %c %c %c %c\n”, 0x4c, 0x6f, 0x6e, 0x64, 0x61, 0x79); printf(“%c”,0x4c); 4C(16)に対応するASCII文字として表示 結果: Londay

  15. 前回の課題 2.次のプログラムを実行したら,何が表示されるか? #include <stdio.h> int main() { printf(“%x %x %x %x %x %x\n”, ‘S’, ‘u’, ‘n’, ‘d’, ‘a’, ‘y’); return 0; }

  16. 前回の課題 printf(“%x %x %x %x %x %x\n”, ‘S’, ‘u’, ‘n’, ‘d’, ‘a’, ‘y’); %x : 16進数の整数として表示 文字の「S」 = ??(16) ASCIIコード表

  17. 黄色:上位の桁 緑色:下位の桁 ASCIIコード表 「S」 は,ASCIIコードの53(16)

  18. 前回の課題 printf(“%x %x %x %x %x %x\n”, ‘S’, ‘u’, ‘n’, ‘d’, ‘a’, ‘y’); %x : 16進数の整数として表示 ASCII文字のS = 53(16) 結果: 53 75 6e 64 61 79

  19. 前回の課題 3.printfの書式指定文字列について,以下の意味を説明せよ (1)%d: 10進の整数を指定 (2)%f: 浮動小数を指定 (3)%x: 16進の整数を指定 (4)%c: 文字変換を指定

  20. 前回の課題 4.C言語で次の演算を行った際,(1),(2)については演算結果を,(3)~(5)については変数aの値を答えなさい.ただし,変数a,bはint型で定義されており,演算前のa,bの値はそれぞれ12と4とする. (1)9 + 6 / 3 * 2 ⇒ 13 (2)a + b % 5 ⇒ 12 + 4 % 5 ⇒ 12 + 4 ⇒ 16 (3)a += b ⇒ a = a + b ⇒ 「aには12 + 4の結果16が入る」 (4)a *= b ⇒ a = a * b ⇒「aには12×4の結果48が入る」 (5)a %= (a / b) ⇒ a = a % (a / b) ⇒ a = a % 3 ⇒ 「aには12を3で割った余り(0)が入る」 括弧内から計算

  21. 演算について • 優先順位 • 優先順位の高い演算から順に行われる • (例) d = a + b * c (「*」,「+」,「=」の順) • 結合規則 • 同じ優先順位が複数ある場合は,結合規則(方向)に従って順に演算が行われる • (例)d = a / b * c (「/」と「*」は同じ順位なので,結合規則に従って,「左から右の順」に演算する)

  22. 様々な演算 • インクリメント a = a + 1; //aに1を加えて,その結果をaに代入 a++; //aを評価したのちに1を加算 ++a; //aに1を加算したのちにaを評価

  23. 様々な演算 • デクリメント a = a - 1; //aから1を減算し,その結果をaに代入 a--; //aを評価したのちに1減算 --a; //aを1減算したのちにaを評価

  24. 様々な演算 • 不等号演算子 • 「>」:左辺は右辺より大きい • 「<」:右辺は左辺より大きい • 「>=」:左辺は右辺より大きい,または等しい • 「<=」:右辺は左辺より大きい,または等しい 「5>3」 ⇒ 真(True):値は1 「5<3」 ⇒ 偽(False):値は0

  25. 様々な演算 • 等価演算子と非等価演算子 • 「==」:左辺と右辺は等しい • 「!=」:左辺と右辺は等しくない a = 3; 「a == 3」 ⇒ 真(True):値は1 「a!= 3」  ⇒ 偽(False):値は0

  26. 様々な演算 • キャスト演算子 • 型を変換することが目的 • 使い方: (キャストしたい型)変数名; y = (int)x; b = (double)a;

  27. 様々な演算 • キャスト演算子 • 型を変換することが目的 int a = 10, b = 3; double c; c = a / b; printf(“%f”, a / b); printf(“%f”, c); printf(“%f”, (double)a / b ); int型の値を%fで表示 切り捨てが発生 aをdouble型に変換

More Related