JSK-390 计负均正【入门】

计负均正
从键盘输入任意 20 个整型数,统计其中的负数个数并求所有正数的平均值。
输入格式
输入包含 20 个整数,分两行,每行 10 个数,每个数的绝对值不超过 1000。
输出格式
第一行输出负数个数。
第二行输出正数的平均数,保留两位小数。
样例输入
1 2 3 4 5 6 7 8 9 10
-1 -2 -3 -4 -5 -6 -7 -8 -9 -10
样例输出
10
5.50

问题链接JSK-390 计负均正
问题描述:(略)
问题分析
    简单题,循环处理一下就好。
程序说明
    使用宏定义的目的是使得程序从工程角度看代码具有通用性,当数据个数改变是只需要修改宏定义而不需要修改代码。
    题目虽然说是输入数据分2行,但是使用格式化输入函数scanf()读入数据时,会自动跳过分割符,不必介意换行。
    输入也许会有0,需要注意,编码时需要考虑到。
    求平均值是浮点运算,需要注意类型转换。
参考链接:(略)
题记:过于简单也会令人无语。

AC的C语言程序如下:

/* JSK-390 计负均正 */

#include <stdio.h>

#define N 20

int main(void)
{
    int cnt = 0, cnt2 = 0, sum = 0, a, i;

    for(i = 1; i <= N; i++) {
        scanf("%d", &a);

        if(a > 0) {
            sum += a;
            cnt2++;
        } else if(a < 0)
            cnt++;
    }

    printf("%d\n%.2f\n", cnt, (float)sum / cnt2);

    return 0;
}

猜你喜欢

转载自blog.csdn.net/tigerisland45/article/details/82918263