数组应用: 找出一组数据中比均值大的数据并输出

简介: 数组与数组遍历; 判断; 循环
问题描述:

由键盘输入读取整型数据,数据数量不超过100个,当读取到数据-1时,停止读取数据,并计算这些数据的均值(不包含-1),将大于均值的数据输出。

问题分析:

给定了数据数量不超过100,若将每个输入数据分别赋值给变量(a1,a2,a3,a4,a5...)会比较繁琐,因此可用数组来存储读入的数据。因此需要累加和变量sum , 以及计数变量cnt , 最后由变量sumcnt 来求均值。遍历数组元素,输出大于均值的数据。

S1 : 初始化变量 `sum`、 `cnt` ,定义数组
S2 :    读取数据`x`: 
        当数据`x`不等于`-1`时: 
            执行`sum = sum + x`
            执行`cnt = cnt + 1`
            执行`读取数据`
        当数据`x` 等于 `-1` 时 : 
            终止,跳出循环体
S3 :计算均值: 
        计算均值
        遍历数组元素,判断数组元素和均值的大小关系
C代码:
#include <stdio.h>

int main()
{
    int x;
    double sum = 0;
    int cnt = 0;        //初始化计算变量 cnt  
    int number[100];    //定义数组 number ,包含 100个 元素  
    scanf("%d",&x);        //读取键盘数据输入  
    while ( x!=-1 ){    //当 停止读取数据标志 -1 未出现时,执行循环体 
        number[cnt]=x;    //索引为 cnt , 数组对应 元素值 为 x ;
        sum += x;
        cnt ++;
        scanf("%d", &x);
        
    }
    if ( cnt > 0 ) {    // 若第一个数据为 -1 ,则终止读取数据,while 循环体不执行,cnt = 0 ; 
        printf("%f\n", sum/cnt); 
    }
    int i;                //遍历数组;执行数组元素与均值大小判断
    for ( i=0; i<cnt; i++) {
        if (number[i]>sum/cnt){
          printf("%d\n",number[i]);    
        } 
                  
    }
    return 0;
}  
目录
相关文章
|
存储 缓存 资源调度
shamefully-hoist = true
shamefully-hoist = true
916 0
|
13天前
|
数据采集 人工智能 安全
|
8天前
|
编解码 人工智能 自然语言处理
⚽阿里云百炼通义万相 2.6 视频生成玩法手册
通义万相Wan 2.6是全球首个支持角色扮演的AI视频生成模型,可基于参考视频形象与音色生成多角色合拍、多镜头叙事的15秒长视频,实现声画同步、智能分镜,适用于影视创作、营销展示等场景。
669 4
|
9天前
|
机器学习/深度学习 人工智能 前端开发
构建AI智能体:七十、小树成林,聚沙成塔:随机森林与大模型的协同进化
随机森林是一种基于决策树的集成学习算法,通过构建多棵决策树并结合它们的预测结果来提高准确性和稳定性。其核心思想包括两个随机性:Bootstrap采样(每棵树使用不同的训练子集)和特征随机选择(每棵树分裂时只考虑部分特征)。这种方法能有效处理大规模高维数据,避免过拟合,并评估特征重要性。随机森林的超参数如树的数量、最大深度等可通过网格搜索优化。该算法兼具强大预测能力和工程化优势,是机器学习中的常用基础模型。
350 164
|
7天前
|
机器学习/深度学习 自然语言处理 机器人
阿里云百炼大模型赋能|打造企业级电话智能体与智能呼叫中心完整方案
畅信达基于阿里云百炼大模型推出MVB2000V5智能呼叫中心方案,融合LLM与MRCP+WebSocket技术,实现语音识别率超95%、低延迟交互。通过电话智能体与座席助手协同,自动化处理80%咨询,降本增效显著,适配金融、电商、医疗等多行业场景。
361 155