首页 > 代码库 > 华为机试—从考试成绩中划出及格线

华为机试—从考试成绩中划出及格线

题目:从考试成绩中划出及格线

10个学生考完期末考试评卷完成后,A老师需要划出及格线,要求如下:
(1) 及格线是10的倍数;
(2) 保证至少有60%的学生及格;
(3) 如果所有的学生都高于60分,则及格线为60分

 

输入:输入10个整数,取值0~100

输出:输出及格线,10的倍数


#include <stdio.h>
#include <stdlib.h>

int compare(const void *p, const void *q){  
	return *(int *)p - *(int *)q;  
}  

int main()
{
	int a[10];
	int i;

	int n;
	while(~scanf("%d",&n)&&n!=0){

		for(i=0;i<10;i++)
			scanf("%d",&a[i]);

		qsort(a,10,sizeof(int),compare);

		for(i=0;i<10;i++)
			printf("%d ",a[i]);
		printf("\n");

		if(a[0]>=60)
			printf("60\n");
		else
			printf("%d\n",(a[4]/10%10)*10);
	}
		
	return 0;
}



测试结果,可能不周全,欢迎查漏补缺:

技术分享

华为机试—从考试成绩中划出及格线