N到1000(包括在内)的平均值,没有偶数可被6和17整除的数

问题描述 投票:0回答:1

首先我必须输入N,N成为要检查的第一个数字。

输入:79

输出应为:537.70。

int sum=0;
      while(1)
        {
        scanf("%d", &n);
        if(n>=10 && n<80)
        {
            break;
        }
        printf("New output:\n");
    }

for(i=n;i<=1000;i++)
{
    if(i%2==0 && i%6!=0 && i%17!=0)
    {
        sum+=i;
    }

我没有将(浮点)总和/ N求平均值,因为我对总和做错了。

更多输入输出:

输入:10输出:505.21

输入:44输出:521.18

c loops average
1个回答
1
投票

除了保留'running sum',您还需要保留使用多少个数字的计数,以便您可以正确地计算平均值:

#include <stdio.h>

int main(void)
{
    int n;
    printf("Enter start number: ");
    scanf("%d", &n);
    int sum = 0, count = 0;
    for (int i = n; i <= 1000; ++i) {
        if (!(i % 2) && (i % 6) && (i % 17)) {
            sum += i;
            ++count;
        }
    }
    printf("Average is: %.2f\n", (double)sum / (double)count);
    return 0;
}

输入:79输出应为:537.70。

您确定该值吗?我得到538.70-但是我得到了您引用的其他测试用例的给定值。

© www.soinside.com 2019 - 2024. All rights reserved.