変数を宣言するときに書いていた int 型 今回はそれ以外の基本的なデータ型をやってみ よう 第7章 データ型 1 配列で繋がった変数を複数同時に宣言できた さらに、2次元的に変数をとる2次元配列 1次元配列 2次元配列 第7章 データ型 2 データ型とは int 型 double 型 bool 型 型変換 暗黙の型変換とキャスト コメントの書き方 今日は割と軽めの話 第7章 データ型 3 そもそもデータ型とは・・・ 厳密な定義はここ では省くよ int num = 0; 変数宣言時に、「変数の大きさと入れるデータ の種類を決めるもの」と説明しました 今までは int 型しか使ってこなかったが、今回 はそれ以外も見て、使ってみる 第7章 データ型 4 int 型 ひとまず int 型から。最もポピュラー。整数値が扱え る(小数点以下は切り捨て) double 型 double num = 0; scanf(“%lf”, num); printf(“%f\n”, num); 小数が扱える 表示(出力)するときは『%d』ではなく、『%f』を使 うので注意! また『scanf』は『%d』ではなく『%lf』を使うよ 読みは「だぶる」 第7章 データ型 5 では一度 double 型を使った次のプログラムを 実行してみよう #include <stdio.h> void main(){ double num; printf(“数値を入力してね > ”); scanf(“%lf”,&num); printf(“%f\n”, num); } 第7章 データ型 6 実行結果例 ちなみに『%f』ではなく『%.1f』とすると表 示する小数の桁数を1桁にできる 『%.2f』なら2桁、『%.3f』なら3桁という具合 第7章 データ型 7 bool 型 true か false のみ入れることができる(もしくは 1 か 0) その性質から、if 文など真偽を問う文、関数と相性が いい 読みは「ぶーる」でOK 実はC言語で bool 型を使うにはいくつか煩雑な準備 がいるが、VC++はC++(プログラミング言語)の規格 も使っているので、特に何か準備する必要もなく使え るようだ 第7章 データ型 8 では今度は bool 型を使ったプログラムを実行 してみよう #include <stdio.h> void man(){ bool flag = true; int num = 0; while(flag){ printf(“数値を入力してね > ”); scanf(“%d”,&num); if(num < 0) flag = false; } } 第7章 データ型 9 実行結果例はこちら while 文を少しクドくしただけだね 特に関係はないですが、false とは 0 のことで あり、true とはそれ以外(-1とかも true) bool は1と0しかないけど 第7章 データ型 10 話は変わるが、最初 double 型で作った変数を、 後から int 型に変える、ということができる これが型変換 型変換の方法は主に2つ 暗黙の型変換 と キャストを使った型変換 第7章 データ型 11 暗黙の型変換 double num = 3.14; たとえば、double 型の int a = 0; 変数 num を int 型の変数 a = num; a に代入すると、int 型に つられて数値が整数値に変わる(小数点以下切捨て) 右上図だと、『a = 3;』が最終的に求められる 逆パターン(double 型につられる)もあるよ int x = 2; double y = 7.16; double z = x - y; 第7章 データ型 12 キャスト(明示的型変換) int 以外も勿論可能 double num = 1.414 printf(“%d\n”, (int)num ); ptintf(“%f”, num); 上のように、『(int)』を変数の前につけることで、強 制的に int 型に変換している しかしこの変換は 関数内などで扱う変数の型のみ適 用なので、num 自体は double 型のまま 実行結果 → 第7章 データ型 13 商品の税抜き価格を入力させ、税込価格を表示 するプログラムをつくってみよう ただし、税込価格は必ず小数点以下を切り捨て しよう 消費税は8%(もう2ヶ月) 第7章 データ型 14 『tax』は「税」のこと #include <stdio.h> void main(){ int price; double price2; double tax = 1.08; printf("税抜き価格を入力してください > "); scanf("%d",&price); price2 = price * tax; printf("税込価格は%d円です\n",(int)price2); } 今回はキャストを使ってみたけど、暗黙の型変 換でも勿論できる 第7章 データ型 15 相加平均(a + b + c) ÷ 3 3つの整数値を入力させて、以下の値を表示す るプログラムを作ってみよう 3つの数の平均を小数第3位まで表示 同じく3つの数の平均を小数点以下切捨てで表示 実行結果例は以下の通り ヒント: double d = a/b; だと小数点以下が切り捨て double d = (double)a/b; が必要 第7章 データ型 16 #include <stdio.h> void main(){ int a,b,c; printf("a >"); scanf("%d",&a); printf("b >"); scanf("%d",&b); printf("c >"); scanf("%d",&c); printf("%.3f\n", (double)(a + b + c) / 3); printf("%d\n",(a + b + c) / 3); } int 型同士の計算は小数点以下切捨てになるので、 計算結果自体を double 型に変換しているんだ 第7章 データ型 17 //コメントはプログラムに影響しない scanf(“%d”,num); /*何を書いたか後から見やすくするために コメントを積極的に使っていこう!!*/ printf(“%d\n”, num * 12); プログラムコード以外にコメントを挿入するこ とができる 『//』は一行分、『/* */』は間に入るすべ ての文字をコメントとすることができる ちなみに『//』の場合、『\』で改行することができる 第7章 データ型 18 関数について より詳しい説明 関数の自作 main 関数とは 関数 をより詳しく見ていこう!! 第7章 データ型 19 テンプレ 第7章 データ型 20
© Copyright 2024 ExpyDoc