题解 | #记负均正#
记负均正
http://www.nowcoder.com/practice/6abde6ffcc354ea1a8333836bd6876b8
首先输入要输入的整数个数n,然后输入n个整数。输出为n个整数中负数的个数,和所有正整数的平均值,结果保留一位小数。
0即不是正整数,也不是负数,不计入计算
输入描述:
本题有多组输入用例。
首先输入一个正整数n,
然后输入n个整数。
输出描述:
输出负数的个数,和所有正整数的平均值。
解题: 就是一步步来,也没有那么多弯弯绕绕,最后多处理了一个0的情况,就是假设一个正整数都没有,但系统其实自己处理了,如果没有正整数的话,会输出NaN
import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int n = sc.nextInt(); int count = 0; int g =0; int sum = 0; int m= 0; for(int i =0;i<n;i++){ m = sc.nextInt(); if(m<0){ count++; }else if(m>0){ sum +=m; g++; } } if(g==0){ System.out.printf("%d %.1f\n",count,0.0); }else{ System.out.printf("%d %.1f\n",count,(sum*1.0/g)); } } } }