| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 500 人关注过本帖
标题:菜鸟级新手··运行不出来结果··帮忙看下
只看楼主 加入收藏
lzy013903
Rank: 1
等 级:新手上路
帖 子:23
专家分:7
注 册:2011-5-21
结帖率:90.91%
收藏
已结贴  问题点数:20 回复次数:9 
菜鸟级新手··运行不出来结果··帮忙看下
程序是说输入10个数,输出最大值,最小值和平均数,小弟运行的结果全是0.00,求帮助啊·····

#include<stdio.h>
void main()
{
    int s[10],*p;
    float max,min,average;
    int i,c;
    for(i=0,c=1;i<10;i++)
    {
        printf("Please Input the %d score : ",c++);
        scanf("%f",&s[i]);
    }
    printf("\n");
   
    p=s[10];
    max=*p;
    for(i=1;i<10;i++)
    {
        if(*(p+i)>max)
        max=*(p+i);
    }
    printf("Max = %4.2f\n",*(p+i));
   
    average=*p;   
    for(i=1;i<10;i++)
    {   
    if(*(p+i)<min)
        min=*(p+i);
    }
    printf("Min = %4.2f\n",*(p+i));
   
    average=*p;   
    for(i=1;i<10;i++)
    {
              average+=*(p+i);
    }
    average/=(i-1);
    printf("Average = %4.2f\n",*(p+i));
}
搜索更多相关主题的帖子: 平均数 最大值 
2011-05-26 13:18
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
看不懂。帮顶。

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-05-26 13:20
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
程序代码:
#include <stdio.h>

int main(void) {
    int max, min, sum = 0, num[10], i;
    for(i = 0; i < 10; i++) {
        scanf("%d", num + i);
    }
    max = num[0];
    min = num[0];
    sum = num[0];
    for(i = 1; i < 10; i++) {
        if(num[i] > max) {
            max = num[i];
        } else if(num[i] < min) {
            min = num[i];
        }
        sum += num[i];
    }
    printf("Max : %4.2f\n", max / 1.0);
    printf("Min : %4.2f\n", min / 1.0);
    printf("Average : %4.2f\n", sum / 10.0);
    return 0;
}

My life is brilliant
2011-05-26 13:32
Toomj
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:257
专家分:1826
注 册:2011-5-17
收藏
得分:20 
楼主,你输出有误
#include<stdio.h>
void main()
{
    float s[10],*p;
    float max,min,average;
    int i,c;
    for(i=0,c=1;i<10;i++)
    {
        printf("Please Input the %d score : ",c++);
        scanf("%f",&s[i]);
    }
    printf("\n");
   
    p=s;
    max=*p;
    printf("%f",max);
    for(i=1;i<10;i++)
    {
        if(*(p+i)>max)
        max=*(p+i);
    }
    printf("Max = %4.2f\n",max);
   
    min=*p;   
    for(i=1;i<10;i++)
    {   
    if(*(p+i)<min)
        min=*(p+i);
    }
    printf("Min = %4.2f\n",min);
   
    average=*p;   
    for(i=1;i<10;i++)
    {
              average+=*(p+i);
    }
    average/=(i-1);
    printf("Average = %4.2f\n",average);
}
2011-05-26 15:33
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
记住 int / int 如果小于1那么它永远是0  如果不想丢失小数请用float/float

                                         
===========深入<----------------->浅出============
2011-05-26 15:46
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
以下是引用lz1091914999在2011-5-26 13:32:08的发言:

#include  
 
int main(void) {
    int max, min, sum = 0, num[10], i;
    for(i = 0; i < 10; i++) {
        scanf("%d", num + i);
    }
    max = num[0];
    min = num[0];
    sum = num[0];
    for(i = 1; i < 10; i++) {
        if(num > max) {
            max = num;
        } else if(num < min) {
            min = num;
        }
        sum += num;
    }
    printf("Max : %4.2f\n", max / 1.0);
    printf("Min : %4.2f\n", min / 1.0);
    printf("Average : %4.2f\n", sum / 10.0);
    return 0;
}
这个看起来更好理解,更简洁。

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2011-05-26 15:46
chenjin1st
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:26
专家分:44
注 册:2011-5-13
收藏
得分:0 
程序代码:
#include<stdio.h>
int main()
{
  int i,mu[10],max,min;
  double sum=0;
  printf("请输入10个数\n");
  for(i=0;i<10;i++)
  scanf("%d",&mu[i]);
  max=mu[0],min=mu[0];
  for(i=0;i<10;i++)
    if(mu[i]>=max)
     max=mu[i];
  for(i=0;i<10;i++)
      if(mu[i]<=min)
       min=mu[i];
  for(i=0;i<10;i++)
    sum+=mu[i];
  printf("最大值为%d\n",max);
  printf("最小值为%d\n",min);
  printf("平均值为%0.2lf\n",sum/10);
  return 0;
}


[local]1[/local]还是使用我这个把。呵呵。简单



QQ截图20110526160931.png (28.61 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册

共同进步,共同收获!!!!
2011-05-26 16:11
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
以下是引用chenjin1st在2011-5-26 16:11:28的发言:

#include
int main()
{
  int i,mu[10],max,min;
  double sum=0;
  printf("请输入10个数\n");
  for(i=0;i<10;i++)
  scanf("%d",&mu);
  max=mu[0],min=mu[0];
  for(i=0;i<10;i++)
    if(mu>=max)
     max=mu;
  for(i=0;i<10;i++)
      if(mu<=min)
       min=mu;
  for(i=0;i<10;i++)
    sum+=mu;
  printf("最大值为%d\n",max);
  printf("最小值为%d\n",min);
  printf("平均值为%0.2lf\n",sum/10);
  return 0;
}
 
 
[local]1[/local]还是使用我这个把。呵呵。简单
 

  你这个看起来好象简单些。如果不考虑输入数为小数的情况,你这个运行效率未必会比楼上的那个效率高。因为你用到了3个循环。而楼上只有2个。当然到底是哪个效率高。只有用精确的数字时间来说话。这方面有待高手来验证,当然不是说你这个不好。我只是谈谈我的个人看法。如有误,欢迎指正!

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2011-05-26 16:40
qianyou
Rank: 3Rank: 3
来 自:江西南昌
等 级:论坛游侠
帖 子:76
专家分:189
注 册:2011-3-25
收藏
得分:0 
我是新手,看不太懂你那个东西!所以重新为你写了一个求最大值和平均值的!最小值的自己可以按着我的思路继续写就是了!
程序代码:
int a[10],i,max,min,sum;
    float ave;
    max=min=a[0];
    printf("请输入任意10个整数:");
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
       sum=a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9];
       ave=sum/10;
       printf("ave=%.5f",ave);
    for(i=0;i<10;i++)
    {
        if(a[i]>a[0])
        max=a[i];
    } printf("max=%d",max);
2011-05-26 17:22
icebergwang
Rank: 2
来 自:河北廊坊
等 级:论坛游民
帖 子:17
专家分:19
注 册:2011-1-8
收藏
得分:0 
格式控制符一定要和变量定义的时候一样呀!

跟着感觉走,欲速则不达
2011-05-26 18:52
快速回复:菜鸟级新手··运行不出来结果··帮忙看下
数据加载中...
 
   



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

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