【初心者向け】情報学部生と学ぶC言語 [1限目:変数と標準入出力]

前回の復習

前回はprintfをつかってHello World!という文字の出力を行いました。

しかし、printfで出力出来るのは文字だけではありません。プログラムの中で計算してその数値を出力するなんて事もできます。

ということで、今回は数値の出力から取り扱っていきます。

数値の出力

23+47を計算して出力するプログラムを作りましょう。以下のソースコードを見てください。

/******
filename:constant.c
*******/

#include<stdio.h>
int main(void)
{
	printf("%d\n",23+47);

	return 0;
}
■実行結果
70

コードの説明

%d

dはdecimal(10進数という意味です)の頭文字で、「以下の実引数を10進数で表示しでください」という書式の指定を行なっています。コードでいえば23+47が対象の実引数となります。

変数

変数というのは、文字や数字などの値を格納する箱のようなものです。aという箱に10という数字を入れるというようなイメージです。箱という表現はプログラミングにおいて、しばしば使われる表現です。

以下のプログラムは先程の計算を一度変数に代入して出力するプログラムです。

/*******
filename:variable.c
*******/

#include<stdio.h>
int main(void)
{
	int a=23;
	int b=47;
	int sum=a+b;
	
	printf("%d\n",sum);
	
	return 0;
}

 

■実行結果
70

コードの説明

int a=23

intというのは整数を意味します。ですからint aというのは変数aは整数の型ですよという宣言になります。他にも様々な型があります。

 
型名とその意味
型名 意味
int 整数型
double 浮動小数点数型(8バイト)
float 浮動小数点数型(4バイト)
char 文字型
void 型なし

また、a=23というのは変数aを23という値で初期化するということを意味します。

変数は宣言された時点である値が割り当てられます。そのままでは計算出来ないので最初に初期化してあげる必要があります。

またa=23というのは、変数aに23を代入するということを意味します。数学のようにaと23が等しいという意味ではありません。

プログラミングでは=で結んだ時、右の値を左の変数に代入するということを意味します。ですからプログラミングではa=bとb=aでは全く違うということに注意しましょう!

前回の復習part2

コードを書いていく上で最初に記述する呪文がありましたよね?

えーと。#include<stdio.h>だっけ?

そうです!ではstdioとはなんの略ですか?

standard input/output だから標準入出力だ!

さすがですね!完璧です。

stdioが標準入出力ならば出力があれば入力もあるはず。

ということで、入力について学習しましょう。

入力にはscanfを使おう!

今回はキーボードから数値を入力し、その値を使って計算して出力するプログラムを作成します。

以下のソースコードをみてください。

/*****
filename:input.c
*****/

#include<stdio.h>
int main(void)
{
	int a=0;
	int b=0;
	
	printf("一つ目の値は?:");
	scanf("%d", &a);
	
	printf("二つ目の値は?:");
	scanf("%d", &b);
	
	printf("%d + %d = %d\n", a, b, a+b);
	
	return 0;
}

 

■実行結果[例]
一つ目の値は?:23
二つ目の値は?:47
23 + 47 = 70

コードの説明

scanf

キーボードからの入力をコンピュータが待つときに使われる命令です。キーボードから入力される値は、「,」以下の変数に格納されます。その際、&をつけることに注意しましょう。

今回のプログラムでは、scanf(“%d”,&a)となっているので、「aという変数にキーボードから入力された10進数の値を格納する」という命令になります。


次回は、今回少し触れた型について、整数型以外にも触れていきましょう。

C言語学習におすすめのテキストはこちら

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です