题解 | #记负均正#

记负均正

https://www.nowcoder.com/practice/6abde6ffcc354ea1a8333836bd6876b8

#include <stdio.h>

int main() {
    int n;
    int num[2000];
    scanf("%d", &n);
    for (int i = 0; i < n; i++) {
        scanf("%d", &num[i]);
    }
    int negativeNum = 0; //如果不初始化,会得到错误结果
    for (int i = 0; i < n; i++) {
        if (num[i] < 0) {
            negativeNum++;
        }
    }

    float positiveNumAverage;
    int positiveNum = 0;
    int total = 0;
    for (int i = 0; i < n; i++) {
        if (num[i] > 0) {
            total += num[i];
            positiveNum++;
        }
    }
    if (positiveNum != 0) {
        positiveNumAverage = (float)total / positiveNum; //注意这里的类型转换,否则向下取整得不到正确结果
    } else {
        positiveNumAverage = 0;
    }

    printf("%d %.1f", negativeNum, positiveNumAverage);

    return 0;
}

全部评论

相关推荐

zhch7:建议9✌️把学历加黑加粗,如果实在offer可能是觉得佬不会去
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务