はじめに
この実験では、配列要素を昇順にソートする手順を段階的に案内します。
新しいファイルを作成する
~/project/ ディレクトリに main.c という名前の新しい C プログラムファイルを作成します。ここにコードを記述します。
変数を宣言する
配列をソートする際に使用する必要な変数を宣言します。
#include <stdio.h>
int main()
{
int n, i, j, temp, arr[100];
nは要素数を格納しますarrは要素を保持する配列になりますiとjはループカウンタですtempは要素を交換するために使用する一時変数です
配列要素を入力する
ユーザーにソートしたい要素数を入力してもらい、その後、各要素の入力を促します。
printf("Enter the number of elements you want to sort (max 100): ");
scanf("%d", &n);
printf("Enter %d integers: \n", n);
for(i = 0; i < n; i++)
scanf("%d", &arr[i]);
配列要素をソートする
ネストした for ループを使って配列をソートします。
for(i = 0; i < n-1; i++)
{
for(j = 0; j < n-i-1; j++)
{
if(arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
ソート済みの配列要素を表示する
ソート済みの配列要素を表示します。
printf("Sorted list in ascending order:\n");
for(i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
プログラムをコンパイルして実行する
プログラムが正しく動作することを確認するために、プログラムをコンパイルして実行します。
main.c の完全なコード
#include <stdio.h>
int main()
{
int n, i, j, temp, arr[100];
printf("Enter the number of elements you want to sort (max 100): ");
scanf("%d", &n);
printf("Enter %d integers: \n", n);
for(i = 0; i < n; i++)
scanf("%d", &arr[i]);
for(i = 0; i < n-1; i++)
{
for(j = 0; j < n-i-1; j++)
{
if(arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
printf("Sorted list in ascending order:\n");
for(i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
return 0;
}
まとめ
この実験では、C プログラムを使って配列要素を昇順にソートする方法を学びました。これらの知識を使って、自分自身のコードで配列をソートすることができます。



