首页 > 代码库 > 划分及格线
划分及格线
10个学生考完期末考试评卷完成后,A老师需要划出及格线,要求如下:
(1) 及格线是10的倍数;
(2) 保证至少有60%的学生及格;
(3) 如果所有的学生都高于60分,则及格线为60分: 运行时间限制: 无限制 内存限制: 无限制
输入: 输入10个整数,取值0~100 输出: 输出及格线,10的倍数
样例输入: 61 51 49 30 20 10 70 80 90 99 样例输出:
50
本题用快速排序做的:
1 #include<stdio.h> 2 #include<stdlib.h> 3 int part(int a[], int l, int r) 4 { 5 int m = a[r]; 6 int i,j; 7 i = l; 8 for (j=l; j < r; j++){ 9 if (a[j] < m)10 {11 int t = a[j];12 a[j] = a[i];13 a[i] = t;14 i++;15 }16 }17 a[r] = a[i];18 a[i] = m;19 return i;20 }21 22 void quicksort(int a[], int l, int r)23 {24 if (l < r)25 {26 int q = part(a,l,r);27 quicksort(a,l,q-1);28 quicksort(a,q+1,r);29 }30 }31 32 int main()33 {34 int a[11],i;35 for (i=1; i <= 10; i++)36 //a[i] = rand()%100;37 scanf("%d",&a[i]);38 quicksort(a,1,10);39 for (i=1; i <= 10; i++)40 printf("%d ",a[i]);41 printf("\n");42 if (a[1] >= 60)43 printf("%d\n",60);44 else if(a[5] >= 10)45 printf("%d\n",(a[5]/10)%10 * 10);46 else47 printf("%d\n",a[5]);48 49 }
划分及格线
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。