読者です 読者をやめる 読者になる 読者になる

ぷろぐらみんぐ!

プログラマーを目指して勉強する大学生のブログ

変数なんて簡単簡単 #3

プログラミング C言語 printf 出力変換指定子 整数 実数 型名 変数 データ型

こんにちは!

 

今回は数値の計算から始めていきたいと思います。

プログラミング言語は数値を計算するための言語だと勉強したので、気合い入れて頑張っていこうと思います。

 

 

C言語では数値と数字を区別して扱う。

C言語において""の中に書かれている文字や数字を文字列(文字列リテラル)という。

・数値を書きたい場合は""で囲わずに書く。

・数字は計算に使えず、数値は計算に使える。

・printf関数で数値を表現するには出力変換指定子を使う。

出力変換指定子とは外部のデータを文字列に変換して表示するときに、その変換方法を指定する記号。

・整数値を文字列に変換するには%d指定子を使う。

 

 

あまり耳慣れない言葉がいくつか出てきました。

出力変換指定子がよくわからなかったのですが、サンプルプログラムを書き写して実行してみると簡単にわかりました。

 

f:id:fujigg7:20170211035032p:plain

 

簡単に言うと、

""の中に数値を書きたいがそのまま書いてしまうと数字になってしまう。だから代わりに%dという記号を使って、後から数字を代入する

ということです。(長文になると簡単に見えない...)

 

続きをやっていきます!

 

 

C言語では掛け算の計算記号を * 、割り算を / で表す。(+,- はそのまま)

・% を使えば割り算した時の余り計算することができる。

・数値を整数として計算する時は少数以下は切り捨てられ、整数となる。

・数式の計算する順番は数学と同じ。

 

 

ここら辺はまだまだ余裕ですね。

どんどん先に進みます。

 

 

C言語では数値を整数と実数(浮動小数)の2種類に分類して扱う。

・整数とは、負の数と0と自然数のこと。

・実数とは、小数を含む数のこと。

・整数は10進数、8進数、16進数の3種類の書き方が出来る。

・数字をそのまま書けば10進数、数字の前に0を付ければ8進数、0xを付ければ16進数になる。

・実数を数字に変換するには %f 指定子を使う。

 

 

一見難しいことが書いてありますが、読んでみるとそうでもありませんでした。

次は練習問題です。

 

f:id:fujigg7:20170211042311p:plain

 

余裕です!

まだまだ進みましょう!

 

 

次は数値の記憶ということで、ついに変数が出てきます。

どんどんプログラミングっぽくなってきますね!

それでは簡単にまとめます。

 

 

・変数とは数値を保管するための箱のようなもの。

・変数に名前を付けることを変数を宣言するという。

・変数を宣言するには、型名 変数名; と書く。

・型名とは記憶しておきたい数値の種類を表す名前。

・今は整数を意味する int という型名を覚えておく。

・変数名とは変数に付ける名前のこと。

・変数に数値を記憶させるには、 変数名 = 数値; と書く。

・なお、= は右辺と左辺が等しいという数学的な意味ではなく、右辺の数値を左辺に代入するという意味。

f:id:fujigg7:20170211044722p:plain

f:id:fujigg7:20170211045321p:plain

 

少しずつまとめる内容が多くなってきました。

変数は数学でよく出てくる x のみたいなものなんでしょうか?

= の意味には要注意ですね。

←に置きかえたらわかりやすいみたいです。

ひととおり演算子を覚えたら次へ進みましょう。

 

C言語にはさまざまな種類の数値があり、それをデータ型と呼ぶことがある。

・整数を記憶する int 型、実数を意味する double 型、今はこの2種類のデータ型を覚えておく。

・整数と実数で計算を行った場合、結果は実数に変換される。

・型を強制的に変換する場合キャスト変換という機能を使う。

・キャスト変換をするには、下のように書く。

(変換する型名) 数値や変換名

・printf関数は、出力変換指定子の間に数字を入れると、その数字分の桁に揃えて表示してくれるという機能を持つ。

また、桁数の前に0を付けると、空白の代わりに0を付けて桁を揃えてくれる。

・実数値の桁数を揃えるには下のように書く。

%全体桁数.小数桁数f

全体桁数は小数の桁数と小数点を含むことに注意。

 

データ型の方は理解しやすいですが、桁揃えには少しややこしいですね。

特に実数値に注意。

 

 

次は練習問題です。

 

 

f:id:fujigg7:20170211062039p:plain

 

今回はプログラム書き取り問題に少し苦戦しました。

少し苦戦した分、うまくいったときは今まで以上にうれしかったです!

 

 

いつの間にか1600文字を超えていたので今回はここまでにしたいと思います。

今回でかなりプログラミングっぽい内容になってきました。

すごく楽しくなってきたのでこれからも毎日頑張っていきたいと思います!

 

 

それでは。