Получить все первые элементы массива, равные 1

Jasper

Помогите пожалуйста с сортировкой массива. Я написал но ошибку не вижу. Должно получить ся первые элименты равные 1 а потом все остальные
#include <stdafx.h>
#include "stdio.h"
#include "conio.h"
int a[5];
    int k=0,x;
int main ()
{
        printf ("Vvedite massiv");
    for (int i=0;i<5; i++)
    {
        scanf ("%i",&a[i]);
    if (a[i]==1) 
        {
     x=a[i]; a[i]=a[i+1]; a[i+1]=x;
        }
    }   
    printf ("%i ",a);
        getch();
}
6 ответов

Jasper

Jasper, а что ты хотел изобразить тем, что ты написал? вводим число, проверяем не является ли оно единицей, если является, то меняем его с еще не введенным следующим числом... к чему это все?


Jasper

Надо ввести массив : например 2 1 0 1 5 а ответ должен получиться 1 1 0 и т.д.то есть какой бы не был массив первые элименты должни быть равны 1


Jasper

Jasper, а т.е. сперва вывести все единицы, а потом все остальное отсортированное?


Jasper

Да


Jasper

Jasper, а метод сортировки имеет значение?


Jasper

TAVulator Нет