从键盘输入任意 20 个整型数,统计其中的负数个数并求所有正数的平均值。
输入格式
输入包含 20 个整数,分两行,每行 10 个数,每个数的绝对值不超过 1000。
输出格式
第一行输出负数个数。
第二行输出正数的平均数,保留两位小数。
样例输入
1 2 3 4 5 6 7 8 9 10
-1 -2 -3 -4 -5 -6 -7 -8 -9 -10
样例输出
10
5.50
问题链接:JSK-390 计负均正
问题描述:(略)
问题分析:
简单题,循环处理一下就好。
程序说明:
使用宏定义的目的是使得程序从工程角度看代码具有通用性,当数据个数改变是只需要修改宏定义而不需要修改代码。
题目虽然说是输入数据分2行,但是使用格式化输入函数scanf()读入数据时,会自动跳过分割符,不必介意换行。
输入也许会有0,需要注意,编码时需要考虑到。
求平均值是浮点运算,需要注意类型转换。
参考链接:(略)
题记:过于简单也会令人无语。
AC的C语言程序如下:
/* JSK-390 计负均正 */
#include <stdio.h>
#define N 20
int main(void)
{
int cnt = 0, cnt2 = 0, sum = 0, a, i;
for(i = 1; i <= N; i++) {
scanf("%d", &a);
if(a > 0) {
sum += a;
cnt2++;
} else if(a < 0)
cnt++;
}
printf("%d\n%.2f\n", cnt, (float)sum / cnt2);
return 0;
}
原文地址:https://www.cnblogs.com/tigerisland45/p/9740780.html
时间: 2024-10-09 22:40:23