Блинная сортировка (не могу найти ошибку в коде) - C (СИ)
Формулировка задачи:
Листинг программы
- #include <stdio.h>
- void flip(int *data, int m, int n)
- {
- int swap, i;
- for (i = m; i < --n; i++)
- {
- swap = data[i];
- data[i] = data[n];
- data[n] = swap;
- }
- }
- int main()
- {
- int i, j, a, maxNumPos, moves = 0, length, data[100];
- scanf_s("%d", &length);
- if (length < 2)
- return 0;
- for (j = 0; j < length; j++)
- {
- scanf_s("%d", &data[j]);
- }
- for (i = length; i > 1; i--)
- {
- maxNumPos = 0;
- for (a = 0; a < i; a++)
- {
- if (data[a] > data[maxNumPos])
- maxNumPos = a;
- }
- if (maxNumPos == (i - 1))
- continue;
- if (maxNumPos >= 0)
- {
- flip(data, maxNumPos, i);
- moves++;
- }
- }
- for (j = 0; j < length; j++)
- {
- printf("%d ", &data[j]);
- }
- return moves;
- }
Решение задачи: «Блинная сортировка (не могу найти ошибку в коде)»
textual
Листинг программы
- printf("%d ", data[j]);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д