湖畔读书人


私信TA

用户名:2814787590

访问量:49664

签 名:

等  级
排  名 33
经  验 8819
参赛次数 0
文章发表 42
年  龄 0
在职情况 学生
学  校 武汉东湖学院
专  业

  自我简介:

解题思路和注意事项:


定义一个数组用来记录输入的值;


定义num1和num2分别用来给正数和负数计数,从零开始,每次加1;


sum的类型按题目中的要求定义为double型,在输出的时候需要注意输出两位小数的形式是:%.2lf

            这里说一下输出的格式:%m.n意思为:m是长度,n是小数保留位数。m和n都可以省略。


最后就是一个循环加判定条件解决问题了,看代码。


参考代码:

#include<stdio.h>
int main()
{
	int a[20],num1 = 0,num2 = 0,i;
	double sum = 0.0;
	for(i=0; i<20; i++)
		scanf("%d",&a[i]);
	for(i=0; i<20; i++){
		if(a[i] >= 0){
			sum += a[i];
			num1++;
		}
		else
			num2++;
	}
	printf("%d\n%.2lf\n",num2,sum/num1);
	return 0;
}


 

0.0分

7 人评分

  评论区

#include<stdio.h>
int main()
{
	int a[20],n=0,s1=0;
	float s = 0, s2 = 0;
	while (n<20)
	{
		n = n + 1;
		scanf("%d", &a[n]);
		if (a[n] > 0)
			s = s + a[n], s2 = s2 + 1;
		else
			s1 = s1 + 1;
	}
	printf("%d\n%.2f",s1,s/s2);
	return 0;
}
2020-04-09 20:16:13 | |
0不是正数,算正数平均时应将0剔除
2018-07-12 21:27:04 | |
  • «
  • 1
  • »