C语言 Problem C: 简单的数值统计 求解答代码
ProblemC:简单的数值统计Description现有一堆非零整数,要求统计其中正数、负数的个数以及它们的平均值。Input输入一系列整数,仅有最后一个数字是0,表示...
Problem C: 简单的数值统计
Description
现有一堆非零整数,要求统计其中正数、负数的个数以及它们的平均值。
Input
输入一系列整数,仅有最后一个数字是0,表示输入的结束。所有数据以及它们的和都在int的表示范围之内。
Output
输出有2行。如果有负数,第一行输出负数的个数和平均值,否则第一行输出0;如果有正数,第二行输出正数的个数以及平均值,否则第二行输出0。每行输出如果有2个数,则用空格隔开。平均值只保留2位小数。
Sample Input
1 2 3 4 -1 -2 -3 -4 0
Sample Output
4 -2.50 4 2.50 展开
Description
现有一堆非零整数,要求统计其中正数、负数的个数以及它们的平均值。
Input
输入一系列整数,仅有最后一个数字是0,表示输入的结束。所有数据以及它们的和都在int的表示范围之内。
Output
输出有2行。如果有负数,第一行输出负数的个数和平均值,否则第一行输出0;如果有正数,第二行输出正数的个数以及平均值,否则第二行输出0。每行输出如果有2个数,则用空格隔开。平均值只保留2位小数。
Sample Input
1 2 3 4 -1 -2 -3 -4 0
Sample Output
4 -2.50 4 2.50 展开
展开全部
#include <stdio.h>
int main()
{
int number;
int countPositive=0, countNegative=0;
int sumPositive=0, sumNegative=0;
float avgPositive, avgNegative;
scanf("%d", &number);
while(number != 0)
{
if(number < 0) // the number is Positive.
{
sumPositive += number;
countPositive++;
}
else // the number is Negative.
{
sumNegative += number;
countNegative++;
}
scanf("%d", &number);
}
// calculate average
/* notice: convert to float, if you not do this , you can't get the right answer*/
avgPositive = (sumPositive*1.0)/countPositive;
avgNegative = (sumNegative*1.0)/countNegative;
// Output
if(countPositive != 0) printf("%d %.2f\n", countPositive, avgPositive);
else printf("%d\n", countPositive);
if(countNegative != 0) printf("%d %.2f\n", countNegative, avgNegative);
else printf("%d\n", countNegative);
return 0;
}
int main()
{
int number;
int countPositive=0, countNegative=0;
int sumPositive=0, sumNegative=0;
float avgPositive, avgNegative;
scanf("%d", &number);
while(number != 0)
{
if(number < 0) // the number is Positive.
{
sumPositive += number;
countPositive++;
}
else // the number is Negative.
{
sumNegative += number;
countNegative++;
}
scanf("%d", &number);
}
// calculate average
/* notice: convert to float, if you not do this , you can't get the right answer*/
avgPositive = (sumPositive*1.0)/countPositive;
avgNegative = (sumNegative*1.0)/countNegative;
// Output
if(countPositive != 0) printf("%d %.2f\n", countPositive, avgPositive);
else printf("%d\n", countPositive);
if(countNegative != 0) printf("%d %.2f\n", countNegative, avgNegative);
else printf("%d\n", countNegative);
return 0;
}
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询