题解 | #记负均正#

记负均正

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

思路

  1. 边输入边统计负数个数
  2. 边输入边统计正整数个数,注意0既不是正整数,也不是负整数,否则求平均会出问题
  3. 求平均时特殊处理除数为0的情况

Answer

#include<stdio.h>

int main() {
    int cnt;
    int num[2000];
    int avr = 0;
    int negtive = 0;
    float sum = 0;
    scanf("%d", &cnt);
    for (int i = 0; i < cnt; i++) {
        scanf("%d", &num[i]);
        if (num[i] < 0) {
            negtive++;
        }
        if (num[i] > 0) {
            avr++;
            sum += num[i];
        }
    }
    //输出负数个数|所有正数平均值,结果保留一位小数
    if (avr == 0) {//考虑除数为0的情况
        printf("%d 0.0\n", negtive);
    } else {
        printf("%d %0.1f\n", negtive, sum / avr);
    }
    return 0;
}
全部评论

相关推荐

10-17 23:18
已编辑
西北农林科技大学 Web前端
独行m:给25可以试试,但他只能给12,那就是纯纯的事精
秋招,不懂就问
点赞 评论 收藏
分享
10-09 16:12
门头沟学院 Java
帅宇殿下:佬,简历写的什么
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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