| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 677 人关注过本帖
标题:【新手】C问题请教 望前辈解答
只看楼主 加入收藏
没文化真可怕
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-10-14
收藏
 问题点数:0 回复次数:5 
【新手】C问题请教 望前辈解答
这是书上的一个题目
编写程序,输入某人功课的若干个同学的成绩,以-1作为终止的特殊成绩,计算平均成绩并输出
这个是书上的程序
#include"stdio.h"
void main()
{
    int i,score;
    float sum;
    i=0;
    sum=0;
    printf("Enter score end with -1:");
    scanf("%d",&score);
    while(score!=-1)
    { i=i+1;
      sum=sum+score;
      scanf("%d",&score);
    }
    printf("aver score is %f",sum/i);
}


这个是我仿照另外一题写的这个代码
#include "stdio.h"
void main()
{    int sum, i, a;
   sum=0;
   i=0;
   while(a!=-1)
   {  scanf("%d",&a);
      sum=sum+a;
      i++;
      }
   printf("aver=%f\n",1.0*sum/i);
}

怎么我运行的时候 我输入98 97 86 87 -1  两段代码得到的结果不一样啊
请问我写的哪里有问题啊 请指教 谢谢咯
搜索更多相关主题的帖子: 前辈 解答 前辈 解答 
2008-10-16 17:39
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1688
专家分:4262
注 册:2007-12-27
收藏
得分:0 
你的代码把-1算进去了
2008-10-16 17:45
没文化真可怕
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-10-14
收藏
得分:0 
我的代码和书上的那个代码
有哪些区别啊 弄不懂哦
请指点一下啊 谢谢你们咯
2008-10-16 17:59
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1688
专家分:4262
注 册:2007-12-27
收藏
得分:0 
区别在于人家那个输入以后马上判断是否结束
你的是输入以后不管是什么都累加,然后再判断刚才那个是不是-1
2008-10-16 18:07
xinshou2008
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-10-16
收藏
得分:0 
问题在于你的输入函数的位置放的不对。书上的scanf("%d",&score);
    while(score!=-1)
    { i=i+1;
      sum=sum+score;
      scanf("%d",&score);
    }
第一个输入函数就是用来判断循环条件是否成立。在循环体内的输入函数是用来输入多个数据。当输入-1是就立即退出循环。
2008-10-16 21:53
没文化真可怕
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-10-14
收藏
得分:0 
还是有点弄不懂 不过谢谢你们的回答 呵
2008-10-17 10:58
快速回复:【新手】C问题请教 望前辈解答
数据加载中...
 
   



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

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