Написать функцию, которая переставляет элементы массива типа int так, что все...

0 голосов
61 просмотров

Написать функцию, которая переставляет элементы массива типа int так, что все положительные элементы предшествуют отрицательным. язык си


Информатика (22 баллов) | 61 просмотров
Дан 1 ответ
0 голосов

#include
#include
void func(int *mas, int N)
{       
int l=0, r=N-1, i;       
while(l{               
for(i=l; iif(mas[i]<0)                                <br>break;               
l=i;               
for(i=r; i>=0; i--)                       
if(mas[i]>=0)                               
break;               
 r=i;               
if(l {                       
 int temp=mas[l];
 mas[l]=mas[r];
mas[r]=temp; 
               }       
 }

int main()
{int *mas, N, i;printf("N= ");scanf("%d", &N);mas=(int*) malloc(N*sizeof(int));for(i=0;
i{    printf("[%d]= ", i); 
   scanf("%d", &mas[i]);}func(mas, N);for(i=0; i   return 0;}

(84 баллов)
0

спасибо