Помогите найти ошибки в программе. Язык программирования С и С++
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1.)номер минимального элемента массива;
2.)сумму элементов массива, расположенных между первым и вторым отрицательными элементами.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1, а потом – все остальные.
#include "stdafx.h"
#include "locale.h"
#include "conio.h"
#include "math.h"
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL, "Russian");
double M[1000], tmp, Mmin, p;
int i, j, N, num_min;
do{
printf("Введите количество элементов N: ");
scanf("%d", &N);
}while((N>1000)||(N<2));
for(i=0; i
};
printf("\nВаш массив: \n");
for(i=0; i
};
Mmin=M[0];
num_min=0;
for(i=1;i
};
printf("\nМинимальный элемент N %i Mmin=%lf", num_min+1, Mmin);
p=0;
i=-1;
do
{
i++;
}
while(M>=0);
i++;
do{
p+=M;
i++;
}while(M>=0);
printf("\n сумма= %lf",p);
printf("\nОтсортированный массив: \n");
for(i=0; i
}
for(i=0; i
}
_getch();
return 0;
}
Программа работает не так, как нужно. Сортирует не так, как надо и сумму почему-то не правильно считает. А еще нужно добавить в программу условие того, что если первый и второй элемент не отрицательный, то программа не должна считать (программа должна делать break)