分数统计

来源:互联网 发布:成都知数科技 综合内勤 编辑:程序博客网 时间:2024/04/28 03:34

题目: 输入一些学生的分数,哪个分数出现的次数最多?如果有多个并列,从小到大输出。

(本代码没有最后从小到大输出功能。。)

#include<stdio.h>#include<stdlib.h>#define MAXN 100#define INF 100000int num[MAXN];int nun[MAXN];int sum[MAXN];int main(void){int a, i, n = 0, j;while(scanf("%d", &a) == 1){num[n++] = a;}int m = 0, ok;for(i=0; i<n; i++){ok = 1;if(num[i] == -1){continue;}else{nun[m] = num[i];//无重复的数字sum[m] = ok;for(j=i+1; j<n; j++){if(num[j] == -1){continue;}else{if(num[i] == num[j]){sum[m] = ++ok; //次数 num[j] = -1;}}}num[i] = -1;++m;}}int max = -INF;for(i = 0; i<m; i++){printf("%d ", sum[i]);}printf("\n");for(i = 0; i<m; i++){if(sum[i] > max)max = sum[i];}for(i = 0; i<m; i++){if(max == sum[i])printf("%d\n", nun[i]);}return 0;}


原创粉丝点击