题解 | 华为HJ105#记负均正II#

记负均正II

https://www.nowcoder.com/practice/64f6f222499c4c94b338e588592b6a62

描述

输入 n 个整型数,统计其中的负数个数并求所有非负数的平均值,结果保留一位小数,如果没有非负数,则平均值为0
本题有多组输入数据,输入到文件末尾。

数据范围:1n50000  ,其中每个数都满足 val10的6次方 

输入描述:

输入任意个整数,每行输入一个。

输出描述:

输出负数个数以及所有非负数的平均值

示例1

输入:
-13
-4
-7
输出:
3
0.0

示例2

输入:
-12
1
2
输出:
1
1.5
代码部分:
#include <stdio.h>
//以下是Senky的代码
int main() {
    int num = 0;
    int sum = 0;
    int minus_count = 0;
    int plus_count = 0;
    while (~scanf("%d", &num)) {
        if (num < 0) {
            minus_count++;//记录负数个数
        } else {
            sum += num;
            plus_count++;//记录非负数的个数
        }
    }
    printf("%d\n", minus_count);
    if (plus_count) printf("%.1f", 1.0*sum / plus_count);
    else printf("0.0");
    return 0;//编辑于2022/10/12
}
总结
①没有难度,保持手感   
当前帖子仅供自我精进、学习使用,有不足之处欢迎指正;
#华为笔试#
华为-HJ 文章被收录于专栏

机试的题解

全部评论

相关推荐

在看牛客的社畜很积极:身高体重那一行信息去掉,学校那一行的信息放上面,找半天都没找到你是哪个学校什么专业的
点赞 评论 收藏
分享
Java面试先知:我也是和你一样的情况,hr 说等开奖就行了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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