この記事では、C言語を使用して3つの整数を大きい順に並び替える方法を解説します。
初心者の方でもわかりやすく、具体的なプログラムの作り方や実行結果の例を通じて、並び替える手順を学ぶことができます。
目次から探す
3つの整数を大きい順に並び替えるプログラムの作り方
3つの整数を入力する
まず最初に、3つの整数を入力するためのプログラムを作成します。
#include <stdio.h>
int main() {
int num1, num2, num3;
printf("3つの整数を入力してください:");
scanf("%d %d %d", &num1, &num2, &num3);
return 0;
}
上記のコードでは、num1
、num2
、num3
という3つの整数変数を宣言し、printf
関数とscanf
関数を使用してユーザーからの入力を受け取ります。
3つの整数を比較する
次に、入力された3つの整数を比較するためのプログラムを作成します。
#include <stdio.h>
int main() {
int num1, num2, num3;
printf("3つの整数を入力してください:");
scanf("%d %d %d", &num1, &num2, &num3);
if (num1 >= num2 && num1 >= num3) {
// num1が最大の場合
// num2とnum3を比較して並び替える必要がある
} else if (num2 >= num1 && num2 >= num3) {
// num2が最大の場合
// num1とnum3を比較して並び替える必要がある
} else {
// num3が最大の場合
// num1とnum2を比較して並び替える必要がある
}
return 0;
}
上記のコードでは、if
文を使用して3つの整数を比較しています。
最大の整数を判定するために、>=
演算子を使用しています。
3つの整数を並び替える
次に、入力された3つの整数を大きい順に並び替えるためのプログラムを作成します。
#include <stdio.h>
int main() {
int num1, num2, num3;
printf("3つの整数を入力してください:");
scanf("%d %d %d", &num1, &num2, &num3);
if (num1 >= num2 && num1 >= num3) {
// num1が最大の場合
if (num2 >= num3) {
// num2がnum3よりも大きい場合
// num1, num2, num3の順に並び替える
printf("並び替えた結果:%d %d %d\n", num1, num2, num3);
} else {
// num3がnum2よりも大きい場合
// num1, num3, num2の順に並び替える
printf("並び替えた結果:%d %d %d\n", num1, num3, num2);
}
} else if (num2 >= num1 && num2 >= num3) {
// num2が最大の場合
if (num1 >= num3) {
// num1がnum3よりも大きい場合
// num2, num1, num3の順に並び替える
printf("並び替えた結果:%d %d %d\n", num2, num1, num3);
} else {
// num3がnum1よりも大きい場合
// num2, num3, num1の順に並び替える
printf("並び替えた結果:%d %d %d\n", num2, num3, num1);
}
} else {
// num3が最大の場合
if (num1 >= num2) {
// num1がnum2よりも大きい場合
// num3, num1, num2の順に並び替える
printf("並び替えた結果:%d %d %d\n", num3, num1, num2);
} else {
// num2がnum1よりも大きい場合
// num3, num2, num1の順に並び替える
printf("並び替えた結果:%d %d %d\n", num3, num2, num1);
}
}
return 0;
}
上記のコードでは、if
文を使用して最大の整数を判定し、さらにif
文を使用して2番目に大きい整数を判定しています。
それに応じて、printf
関数を使用して並び替えた結果を出力しています。
並び替えた結果を出力する
最後に、並び替えた結果を出力するためのプログラムを作成します。
先ほどのコードに既に含まれていますが、改めて以下に示します。
printf("並び替えた結果:%d %d %d\n", num1, num2, num3);
上記のコードでは、printf
関数を使用して並び替えた結果を出力しています。
%d
は整数を表示するためのフォーマット指定子です。
以上で、3つの整数を大きい順に並び替えるプログラムの作り方が完了しました。
次のページより実践的な配列を使って実装してみる