| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 618 人关注过本帖
标题:大家帮忙改改啊?
只看楼主 加入收藏
爱你521226
Rank: 2
等 级:论坛游民
帖 子:25
专家分:34
注 册:2011-3-31
结帖率:71.43%
收藏
已结贴  问题点数:5 回复次数:7 
大家帮忙改改啊?
统计一维数组A中,
小于数组元素平均值的元素个数,
并输出数组各元素的值,平均值和小于平均值的元素的个数,
数组A的数据为:12,56,69,59,47,21,24,51,64。
我编的程序如下:
#include <stdio.h>
main()
{
    int A[]={12,56,69,59,47,21,24,51,64},i,t,count=0;
    t=(12+56+69+59+47+21+24+51+64)/9;
    printf("平均数=%d\n",t);
    for(i=0;i<10;i++)
            scanf("%d",&A[i]);
    for(i=0;i<9;i++)
        if(A[i]<t)
        {
            printf("小于平均数的元素");
            printf("%3d\n",A[i]);
            count++;
        }
        printf("小于平均值的元素的个数=%d\n",count);
}
搜索更多相关主题的帖子: 平均数 平均值 统计 元素 
2011-05-10 08:38
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:1 
for(i=0;i<10;i++)
            scanf("%d",&A[i]);
楼主啥意思?
 for(i=0;i<10;i++)//已经越界了。知道不?

[ 本帖最后由 hjywyj 于 2011-5-10 08:42 编辑 ]
2011-05-10 08:41
爱你521226
Rank: 2
等 级:论坛游民
帖 子:25
专家分:34
注 册:2011-3-31
收藏
得分:0 
我要“输出数组各元素的值”,应该咋改?请高手不吝赐教啊!感谢啊!
2011-05-10 08:46
wangpenghui
Rank: 2
等 级:论坛游民
帖 子:6
专家分:15
注 册:2011-5-8
收藏
得分:1 
第一个输出循环,输出用printf,怎么用scanf呢
2011-05-10 11:39
chenwei435
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:322
专家分:1611
注 册:2010-11-28
收藏
得分:1 
#include <stdio.h>
void main()
{
    int A[9],i,t=0,count=0;
    for(i=0;i<9;i++)
    {
        scanf("%d",&A[i]);  /*如果要输入数据的话,就不要赋初值*/
        t+=A[i];
        printf("%3d",A[i]);
    }
    t/=9;
    printf("\n平均数=%d\n",t);
    for(i=0;i<9;i++)
        if(A[i]<t)
        {
            printf("小于平均数的元素");
            printf("%3d\n",A[i]);
            count++;
        }
        printf("小于平均值的元素的个数=%d\n",count);
}




[ 本帖最后由 chenwei435 于 2011-5-10 11:59 编辑 ]
2011-05-10 11:54
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:1 
回复 楼主 爱你521226
            printf("小于平均数的元素");
            printf("%3d\n",A[i]);
此处若小于平均数每次都会输出“小于平均数的元素”
2011-05-10 14:48
查明
Rank: 2
等 级:论坛游民
帖 子:31
专家分:24
注 册:2011-4-12
收藏
得分:1 
回复 楼主 爱你521226
我写了个版本 希望对楼主有用


#include"stdio.h"

main()
{
    int A[9]={12,56,69,59,47,21,24,51,64}, i, sum, count;
    float ave;

    sum = 0;
    count = 0;

    for(i = 0; i<9; i++)
        sum += A[i];
    ave = sum / 9.0;
    printf("平均数=%f\n", ave);
    for(i = 0; i<9; i++)
    {
       if(A[i]<ave)
       {
        printf("小于平均数的元素是%3d\n", A[i]);
        count++;
       }
   
     }
    printf("小于平均值的元素的个数=%d\n", count);




}

个人认为数组的赋值用for循环比较好 ,这样当数比较多时不会占用太多空间,可以让程序看起来更简洁
还有就是求和时应对其赋值为0 最后楼主for(i=0;i<10;i++)
                                   scanf("%d",&A[i]);
什么意思 不是很明白
2011-05-10 23:41
qianyou
Rank: 3Rank: 3
来 自:江西南昌
等 级:论坛游侠
帖 子:76
专家分:189
注 册:2011-3-25
收藏
得分:0 
程序代码:
#include <stdio.h>
void main()
{
    int A[]={12,56,69,59,47,21,24,51,64},i,t,count=0;
    t=(12+56+69+59+47+21+24+51+64)/9;
    printf("平均数=%d\n",t);
     //for(i=0;i<9;i++)
     //       scanf("%d",&A[i]);
    for(i=0;i<9;i++)
        if(A[i]<t)
        {
            printf("小于平均数的元素:");
            printf("%3d\n",A[i]);
            count++;
        }
        printf("小于平均值的元素的个数=%d\n",count);
}
在你程序上稍微改了下!可以运行!
2011-05-24 23:58
快速回复:大家帮忙改改啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015643 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved