0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Scratchから学ぶC言語 第二回 「変数編」

0
Posted at

はじめに

初めての方は最初(第一回)から、前回からの方は頑張りましょう。
それでは、早速始めます。

変数とは

簡単に言えば、「箱」です。いろいろ入れておける箱。
文字とか数字を入れられます。Scratchだとこんなの↓

image.png

おんなじ名前ですね。わかってる人もいると多いと思います。じゃあこれをコードに...の前に、日本語だとエラー出るかもしれないので、英語で書きましょう。Scratch側がこんな感じ↓

image.png

圧倒的センスの無さ
恥ずかしいです。が、これでやるしかないです。

その前に

その前に(2回目)、変数の特徴を教えます。変数には、「型」と言うものがあります。型によって、変数の中に入れられるものが変わります。大きく分けて次の三つです。

型の名前 何を入れられるか
int 整数
float 小数
char 文字

今回は、わかりやすいint型でやりましょう。他の方は難しい (教えるのがめんどくさい) ので...。

変数を作る

そもそも入れる箱がなかったら、何も入れられないですもんね。Scratchでも、以下でいう「変数を作る」ボタンを押すと、変数が作れると思います。

image.png

じゃあ、変数を作るコードを書いていきましょう。

int hensu1;

これで終わりです!
これを、コードの初めに書いておけばいいです。
ちなみに、変数を作ることを「変数を定義する」とも言います。覚えておきましょう...
じゃあ、試しに変数をいじってみましょう!

image.png

これと同じことをC言語でやってみます。で、多分皆さん

#include <stdio.h>

int main(void){
    int hensu1;

までは書いたと思います。
...で、どうやって箱の中身を1にするの???
ということで、箱の中に数字を入れましょう。
数字を入れるには、

hensu1 = 1;

としてやればいいです。ちなみに、

1 = hensu1;

はできません。
なぜかというと、ルールに反してるからです。
変数を設定するときは、=の左側に、いれられる変数(箱)の名前、右側に入れるものを書くからです。
これを踏まえると、以下の通りになるはずです。

#include <stdio.h>

int main(void){
    int hensu1;
    hensu1 = 1;
}

それでは、実行してみましょう!

image.png

「...あれ?何もないぞ??」
と思ったかもしれません。
実は表示されてないだけで、内部では設定されています。
「じゃあ、表示するためにどうすればいいの?」
ってことで、やっていきましょう。

変数をprintfで表示する

printf、前回出てきましたね。
えっまだ忘れてないですよね??忘れたなら読み直してください。(え
まあ、以下のような感じでやります。

printf("出したい文字");

出力は省略します。
それでは、これを使って変数を出力させます。
結論から言うと、こうします。

printf("%d",hensu1);

え、は、何これ
ってことで解説します。

%dって何??

%dの部分は、変数を表示させるためのおまじないです(n回目)。
ただ、これも変数の型によって何を書くか変わります。以下の表を参考にしてください。

表示させたい変数の型 書くやつ
int型 %d
float型 %f
char型 %c

ちなみに、これの前や後に文字を入れてもちゃんと%何たらを打ったところに変数の中身がきます。なので、¥n(\n)を後に入れて、出力を見やすくするのもいいかもしれません。
ただし、これだけだと表示させる変数が設定されていないので意味ないです。じゃあ、表示させる変数を設定しましょう。

表示される変数を設定

表示される変数を設定するには、"(ダブルクォーテーション)で先ほどの文字(&なんとか)を囲んだあと、,(カンマ)をつけて、変数の名前を書きます。それが先ほど見せたこれですね。

printf("%d¥n",hensu1);

(改行するために¥nを入れてます。)
これは、Scratchでいうこんな状態です↓

image.png

それでは、これをhensu1 = 1;の後に入れてみましょう。

#include <stdio.h>

int main(void){
    int hensu1;
    hensu1 = 1;
    printf("%d¥n", hensu1);
}

実行してみると...

image.png

できましたね!
次は、ちょっとしたテクニックを伝授します。

テクニック

1.変数の宣言と設定を一緒にする方法

変数の宣言と設定は一緒にできます。
例えば、hensu2と言う変数を宣言して、2を設定するために、

int hensu2;
hensu2 = 2;

と書いてもいいですが、ちょっと面倒ですよね?
じゃあどうやって一緒にするか。こうします。

int hensu2 = 2;

はい。繋げるだけです。簡単ですね。次。

2.複数の変数を一気に宣言する方法

「変数って複数作れるの?」の思った方もいるかもしれないです。まあ、ほぼ作れることを知ってると思いますが。例として、変数a、bを宣言してみましょう。先ほどまでの流れでいくと、

int a;
int b;

となりますね。見やすいですし。ただし、いちいち複数行にわたって宣言するのはちょっと面倒ですよね?(2回目)
じゃあこうしましょう。

int a, b;

これも簡単ですね。1つ目の変数の後に、カンマを置いて次の変数を置く。って感じです。
ちなみに、カンマを置いて次の変数をおく、を繰り返すと、その分変数が作れます。次。

3.複数の変数を一気に宣言しながら設定する方法

今までの合わせ技です。aに3、bに9をぶち込みましょう。

int a = 3, b = 9;

楽勝ですね。次。

4.複数の変数を一つのprintfで表示する方法

じゃあ、hensu1hensu2の中身を表示するにはどうすればいいでしょうか。
最終的に、

1と4です。

と表示させましょう。
ここまで書いたことを使うと、

#include <stdio.h>

int main(void){
    int hensu1 = 1, hensu2 = 3;
    printf("%dと", hensu1);
    printf("%dです。¥n", hensu2);
}

となります。ただし、これも一行にできます。こうやります↓

#include <stdio.h>

int main(void){
    int hensu1 = 1, hensu2 = 3;
    printf("%dと%dです。¥n", hensu1, hensu2);
}

やり方は、表示させたい変数を入れる場所へ先に、%なんとか(この場合は%d)を入れておきます。ダブルクォーテーションの中のやつですね。これ→"%dと%dです。¥n"
次に、表示させたい変数を、表示させたい順番でダブルクォーテーションの後のカンマの後に書いていきます。変数はカンマで区切ります。これ→, hensu1, hensu2
複数ある場合も、カンマで同じように区切り続ければOKです。

それでは、今回は以上です。お疲れ様でした。それではまた次回。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?