标题:关于scanf基础问题学生党
只看楼主
周大爷打代码
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2018-4-9
结帖率:100%
已结贴  问题点数:20 回复次数:2 
关于scanf基础问题学生党
#include<stdio.h>
int main(void)
{
    float average,sum=0,score;
    int n=0;
   
    for(;;)
    {    scanf("%f",&score);
        if(score>=0)
        {
        sum+=score;
        n++;
        }
        else break;
    }
    average=sum/n;
    printf("%f\n",average);
}
#include<stdio.h>
int main(void)
{
    float average,sum=0,score;
    int n=0;
         scanf("%f",&score);

    for(;;)
    {    if(score>=0)
        {
        sum+=score;
        n++;
        }
        else break;
    }
    average=sum/n;
    printf("%f\n",average);
}
我想知道为什么scanf位置放的不对会导致结果出错?哎,学生党,老师能力有限。所以来请教你们哈哈哈。
搜索更多相关主题的帖子: scanf 学生 average sum score 
2018-04-09 18:15
螃蟹爱吃小鱼
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:51
专家分:145
注 册:2018-3-6
得分:20 
第一个程序在scanf在循环内部,for循环每执行一次可输入一个score,而第二个程序在for循环外面,也就是在执行for语句之前执行一次,就不执行了。看不懂你就一步一步的执行语句。
2018-04-09 19:21
周大爷打代码
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2018-4-9
得分:0 
谢谢 楼上,讲解的很清楚,看了一遍就懂了。
2018-04-09 23:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-485900-1-1.html




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

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