学生向けプログラミング入門

学生向けにプログラミングを解説。Java、C++、Ruby、PHP、データベース、Ruby on Rails

C++プログラミング入門その13 文字変数を使用したプログラム(2020年3月更新)

<<前  [TOP]  次>>


Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。


【MojiTest1.cpp】

#include <iostream>

int main() {

	char a;

	std::cout << "y か n を入力してください-->" << std::endl;

	std::cin >> a;

	if ( a == 'y' ) {

		std::cout << "Yes" << std::endl;

	}

	else if ( a == 'n' ) {

		std::cout << "No" << std::endl;

	}
	else {

		std::cout << "ERROR" << std::endl;

	}
}



文字変数の入出力キーボードから文字を1文字読み取り、'y'だったならばYESを、'n'だったならばNOを、それ以外だったならばERRORを表示するプログラムです。


C言語では文字をシングルクォーテーション(’)で囲んで表す決まりになっています。


  • 文字aは「'a'」
  • 文字bは「'b'」
  • 文字1は「'1'」


    文字はあくまでも1個の文字を意味しています。
    「hello」などのようないくつかの文字がある場合は文字列といいます。
    文字と文字列は異なるもので扱い方も違います。


    文字を格納する変数を文字変数といいます。
    整数型や実数型に対する言葉としては文字型といい、文字型変数とも言います。
    この場合の文字とは英数記号に限ります。
    日本語の文字は2つの数を組み合わせて表現しているので文字変数には大きすぎて格納できません。

    文字変数の宣言    char 変数名, 変数名・・・・
    

  • 例1    char c;
  • 例2    char c1; char c2;
  • 例3    char c1, c2;
  • 例4    char c = 'a';


    例2と例3は、c1, c2という2つの文字変数を宣言している点で同じです。
    例4は文字変数cを宣言した上で、文字 'a'を代入しています。
    このように宣言と代入(初期化)を一度にできるので非常に便利です。
    他の整数型や実数型などでも使えます。


    コンピュータは大文字と小文字も区別しますので、このプログラムで入力を「Y」としても「y」とは区別され、出力結果は「ERROR」になります。


    サンプルプログラムをビルドして実行してみましょう。
    キーボードから文字を1文字読み取り、'y'だったならばYESを、'n'だったならばNOを、それ以外だったならばERRORを表示します。


    MojiTest1.cpp実行結果
    MojiTest1.cpp実行結果


    Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。


    【MojiTest2.cpp】

    #include <iostream>
    
    int main() {
    
    	int a;
    	char c;
    
    	std::cout << "何か文字をひとつ入力してください-->" << std::endl;
    
    	std::cin >> c;
    
    	a = c;
    
    	std::cout << "文字に割り当てられた値は" << a << "です。" << std::endl;
    
    }
    



    文字に割り当てられた値を調べるためにキーボードから文字を1文字読み取り、その文字の値を調べるプログラムです。


    標準入力「std::cin」を使って文字をキーボードから読み取っています。
    文字変数にはコンピュータで整数が割り当てられています。


    文字の大きさは一般に次のようになっています。

  • 'a' < 'b' < 'c' < ・・・・ < 'z'
  • 'A' < 'B' < 'C' < ・・・・< 'Z'
  • '0' < '1' < '2' < ・・・・< '9'


    このプログラムでは与えられたchar型文字変数cを整数型の変数aに代入し直し、文字を整数に変えています。 


    サンプルプログラムをビルドして実行してみましょう。
    キーボードから文字を一文字入力するとその文字に割り当てられた整数が画面に表示されます。


    MojiTest2.cpp実行結果
    MojiTest2.cpp実行結果


    Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。


    【MojiTest3.cpp】

    #include <iostream>
    
    int main() {
    
    	int i;
    	char c;
    
    	i = 'a' + 'A';
    
    	std::cout << "例1: a' + 'A' = " << i << std::endl;
    
    	c = 1 + 'a';
    	i = c;
    
    	std::cout << "例2: 1 + 'a' を整数で出力すると" << i << std::endl;
    	std::cout << "例3: 1 + 'a' を文字で出力すると" << c << std::endl;
    }
    



    文字変数の足し算をするプログラムです。
    サンプルプログラムを実行して確認してみましょう。


    MojiTest3.cpp実行結果
    MojiTest3.cpp実行結果


    <<前  [TOP]  次>>