C言語で、入力された数字を逆順に並べ替える方法は何ですか?
冒泡ソートアルゴリズムを使用して、入力された数字を逆順に並べ替える機能を実現することができます。具体的なコードは以下の通りです:
#include <stdio.h>
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n-1; i++) {
for (int j = 0; j < n-i-1; j++) {
if (arr[j] < arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main() {
int n;
printf("Enter the number of elements: ");
scanf("%d", &n);
int arr[n];
printf("Enter the elements: ");
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
bubbleSort(arr, n);
printf("Sorted array in descending order: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
上記のコードでは、まず数字の個数を入力し、その後n個の数字を配列arrに格納します。次に、bubbleSort関数を呼び出して配列を逆順にソートし、最後にソートされた配列を出力します。