C#プログラムで文字列を入力する

今回のC#プログラミング学習は、文字を扱う方法について学習していきます。

ユーザーから入力された文字列を変数に格納したり表示させたりしてみます。

プログラムのダウンロード

まずは今回学習していくためのプログラムをダウンロードしましょう。

ここをクリックして「Sample.zip」ファイルをダウンロードしてください。

ZIP形式になっているので、ダウンロードしたら、マウスの右クリックで「すべて解凍」を選びます。

すると、Sampleプロジェクトが展開されます。

プログラムファイルを開く

Sampleプロジェクトの中に「Sample.sln」ファイルがあるので、このファイルを開くとVisualStudioのVisualC#が立ち上がります。

ソリューションエクスプローラから「Program.cs」を開くと、以下のようなプログラムが表示されます。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            string strFirstName, strLastName;

            Console.Write("苗字を入力:");
            strLastName = Console.ReadLine();

            Console.Write("名前を入力:");
            strFirstName = Console.ReadLine();

            Console.Write("あなたは {0} さんですね", strLastName + strFirstName);
            Console.ReadLine();
        }
    }
}

プログラムのビルド

F7キーを押すとプログラムのビルドが行われ、実行ファイルが作成されます。


VisualC#でサンプルプログラムをビルドした様子

プログラムの実行

F5キーを押すとプログラムが実行されます。

まずは「苗字を入力:」と表示されるので、あなたの苗字を入力します。

通常だと半角アルファベットで入力すると思いますが、半角全角キーを押して全角文字を入力することもできます。

入力が終わったらEnterキーを押します。

続いて「名前を入力:」と表示されるので、あなたの名前を入力しEnterキーを押します。

すると先ほど入力したあなたの苗字と名前が表示されます。


サンプルプログラムを実行させた様子

Enterキーを押すとプログラムが終了します。

プログラム解説

それでは今回学習するC#プログラムを見てみましょう。

プログラムの流れ

実行結果からもわかるように、今回は文字列を扱うプログラムです。

まずは文字列を入れる変数を宣言し、次にユーザーからの入力を促し、最後に入力された文字列を表示させています。

文字列を扱う変数

文字列を扱うためには、string型の変数を使います。

サンプルプログラムでは、以下の部分でstring型の変数を2つ宣言しています。

string strFirstName, strLastName;

実は正確にはstringというのは型ではないんですが、今は話を分かりやすくするためにそういうことにしておいてください。

文字列の入力

文字や文字列に限らず、ユーザーから何らかの入力値を受け取るときには、「Console.ReadLine();」を使います。

すでに何度も出てきているので、プログラムを一時的に止める命令だと思っているかもしれませんが、本当は、ユーザーからの入力値を受け付けるために使います。

サンプルプログラムでは以下の部分です。

Console.Write("苗字を入力:");
strLastName = Console.ReadLine();
Console.Write("名前を入力:");
strFirstName = Console.ReadLine();

「Console.Write」を使っているので、「苗字を入力:」と表示され、その右側で入力用のカーソルが点滅している状態になります。

ユーザーが何らかの文字や文字列を入力しEnterキーを押すと、変数「strLastName」に入力された値が入ります。

すると次の命令が実行されるので、すぐ下の行で同じように「名前を入力:」と表示され、入力用のカーソルが点滅して止まります。

そして再びユーザーが文字や文字列を入力しEnterキーを押すと、変数「strFirstName」に入力値が入るわけです。

文字列の表示

変数内の文字や文字列の表示も基本的には、以前学習した変数内の数値を表示させる方法と同じです。

サンプルプログラムでは以下の部分です。

Console.Write("あなたは {0} さんですね", strLastName + strFirstName);

今回は「{0}」というひとつしか用意しなかったので、後ろの変数部分は「+」を使って文字列同士をつなげています。

こんな書き方もできるので、覚えておきましょう。