したがって、ポインターを介して参照によってソートされた動的配列が必要です。
ユーザーは不確定な量の成績を入力し、それを最後に入力します。成績は手動で入力します。
これらの成績を昇順で並べ替える必要があります。非常に近いように感じますが、出力は本当にランダムな数値を示しており、原因はわかりません。実際には何も変更できません。 m は正しい軌道に乗っていますが、出力でこれらの乱数を把握できません。
#include <iostream>
#include <fstream>
#include <iomanip>
#include <cmath>
#include <ctime>
#include <cstdlib>
using namespace std;
void swap (int *num1, int *num2)
{
int temp = *num1;
*num1=*num2;
*num2 = temp;
}
void Order(int Gnum[], int Gtot)
{
for (int i = 0; i < Gtot; i++)
{
for (int j = i + 1; j < Gtot; j++)
if (Gnum[i] > Gnum[j])
{
swap(Gnum[i], Gnum[j]);
}
cout << Gnum[i];
}
}
int main() {
int input;
int input2;
cout << "Please input number of Grades" << endl;
cin >> input2;
cout << "Please input Grades" << endl;
cin >> input;
for (int i = 1; i < input2; i++)
{
cin >> input;
}
Order(&input, input2);
return 0;
}