Легкие задачки на С.В чем проблема?
Сами три маленькие задачки представлены на png-гэшке.Хотелось бы узнать, куда пропадают значения после запятой при сортировке..И почему неверно считается произведение..Буду очень благодарна за помощь! Тест программы размещен под кодом.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void bubbleSort(float *num, int size)
{
int i , j;
for (i = 0; i < size - 1; i++)
{
for (j = (size - 1); j > i; j--)
{
if (num[j - 1] > num[j])
{
int temp = num[j - 1];
num[j - 1] = num[j];
num[j] = temp;
}
}
}
}
int main() {
int N;
scanf("%d",&N);
float A[N];
int i;
float sum = 0;
for (i = 0; i < N; i++) {
scanf ("%f",&A[i]);
}
for (i = 0; i < N; i++) {
if (A[i] > 0) {
sum += A[i];
}
}
float MAX=0, MIN = pow(10,10);
int i1, n2;
for (i = 0; i < N; i++) {
if (abs(A[i]) > MAX) {
MAX=abs(A[i]);
i1=i;
}
if (abs(A[i]) < MIN) {
MIN=abs(A[i]);
n2=i;
}
}
float pr = 1;
if (i1<n2 ){
for (i = i1; i <= n2; i++) {
pr=pr* A[i];
}
}
else{
for (i = n2; i <= i1; i++) {
pr=pr* A[i];
}
}
printf("%.4f\n", sum);
printf("%.4f\n", pr);
bubbleSort(A, N);
//InsertionSort(N,A);
for ( i = N-1; i>=0; i--)
printf("%.4f ", A[i]);
return 0;
}

