题目描述
春华小学五年级(2)班的陈老师对数学期中成绩进行分析,分别统计 "90以上、80至90分(包括80,不包括90)、70至80分(包括70,不包括80)、60至70分(包括60,不包括70)、60分以下(不包括60)" 各分数段的学生人数。
请你用 GOC 编程编写程序帮陈老师进行统计,并按“90以上、80至90分(包括80,不包括90)、70至80分(包括70,不包括80)、60至70分(包括60,不包括70)、60分以下(不包括60)”的顺序从左至右将各分数段的学生人数以直方图显示出来。
输入格式:
第一行为班人数n,第二行为代表成绩(0≤成绩≤100)的n个数据。
输出格式:
为各分数段人数的直方图,直方图的宽为20,高为各分数段人数×10,颜色色号从左至右依次为1、2、3、4、5。
输入/输出例子1
输入:
25
90 92 100 93 78 80 85 86 85 80 83 90 65 75 80 92 91 72 73 55 57 96 64 58 90
输出:
参考答案
int main(){ int a,b[a+1],f1,f2,f3,f4,f5; cin>>a; for(int i=0;i<a;i++) { cin>>b[i]; if(b[i]>=90) f1++; else if(b[i]>=80 && b[i]<90) f2++; else if(b[i]>=70 && b[i]<80) f3++; else if(b[i]>=60 && b[i]<70) f4++; else if(b[i]<60) f5++; } p.up(); for(int i=0;i<5;i++) { p.c(1+i%5); if(i%5==0) p.fd((f1*10)/2).rr(20,f1*10).bk((f1*10)/2).rt(90).fd(20).lt(90); if(i%5==1) p.fd((f2*10)/2).rr(20,f2*10).bk((f2*10)/2).rt(90).fd(20).lt(90); if(i%5==2) p.fd((f3*10)/2).rr(20,f3*10).bk((f3*10)/2).rt(90).fd(20).lt(90); if(i%5==3) p.fd((f4*10)/2).rr(20,f4*10).bk((f4*10)/2).rt(90).fd(20).lt(90); if(i%5==4) p.fd((f5*10)/2).rr(20,f5*10).bk((f5*10)/2).rt(90).fd(20).lt(90); } p.hide(); return 0; } //可能非最标准答案,但能过题目链接:
https://v1.51goc.com/question/viewProgram/34079
(进去后要登录)