Другие языки программирования и технологии

Помогите написать текст программы на языке С

вот на код С:
int main(){
int aaa[15], ii, kk, ssign, bbb;
// заполним массив aaa
ssign = 1;
for( ii = 0; ii < 15; ii++) {
aaa[ii]=ii*ssign;
printf("%d ", aaa[ii]);
ssign = -ssign;
}
printf("\n");
// переместим отрицательные к началу массива
for( ii = 0; ii < 15; ii++) {
if(aaa[ii]>0) {
bbb = aaa[ii];
for(kk=ii;kk<15;kk++) {
if(aaa[kk]<0){
aaa[ii]=aaa[kk]; // тут и меняем
aaa[kk]=bbb;
break;
}
}
if (kk==15){
break; // отрицательные элементы закончились)) )
}
}
}
// распечатаем результат
for( ii = 0; ii < 15; ii++) {
printf("%d ", aaa[ii]);
}
return 0;
}

а вот результат работы:
# 1: hide show edit 3 seconds ago
result: Success time: 0s memory: 1720 kB returned value: 0

input: no

output:

0 -1 2 -3 4 -5 6 -7 8 -9 10 -11 12 -13 14
0 -1 -3 -5 -7 -9 -11 -13 8 2 10 6 12 4 14
Олег Морозов
Олег Морозов
85 081
Лучший ответ
Ну, видно же - два индекса k - для текущего элемента, m - для текущей позиции отрицательных элементов. И промежуточноя переменная temp - для обмена элементов массива. А дальше просто

int k, m, temp;

For k := 1 to N do
If A[ k ] < 0 then
begin
temp := A[ k ];
A[ k ] := A[ m ];
A[ m ] := temp;
m := m + 1;
end;

И все.