首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >只计算正分,并将平均值从整数改为浮动

只计算正分,并将平均值从整数改为浮动
EN

Stack Overflow用户
提问于 2019-03-30 14:04:13
回答 2查看 131关注 0票数 0

这是我用C编写的代码,我需要帮助如何忽略printf中的负数(“您输入了%d分数.\n”,i);平均结果中的负数。

还有如何将int平均值;更改为浮点数平均值;,因为当我将它更改为浮动时,没有得到正确的平均值。

这是我的代码:

代码语言:javascript
运行
复制
int main()
{
int i, score, sum=0, n;
int average;

for(i=0; score>0; i++)
{
    printf("Enter score (4-10) :");
    scanf("%d", &score);
    if(score>0){
            sum = sum + score;

    }
}



 printf("You entered %d scores.\n", i);
 average = sum / i;
 printf("the average is: %d", average);
}

所需产出:

该程序计算您输入的平均分数。

以负整数结尾。

输入分数(4-10):7

输入分数(4-10):8

输入分数(4-10):9

输入分数(4-10):10

输入分数(4-10):4

输入分数(4-10):4

输入分数(4-10):5

输入分数(4-10):-1

你输入了7分。

平均得分: 6.71

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-30 14:26:52

似乎平均、和和分数都应该是十进制值(浮点数)。

这意味着您还必须更改scanf参数和printf参数。

将整数i除以浮点数和时,只要和是浮点数,就不需要乘以1.0。

代码语言:javascript
运行
复制
#include <stdio.h>
int main()
{
  int i;
  float score;
  float sum = 0;
  float average;

  for (i = 0; score > 0; i++) {
    printf("Enter score (4-10) :");
    scanf("%f", &score);  // accept decimals in the scores
    if (score > 0) {
      sum = sum + score;

    } else {
      break; /// leave the loop here to prevent incrementing i
    }
  }

  printf("You entered %d scores.\n", i);
  average = sum / i; // as sum is a float, this division will now work.
  printf("the average is: %2.2f", average); // print 2 decimal places as a float
}
票数 0
EN

Stack Overflow用户

发布于 2019-03-30 14:26:31

代码语言:javascript
运行
复制
int main()
{
int i, score = 1, n;
float sum = 0.0, average;  //<-------------changed to float

for(i=0; score>0; i++)
{
    printf("Enter score (4-10) :");
    scanf("%d", &score);
    if(score>0){ 
            sum = sum + score;
    }
    else{
       break;
    }
}



 printf("You entered %d scores.\n", i);
 average = sum / i;
 printf("The average is: %f", average); //<--- changed to %f you can use &.2f to print 2 digits after . 

 return 0;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55432232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档