| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5083 人关注过本帖
标题:求平均数问题!
只看楼主 加入收藏
evanstacy
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2008-7-13
收藏
 问题点数:0 回复次数:4 
求平均数问题!
我写了如下一个程序来求平均数,但是我输入数去测试的时候不正确,请各位朋友指点下...
#include<stdio.h>
void main()
{
    int a[100],m,i,sum=0;
         float aver;
         loop:printf("请输入你要计算多少个数的平均分?:\n");
    scanf("%d",&m);
    printf("\n");
    printf("请分别输入每个数,数与数之间用回车或空格隔开。\n");
    for(i=0;i<m;i++)
        scanf("%d",&a[i]);
    for(i=0;i<m;i++)
        sum=sum+a[i];
    aver=(float)(sum)/(float)(m);
    printf("你的总平均分为:%3.2f\n",aver);
    goto loop;
}

[[it] 本帖最后由 evanstacy 于 2008-8-18 16:34 编辑 [/it]]
搜索更多相关主题的帖子: 平均数 float goto aver sum 
2008-08-18 13:50
wbxnj
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-8-13
收藏
得分:0 
for(i=0;i<m;i++)
        scanf("%d",&a[i]);
    for(i=0;i<m;i++)
        sum=sum+a[i];
这里有问题,正确应该是:
for(i=0;i<m;i++)
    {
        for(i=0;i<m;i++)
        {
            
            scanf("%d",&a[i]);
            sum=sum+a[i];
        }
    }
2008-08-18 14:03
evanstacy
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2008-7-13
收藏
得分:0 
[bo][un]wbxnj[/un] 在 2008-8-18 14:03 的发言:[/bo]

for(i=0;i




这个应该不关事的,我原先的只不过是将所有的数都保存到数组里然后再进行计算,而你的这种方法是每输入一个数就加一次而已.效果一样的.我估计错误在那条语句:aver=(float)(sum)/(float)(m);

软件设计师 君羊:36405332
2008-08-18 16:36
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
应该是求平均数的时候出的问题。另外,数组a应该用浮点数来表示啊,sum也应该是的。所以,把你的程序改了一下,测试基本正常。
程序代码:
#include<stdio.h>
void main()
{
    int m,i;
    float aver,a[100],sum=0.0;
    while(1)
    {
            printf("请输入你要计算多少个数的平均分?按'0'退出程序:\n");
            scanf("%d",&m);
            if(m==0)    break;
            printf("\n");
            printf("请分别输入每个数,数与数之间用回车或空格隔开。\n");
            for(i=0;i<m;i++)
                scanf("%f",&a[i]);
            for(i=0;i<m;i++)
            sum=sum+a[i];
            aver=sum/m ;
            printf("你的总平均分为:%3.2f\n",aver);
     }
}
2008-08-18 17:35
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
再改一下,这样似乎能更简便些
程序代码:
#include<stdio.h>
void main()
{
    int m,i;
    float a[100],sum=0.0;
    while(1)
    {
            printf("请输入你要计算多少个数的平均分?按'0'退出程序:\n");
            scanf("%d",&m);
            if(m==0)    break;
            printf("\n");
            printf("请分别输入每个数,数与数之间用回车或空格隔开。\n");
            for(i=0;i<m;i++)
            {
                scanf("%f",&a[i]);
                sum+=a[i];
            }
            printf("你的总平均分为:%3.2f\n",sum/m);
     }
}
2008-08-18 17:37
快速回复:求平均数问题!
数据加载中...
 
   



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

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