C#の構文とは?C#の構文・構文の組み合わせ・構文を使った記述
- SE
- C#の構文とは何ですか?
- PM
- プログラムの構文とは文や式を記述する際、プログラム上で正しく動作させる記述のことです。詳しく説明しましょう。
この記事でわかること
C#の構文とは?
C#の構文について紹介します。まずプログラムの構文とは文や式を記述する際、プログラム上で正しく動作させる記述のことです。C#の構文に興味のある方は是非ご覧ください。
C#に構文はあるのか?
C#でも構文は存在します。構文を使わずに記述してしまうとほとんどの場合はエラーとなってしまいます。構文を使うことで、条件分岐、繰り返し文などを簡単に実装することができます。
C#の構文について
C#では基本的に決まった形で文や式を記述しなければプログラムは正しく動作しません。一例として、C#では整数や文字などを扱う際には変数を作成する必要があります。
実際に見てみます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class Program
{
static void Main(string[] args)
{
//整数を入れる変数を作成
int num_A;
int num_B;
//文字を入れる変数を作成
string str_A;
string str_B;
}
}
|
上記のように記述することで、C#のプログラム上で整数を扱うために必要なint型の変数num_Aとnum_Bの二つと、文字を扱うために必要なstring型の変数str_Aとstr_Bの二つを作成することができます。変数を作成する記述はほかにもあります。
ですが、上記の記述方法は少し変えるだけでエラーとなってしまいます。
実際にエラーとなる記述を見てみます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class Program
{
static void Main(string[] args)
{
//整数を入れる変数を作成
num_A int;
Int num_B;
//文字を入れる変数を作成
str_A;
strin str_B;
}
}
|
上記の変更を加えたプログラムでは変数の作成が4つともエラーとなってしまいます。
型と変数名が逆だったり、型の大文字小文字が違ったりと、人が見たらなにを記述したいか、何をやりたいかを読み解くことができても、プログラムでは少しでも記述が違うだけでエラーとなってしまいます。
構文の組み合わせについて
C#の構文は特定の処理を行ってくれるだけなので、それ一つだけではC#のプログラムとしてうまく機能してくれません。複数の構文を組み合わせることで、目的の機能を作成します。
入力された整数に1-5をかけて3の倍数を強調するC#のプログラムを実際に見てみます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
using System;
class Program
{
static void Main(string[] args)
{
//整数用の変数
int Num;
int Answer;
Console.WriteLine("整数を入力してください。");
//コンソールからの入力を代入
Num = int.Parse(Console.ReadLine());
//掛け算処理
for (int i = 1; i <= 5; i++)
{
//Num* iの結果を代入
Answer = Num * i;
if (Answer % 3 == 0)
{
//3の倍数
Console.WriteLine(Answer + "は3の倍数です");
}
else
{
//3の倍数以外
Console.WriteLine(Answer);
}
}
}
}
|
実行結果:
整数を入力してください。
2
2
4
6は3の倍数です
8
10
上記のプログラムですが、実際にはどのようになっているか確認してみます。
プログラムの関数内に記述されている構文を確認すると、まず入力された整数を受け取るint型の変数Numと、計算した結果の整数を受け取るint型の変数Answerが宣言されています。
1
2
3
4
|
int Num;
int Answer;
|
次に2つの場所で値の代入を行っています。一つ目の記述は変数Numにコンソールから値を取得しています。
二つ目の記述は、変数Answerに繰り返し文で作成したint型のiと掛け算をした結果を代入しています。
1
2
3
4
|
Num = int.Parse(Console.ReadLine());
Answer = Num * i;
|
次に1-5の値を順番に掛け算を行うための繰り返し文を使用しています。
1
2
3
4
5
6
7
8
|
for (int i = 1; i <= 5; i++)
{
-----------------
割愛
-----------------
}
|
次に繰り返し文の中で条件分岐を行い、3の倍数かどうかを判別しています。
1
2
3
4
5
6
7
8
9
10
11
12
|
if (Answer % 3 == 0)
{
//3の倍数
Console.WriteLine(Answer + "は3の倍数です");
}
else
{
//3の倍数以外
Console.WriteLine(Answer);
}
|
上記のように複数の構文を使うことで、思い通りの機能を作成しています。
構文を使った記述について
構文を使い、同じ目的のプログラムを作成し、同じ結果を表示していても、記述内容が違う場合があります。プログラムを作成する際に、どの構文をどのように組み合わせるかはプログラム作成者が考えて、記述していく必要があります。
次の2つの「入力された文字2つを合わせて表示するプログラム」を見てみます。
入力された文字2つを合わせて表示するプログラム_1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
using System;
class Program
{
static void Main(string[] args)
{
//文字合わせ用変数
string str_A;
string str_B;
//str_Aに代入
Console.WriteLine("文字列を入力してください。");
str_A = Console.ReadLine();
//str_Bに代入
Console.WriteLine("文字列を入力してください。");
str_B = Console.ReadLine();
Console.WriteLine("文字合わせの結果は以下です。");
Console.WriteLine(str_A + str_B);
}
}
|
実行結果:
文字列を入力してください。
今日は
文字列を入力してください。
暑いです
文字合わせの結果は以下です。
今日は暑いです
入力された文字2つを合わせて表示するプログラム_2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
using System;
class Program_2
{
static void Main(string[] args)
{
string str_sum;
str_sum = null;
for (int i= 1; i <= 2; i++)
{
Console.WriteLine("文字列を入力してください。");
if (i == 1)
{
str_sum = Console.ReadLine();
}
else
{
str_sum = str_sum + Console.ReadLine();
}
}
Console.WriteLine("文字合わせの結果は以下です。");
Console.WriteLine(str_sum);
}
}
|
実行結果:
文字列を入力してください。
今日は
文字列を入力してください。
暑いです
文字合わせの結果は以下です。
今日は暑いです
上記のように2つのプログラムは記述がほぼ別物ですが、プログラムを実行してコンソールに同じ値を入力することで、同じ結果を返します。
入力された文字2つを合わせて表示するプログラム_1では、二つの変数に値を別々に代入し、コンソール上に合わせて表示しています。
1
2
3
4
5
6
7
8
9
10
11
12
|
//str_Aに代入
Console.WriteLine("文字列を入力してください。");
str_A = Console.ReadLine();
//str_Bに代入
Console.WriteLine("文字列を入力してください。");
str_B = Console.ReadLine();
Console.WriteLine("文字合わせの結果は以下です。");
Console.WriteLine(str_A + str_B);
|
入力された文字2つを合わせて表示するプログラム_2では、繰り返し文を使い、一つの変数の中に値を代入していき、コンソール上には一つの変数で表示しています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
for (int i= 1; i <= 2; i++)
{
Console.WriteLine("文字列を入力してください。");
if (i == 1)
{
str_sum = Console.ReadLine();
}
else
{
str_sum = str_sum + Console.ReadLine();
}
}
Console.WriteLine("文字合わせの結果は以下です。");
Console.WriteLine(str_sum);
|
どちらかが間違っているわけではありません。上記二つのプログラムは求めた結果を返しており、プログラムの構文に間違いがないため問題ありません。
上記二つのプログラム以外にも、たくさんの記述方法が考えられます。
- SE
- C#の構文についてよくわかりました。
- PM
- 決まった記述方法で処理を簡単に作成することができます。使用用途に適している構文を使いましょう。
C#で構文を使ってみよう
いかがでしたでしょうか。C#では構文を使わなければほとんどの場合はエラーとなってしまいますが、決まった記述方法があるため、処理を簡単に作成することができます。
同じような処理の構文でも、使用用途が違ったりするため、作成したい機能に適している構文を使う必要があります。
ぜひ構文を調べて、C#のプログラムを作成してみてください。
Search キーワード検索
Popular 人気の記事
-
【VB.NET入門】DataGridViewの使い方まとめ
公開: 更新:
reccomended おすすめ記事
-
【.NETが統合】.NET 5の概要と今後のリリース予定
公開: 更新:
Categories 連載一覧
Tags タグ一覧
Jobs 新着案件
-
システム開発/東京都新宿区/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円東京都新宿区(新宿駅) -
システム開発/東京都新宿区/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円東京都新宿区(新宿駅) -
デバック、テスト項目の作成/神奈川県横浜市/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円神奈川県横浜市(桜木町駅) -
デバック、テスト項目の作成/神奈川県横浜市/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円神奈川県横浜市(桜木町駅) -
基幹システム開発導入/東京都新宿区/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円東京都新宿区(西新宿駅) -
基幹システム開発導入/東京都新宿区/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円東京都新宿区(西新宿駅)