C言語とアルゴリズム設計講座 実験1:Cプログラムの動作環境とCプログラムの動かし方
1. 実験の目的
- (1) 使用する計算機システムの基本的な操作方法を理解し、システムを自主的に使用できるようになる。
- (2) このシステムで C プログラムを編集、コンパイル、リンク、実行する方法を理解する。
- (3) 簡単な C プログラムを実行して、C ソースプログラムの特徴を予備的に理解する。
2.実験内容
-
(1) 使用しているコンピュータ システムに C コンパイル システムがインストールされているかどうかを確認し、そのサブディレクトリを特定します。
-
(2) 使用する C コンパイラ統合環境を入力します。
-
(3) 統合環境のインターフェースと関連メニューの使用方法に精通していること。
2.1、簡単な正しいプログラムを入力して実行する
- ①以下のプログラムを入力
# include <stdio. h>
int main()
{
printf ("This is a e program. \n");
return 0;
}
-
② 入力したプログラムを画面上でよく観察し、間違いがないか確認してください。
-
③本書第3部で紹介した方法でソースプログラムをコンパイルし、画面に表示されるコンパイル情報を観察する。「エラーメッセージ」が表示された場合は
、その理由を調べて修正してからコンパイルし、エラーがなければ接続します。 -
④ コンパイルと接続に問題がなければ、プログラムを実行し、実行結果を観察、分析します。
2.2. エラーのある C プログラムの入力と編集
- ①次のプログラムを入力してください(Mincai の第 1 章の例 1.2、意図的にいくつかの文字を欠落またはタイプミスしています)。
#include <stdio.h>
int main()
{
int a, b, sum
a = 123; b = 456;
sum = a+b
print("sum is %d\n", sum);
return 0;
}
- ②コンパイルし、コンパイル情報ウィンドウを注意深く分析します。複数のエラーが表示される場合があります。エラーが発生しなくなるまで、1つずつ修正します
。最後に、教科書のプログラムと比較してください。 - ③ プログラムを実行し、実行結果を分析します。
2.3. 実行時にデータ入力が必要なプログラムを入力して実行する
- ① 以下のプログラムを入力します。
#include <stdio.h>
int main()
{
int max(int x, int y);
int a, b, c;
printf("input a & b:");
scanf("%d,%d", &a, &b);
c = max(a, b);
printf("max=%d\n", c);
return 0;
}
int max(int x, int y)
{
int z;
if (x > y) z = x;
else z = y;
return (z);
}
- ②コンパイルして実行し、実行時にキーボードから整数 2 と 5 を入力し、「Enter」キーを押して実行結果を観察します。
- ③プログラムの4行目を
int a; b; c;
次に、コンパイルして結果を観察します。
- ④ max 関数の 3 行目と 4 行目を 1 行にまとめる、つまり
if (x > y)z = x; else z = y;
コンパイルして実行し、結果を分析します。
2.4. 自分で書いたプログラムを実行する
題材は教科書の第1章の問題6です。つまり、a、b、c の 3 つの値を入力し、最大のものを出力します。
- ①自分で書いたソースプログラムを入力します。
- ②プログラムに誤り(文法誤り、論理誤りを含む)がないかチェックし、誤りがあれば訂正する。
- ③コンパイルして接続し、コンパイルされた情報を注意深く分析し、エラーがあればその理由を見つけて修正します。
- ④ プログラムを実行し、データを入力し、結果を分析します。
- ⑤ 自分でプログラムを修正し(例えば、意図的に間違ったものに変更するなど)、そのコンパイルと動作を分析します。
- ⑥デバッグしたプログラムを自分のユーザディレクトリに保存し、ファイル名をカスタマイズできます。
- ⑦編集ウィンドウをクリアし、再度ファイルを読み込み、編集ウィンドウの内容が保存したばかりのプログラムかどうかを確認します。
- ⑧使用している VisualC++ 統合環境を閉じます Windows の「マイ コンピュータ」を使用して、使用したユーザー サブディレクトリを見つけ、その中のファイルを参照し、サフィックスが .c および .exe のファイルが保存されているかどうかを確認します。
3. 実験手順
3.1. 簡単な正しいプログラムを入力して実行する
- ①以下のプログラムを入力
# include <stdio. h>
int main()
{
printf ("This is a e program. \n");
return 0;
}
- ② 入力したプログラムを画面上でよく観察し、間違いがないか確認してください。
プログラムにエラーはありません。
已启动重新生成…
1>------ 已启动全部重新生成: 项目: 1-C程序的运行环境和运行C程序的方法, 配置: Debug Win32 ------
1>Main.c
1>1-C程序的运行环境和运行C程序的方法.vcxproj -> E:\Document\2-programmLanguageExper\C\1-课程-C语言及算法设计实验\C语言课程实验\Debug\1-C程序的运行环境和运行C程序的方法.exe
========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========
1 成功、0 失敗、0 スキップ
- ③本書第3部で紹介した方法でソースプログラムをコンパイルし、画面に表示されるコンパイル情報を観察する。「エラーメッセージ」が表示された場合は
、その理由を調べて修正してからコンパイルし、エラーがなければ接続します。 - ④ コンパイルと接続に問題がなければ、プログラムを実行し、実行結果を観察、分析します。
プログラムのコンパイルと動作の結果は次のとおりです。
3.2. エラーのある C プログラムの入力と編集
- ①次のプログラムを入力してください(Mincai の第 1 章の例 1.2、意図的にいくつかの文字を欠落またはタイプミスしています)。
#include <stdio.h>
int main()
{
int a, b, sum
a = 123; b = 456;
sum = a+b
print("sum is %d\n", sum);
return 0;
}
コンパイル時に以下のエラーメッセージが表示されます
- ②コンパイルし、コンパイル情報ウィンドウを注意深く分析します。複数のエラーが表示される場合があります。エラーが発生しなくなるまで、1つずつ修正します
。最後に、教科書のプログラムと比較してください。
修正後のプログラムは以下の通り
#include <stdio.h>
int main()
{
int a, b, sum;
a = 123; b = 456;
sum = a + b;
printf("sum is %d\n", sum);
return 0;
}
- ③ プログラムを実行し、実行結果を分析します。
正しいプログラムを実行した結果は次のとおりです。
3.3. 実行時にデータ入力が必要なプログラムを入力して実行する
- ① 以下のプログラムを入力します。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int max(int x, int y);
int a, b, c;
printf("input a & b:");
scanf("%d,%d", &a, &b);
c = max(a, b);
printf("max=%d\n", c);
return 0;
}
int max(int x, int y)
{
int z;
if (x > y) z = x;
else z = y;
return (z);
}
- ②コンパイルして実行し、実行時にキーボードから整数 2 と 5 を入力し、「Enter」キーを押して実行結果を観察します。
結果をコンパイルして実行する
集計結果は以下の通り
已启动重新生成…
1>------ 已启动全部重新生成: 项目: 1-C程序的运行环境和运行C程序的方法, 配置: Debug Win32 ------
1>Main.c
1>Main2.c
1>Main3.c
1>正在生成代码...
1>1-C程序的运行环境和运行C程序的方法.vcxproj -> E:\Document\2-programmLanguageExper\C\1-课程-C语言及算法设计实验\C语言课程实验\Debug\1-C程序的运行环境和运行C程序的方法.exe
========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========
- 1 成功、0 失敗、0 スキップ。
操作の結果は次のとおりです。
- プログラムの実行結果は正しく、2 つの数値 2 と 5 の最大値を見つけることができます。
- ③プログラムの4行目を
int a; b; c;
次に、コンパイルして結果を観察します。
以下に示すように、プログラムの 4 行目を
int a; b; c;
コンパイルして後で結果を実行するように変更します。
-
プログラムが表示されます。
error C2065: “c”: 未声明的标识符
-
int a; b; c;
: b 変数と c 変数は定義されていませんが、a 変数は定義されていることを示します。 -
④ max 関数の 3 行目と 4 行目を 1 行にまとめる、つまり
if (x > y)z = x; else z = y;
- コンパイルして実行し、結果を分析します。
max 関数の 3 行目と 4 行目を結合して 1 行に記述し、結果を次のようにコンパイルして実行します。
- max 関数の 3 行目と 4 行目を 1 行にまとめてコンパイルし、結果を実行するのが正しいです。
3.4. 自分で書いたプログラムを実行する
題材は教科書の第1章の問題6です。つまり、a、b、c の 3 つの値を入力し、最大のものを出力します。
- ①自分で書いたソースプログラムを入力します。
書いたソースプログラムは以下の通り
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int maxFn(int a, int b, int c);
int main()
{
system("color 3E");
int a, b, c, max;
printf("input a & b & c:");
scanf("%d%d%d", &a, &b, &c);
max = maxFn(a, b, c);
printf("max=%d\n", max);
system("pause");
return 0;
}
int maxFn(int a, int b, int c)
{
int max;
max = a;
if (max < b)
{
max = b;
}
if(max < c)
{
max = c;
}
return max;
}
- ②プログラムに誤り(文法誤り、論理誤りを含む)がないかチェックし、誤りがあれば訂正する。
- ③コンパイルして接続し、コンパイルされた情報を注意深く分析し、エラーがあればその理由を見つけて修正します。
- ④ プログラムを実行し、データを入力し、結果を分析します。
次のようにプログラムをコンパイルして実行します
- ⑤ 自分でプログラムを修正し(例えば、意図的に間違ったものに変更するなど)、そのコンパイルと動作を分析します。
- ⑥デバッグしたプログラムを自分のユーザディレクトリに保存し、ファイル名をカスタマイズできます。
- ⑦編集ウィンドウをクリアし、再度ファイルを読み込み、編集ウィンドウの内容が保存したばかりのプログラムかどうかを確認します。
- ⑧使用している VisualC++ 統合環境を閉じます Windows の「マイ コンピュータ」を使用して、使用したユーザー サブディレクトリを見つけ、その中のファイルを参照し、サフィックスが .c および .exe のファイルが保存されているかどうかを確認します。
.c および .exe ファイルは次のとおりです。
4. 実験のまとめ
C言語とアルゴリズム設計のコース実験:Cプログラムの動作環境とCプログラムの実行方法を通じて、
次の点を習得しました。
- (1) 使用する計算機システムの基本的な操作方法を理解し、システムを自主的に使用できるようになる。
- (2) このシステムで C プログラムを編集、コンパイル、リンク、実行する方法を理解する。
- (3) 簡単な C プログラムを実行して、C ソースプログラムの特徴を予備的に理解する。
5、実験の完全なコード
5.1、Main1.c ソース ファイル
Main1.c ソース ファイル コードは次のとおりです。
#include <stdio.h>
#include <stdlib.h>
int main()
{
system("color 3E");
printf("This is a e program. \n");
system("pause");
return 0;
}
5.2、Main2.c ソース ファイル
Main2.c ソース ファイル コードは次のとおりです。
#include <stdio.h>
int main()
{
int a, b, sum;
a = 123; b = 456;
sum = a + b;
printf("sum is %d\n", sum);
return 0;
}
5.3、Main3.c ソース ファイル
Main3.c ソース ファイル コードは次のとおりです。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int max(int x, int y);
int a, b, c;
printf("input a & b:");
scanf("%d,%d", &a, &b);
c = max(a, b);
printf("max=%d\n", c);
return 0;
}
int max(int x, int y)
{
int z;
/*if (x > y) z = x;
else z = y;*/
if (x > y)z = x; else z = y;
return (z);
}
5.4、MaxDigit.c ソースファイル
MaxDigit.c のソース ファイル コードは次のとおりです。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int maxFn(int a, int b, int c);
int main()
{
system("color 3E");
int a, b, c, max;
printf("input a & b & c:");
scanf("%d%d%d", &a, &b, &c);
max = maxFn(a, b, c);
printf("max=%d\n", max);
system("pause");
return 0;
}
int maxFn(int a, int b, int c)
{
int max;
max = a;
if (max < b)
{
max = b;
}
if(max < c)
{
max = c;
}
return max;
}