求和并得到数组中值的平均值

时间:2015-09-21 14:32:13

标签: c

求和得到数组中值的平均值,并在总和超过10,000时停止询问一个数字。我需要用这些条件的例子来清除它。

需要该示例的语言适合在C

我的代码

```

#include  <stdio.h>


int main()
{
    int array[10];
    int i, num, negative_sum = 0, positive_sum = 0;
    float total = 0.0, average;

    printf ("Enter the value of N \n");
    scanf("%d", &num);
    printf("Enter %d numbers (negative, positve and zero) \n", num);
    for (i = 0; i < num; i++)
    {
        scanf("%d", &array[i]);
    }
    printf("Input array elements \n");
    for (i = 0; i < num; i++)
    {
        printf("%+3d\n", array[i]);
    }

    for (i = 0; i < num; i++)
    {
        if (array[i] < 0)
        {
            negative_sum = negative_sum + array[i];
        }
        else if (array[i] > 0)
        {
            positive_sum = positive_sum + array[i];
        }
        else if (array[i] == 0)
        {
            ;
        }
        total = total + array[i] ;
    }
    average = total / num;
    printf("\n Sum of all negative numbers =  %d\n", negative_sum);
    printf("Sum of all positive numbers =  %d\n", positive_sum);
    printf("\n Average of all input numbers =  %.2f\n", average);
}

```

1 个答案:

答案 0 :(得分:0)

回答你的问题

#include  <stdio.h>
     int main()
 {
int array[10];
int num, negative_sum = 0, positive_sum = 0,j;
static int i=0;
float total = 0.0, average;
label:
j=i;
printf ("Enter the value of N \n");
scanf("%d", &num);
printf("Enter %d numbers (negative, positve and zero) \n", num);
for (i; i < (j+num); i++)
{
scanf("%d", &array[i]);
}
i=j;
printf("Input array elements \n");
for (i; i < (j+num); i++)
{
printf("%d\n", array[i]);
}
i=j;
for (i; i < (j+num); i++)
{
if (array[i] < 0)
{
    negative_sum = negative_sum + array[i];
}
else if (array[i] > 0)
{
    positive_sum = positive_sum + array[i];
}
else if (array[i] == 0)
{
    ;
}
total = total + (float)array[i] ;
}
average = total / num;
printf("\n Sum of all negative numbers =  %d\n", negative_sum);
printf("Sum of all positive numbers =  %d\n", positive_sum);
printf("\n Average of all input numbers =  %.2f\n", average);
if(total<10000)
{
printf("Total is less than 10000 and Now total is : %.2f\n",total);
 goto label;
}}

这是你问题的答案。当你的总数超过10000时,程序就会运行。