解题思路:

注意事项:

参考代码:

#include<stdio.h>
int main()
{
 int a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,n=0;
 double a;
 scanf("%d%d%d%d%d%d%d%d%d%d",&a1,&a2,&a3,&a4,&a5,&a6,&a7,&a8,&a9,&a10);
 a=(double)(a1+a2+a3+a4+a5+a6+a7+a8+a9+a10)/10;
 if(a1>a) n+=1;
 if(a2>a) n+=1;
 if(a3>a) n+=1;
 if(a4>a) n+=1;
 if(a5>a) n+=1;
 if(a6>a) n+=1;
 if(a7>a) n+=1;
 if(a8>a) n+=1;
 if(a9>a) n+=1;
 if(a10>a) n+=1;
 printf("%d",n);
 return 0;
}


点赞(1)
 

0.0分

22 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 26 条评论

小安 5年前 回复TA
#include<stdio.h>
int main()
{
	int a1,a2,a3,a4,a5,a6,a7,a8,a9,a,p,z;
	scanf("%d%d%d%d%d%d%d%d%d%d",&a1,&a2,&a3,&a4,&a5,&a6,&a7,&a8,&a9,&a);
	p = (a1+a2+a3+a4+a5+a6+a7+a8+a9+a)/10;
	z = 0;
	if (a1>p)
		z = z+1;
	if(a2>p)
		z = z+1;
	if(a3>p)
		z = z+1;
	if(a4>p)
		z = z+1;
	if(a5>p)
		z = z+1;
	if(a6>p)
		z = z+1;
	if(a7>p)
		z = z+1;
    if(a8>p)
		z = z+1;
	if(a9>p)
		z = z+1;
	if(a>p)
		z = z+1;
	printf("%d\n",z);
	return 0;
}
王者荣耀 5年前 回复TA
@Coyld 你这个方法的前提是输入的数是有序的,并且是按照从小到大的顺序排列。否则就不对
王者荣耀 5年前 回复TA
@Coyld 你这个方法的前提是输入的数是有序的,并且是按照从小到大的顺序排列。否则就不对
南风吹彻 5年前 回复TA
太直了,不要这么硬核
陈强 5年前 回复TA
就喜欢你这种答法,碰见一次满分一次
盐可甜 5年前 回复TA
钢,佩服兄弟你,我也刚,
小吖白又白 5年前 回复TA
@Coyld 题是要你输出大于平均数的个数,你这个求法不行,要全部遍历完数。比如:a0~a9,1 8 2 4 7 6 3 5 9 10 这组测试数据,aver = 5.5,遍历到5的时候break了,5的下标为7,那输出的结果就是2了。正确的结果应该是5,所以说简单的写法还是要每个数都要比较的,反正测试数据小,可以过哈
小吖白又白 5年前 回复TA
@Coyld 你这也够硬核的哈
Coyld 5年前 回复TA
#include<stdio.h>
#include<stdlib.h>
int main()
{
    int a[10],ave,i;
    
    
    scanf("%d %d %d %d %d %d %d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4],&a[5],&a[6],&a[7],&a[8],&a[9]);
    ave=(double)(a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9])/10;
    
    for(i=9;i>=0;i--)
    {
        if(a[i]<ave)
        {
            break;
        }
    }
    printf("%d",9-i);
    
    
    system("puase");
    return 0;
} 
我这个哪错了
Coyld 5年前 回复TA
太硬核了