随机生成求平均数111

随机生成10个小于100的整数,并放入一维数组存放,编程求小于80且大于9的平均数,保留两位

#include <stdio.h>
#include <iostream>
#include <time.h>

int main()
{
    srand((unsigned)time(NULL));
    int num[10] = { 0 }, sum = 0,count=0;
    for (int i = 0; i < 10; i++)
    {
        num[i] = rand() % 100;
        if (num[i] > 9 && num[i] < 80) {
            sum += num[i];
            printf("%d ", num[i]);
            count += 1;
        }
    }
    printf("\n平均数为:%.2f\n", 1.0 * sum / count);
    system("pause");
    return 0;
}

我来

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int array[10];
    
    int sum = 0, count = 0;
    int temp;
    for (int i=0; i < 10; ++i) {
        temp = rand() % 100;
        printf("%d ", temp);

        array[i] = temp;
        if (temp >9 && temp < 80) {
            sum += temp;
            count++;
        }
    }
    float avg = 1.0 * sum / count;
    
    printf("\naverage: %.2f\n", avg);
    
    return 0;
}

输出结果:

83 86 77 15 93 35 86 92 49 21
average: 39.40

真速度


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int arr[10] = { 0 };
    srand((unsigned)time(NULL));
    float sum = 0;
    float average = 0;
    int index = 0;
    for (index = 0; index < 10; index++)
    {
        arr[index] = rand() %100;
        if (arr[index]>9 && arr[index]<80)
        {
            sum += arr[index];
        }
    }
    for (index = 0; index < 10; index++)
    {
        printf("%d\n", arr[index]);
    }
    average = sum / 10;
    printf("%.2f\n", average);
    system("pause");
    return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

您可以使用 rand() 函数生成随机整数,然后用一个循环将它们存储到数组中。在求平均数之前,另一个循环可以检查每个整数,确定它是否符合条件,然后对符合条件的整数求和。

#include <stdio.h>
#include <stdlib.h>

int main() {
    int nums[10];
    int i, sum = 0, count = 0;

    for (i = 0; i < 10; i++) {
        nums[i] = rand() % 100;
    }

    for (i = 0; i < 10; i++) {
        if (nums[i] > 9 && nums[i] < 80) {
            sum += nums[i];
            count++;
        }
    }
    if(count==0)
    {
    printf("no numbers found that match the condition");
    return 0;
    }
    float average = (float) sum / count;
    printf("Average: %.2f", average);
    return 0;
}


如上代码在没有满足条件的数字时特殊处理,并且终止程序.

以上答案对您有帮助,请及时采纳~