题解 | #记负均正#

记负均正

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

解题思路

主要涉及数据类型和if判断的设定

题目要求筛选大于0的数(正数)求和再取平均值并保留一位小数,因此涉及正数部分的应该用浮点型的变量保存和计算

筛选小于0的数(负数)记录出现的次数,因此只用使用整型变量就可以记录

我是通过设置一个数组来记录输入的所有数据,然后通过for循环来遍历

详细的可以查看代码

#include <stdio.h>

int main() {
    int a = 0;
    double arry[2000] = {0}, avg = 0, sum = 0;
    int i = 0, num = 0;
    scanf("%d", &a);
    while (scanf("%lf", &arry[i]) != EOF) {
        if (i >= a ) {
            break;
        }
        i++;
    }
    for (i = 0; i < a; i++) {
        if (arry[i] > 0) //正数部分
		{
            sum += arry[i];
            avg++;
        }
        if (arry[i]< 0)//负数部分
		{
            num++;
        }
    }
    if(sum>0)//有时候可能会没有正数,这时候计算平均值会报错因此加一个判断
    {
        avg = sum / avg;
    }
    printf("%d %.1f", num, avg);

    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 18:05
哈哈哈哈哈感觉朋友找工作的已经疯掉了,直接上图
码农索隆:真老板娘:“我嘞个去,这不我当年的套路吗
点赞 评论 收藏
分享
面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
07-09 18:28
门头沟学院 Java
写着提前批,结果还要实习4个月以上???
程序员牛肉:这种不用看,直接投了,面试的时候问对应的HR就行。有可能他们是直接复制的暑期实习的模板。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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