算法提高 分数统计  
时间限制:1.0s   内存限制:512.0MB
    
问题描述
  2016.4.5已更新此题,此前的程序需要重新提交。
问题描述
  给定一个百分制成绩T,将其划分为如下五个等级之一:
  90~100为A,80~89为B,70~79为C,60~69为D,0~59为E
  现在给定一个文件inp,文件中包含若干百分制成绩(成绩个数不超过100),请你统计五个等级段的人数,并找出人数最多的那个等级段,按照从大到小的顺序输出该段中所有人成绩(保证人数最多的等级只有一个)。要求输出到指定文件oup中。
输入格式
  若干0~100的正整数,用空格隔开
输出格式
  第一行为5个正整数,分别表示A,B,C,D,E五个等级段的人数
  第二行一个正整数,表示人数最多的等级段中人数
  接下来一行若干个用空格隔开的正整数,表示人数最多的那个等级中所有人的分数,按从大到小的顺序输出。
样例输入
100 80 85 77 55 61 82 90 71 60
样例输出
2 3 2 2 1
3
85 82 80
 
作者注释:蓝桥杯的后台编译时其实有N——表输入N个0~100的正整数即分数。
正确代码:
 #include <algorithm>
#include <iostream>
#include <string.h>
int num[];
using namespace std;
int main()
{
int n,i = ,sum;
int temp[][],dp[] = {,,,,};
memset(temp,,sizeof(temp));
cin>>sum;
for(;i < sum;i++)
{
cin>>num[i];
for(int j = ;j < ;j++)
{
if(num[i] >= dp[j])
{
temp[j][++temp[j][]] = num[i];
break;
}
}
}
int maxn = ,maxl = ;
for(int t = ;t < ;t++)
{
cout<<temp[t][]<<" ";//输出每个等级的人数
if(maxn < temp[t][])
{
maxn = temp[t][];
maxl = t;
}
}
cout<<endl<<maxn<<endl;
sort(temp[maxl]+,temp[maxl]+temp[maxl][]+);
for(int t = temp[maxl][];t >= ;t--)
cout<<temp[maxl][t]<<" ";
return ;
}
 
错误代码:
 #include<stdio.h>
int main(){
int n;
int a=,b=,c=,d=,e=;
scanf("%d",&n);
int score[n];
int a1[][n];
for(int i=;i<;i++){
a1[i][]=;
}
for(int i=;i<n;i++){
scanf("%d",&score[i]);
if(score[i]>=){
a1[][a]=score[i];
a1[][]++;
a++;
}
else if(score[i]>= && score[i]<){
a1[][b]=score[i];
a1[][]++;
b++;
}
else if(score[i]>= && score[i]<){
a1[][c]=score[i];
a1[][]++;
c++;
}
else if(score[i]>= && score[i]<){
a1[][d]=score[i];
a1[][]++;
d++;
}
else if(score[i]<){
a1[][e]=score[i];
a1[][]++;
e++;
}
}
printf("%d %d %d %d %d\n",a1[][],a1[][],a1[][],a1[][],a1[][]); /*对各个等级人数进行冒泡降序*/
for(int i=; i<-; i++){
for(int j=; j<--i; j++){
/*降序*/
if(a1[j][]<a1[j+][]){
int t = a1[j][];
a1[j][] = a1[j+][];
a1[j+][] = t;
}
}
}
printf("%d\n",a1[][]);
for(int i=;i<=a1[][];i++){
printf("%d ",a1[][i]);
}
}
 

C语言 · 分数统计的更多相关文章

  1. java语言实现对程序设计语言源文件统计字符数、单词数、行数及其他拓展功。

    本次作业Github项目地址:https://github.com/YiChenglong2018/WordCount 一.项目简介 本项目的需求可以概括为:对程序设计语言源文件统计字符数.单词数.行 ...

  2. Java实现 蓝桥杯VIP 算法提高 分数统计

    算法提高 分数统计 时间限制:1.0s 内存限制:512.0MB 问题描述 2016.4.5已更新此题,此前的程序需要重新提交. 问题描述 给定一个百分制成绩T,将其划分为如下五个等级之一: 9010 ...

  3. 用C语言实现统计一个文件夹中各种文件的比例

    <UNIX环境高级编程>中的程序清单4-7就介绍了如何实现递归地统计某个目录下面的文件!我刚开始看过它的代码后,觉得照着敲太没意思了,所以就合上书自己写了一遍!为此还写了一篇博文,这是博文 ...

  4. R语言︱常用统计方法包+机器学习包(名称、简介)

    一.一些函数包大汇总 转载于:http://www.dataguru.cn/thread-116761-1-1.html 时间上有点过期,下面的资料供大家参考基本的R包已经实现了传统多元统计的很多功能 ...

  5. C语言词频统计设计

    项目需求: 1.设计一个词频统计小软件,对给定的英文文章进行单词频率的统计. 2.文章中相应的标点不计入统计. 3.将统计结果以从大到小的排序方式输出. 设计: 1.因为功能相对简单,采用C语言直接进 ...

  6. C语言:统计整型变量m中各数字出现的次数,-去掉一个最高分和一个最低分,然后求平均值,(注意最低分和最高分可能有多个数并列)

    //统计整型变量m中各数字出现的次数,并存放在数组a中,其中,a[0]存放0出现的次数,a[1]存放1出现的次数. #include <stdio.h> ]) { int i; ; i&l ...

  7. R语言 ETL+统计+可视化

    这篇文章...还是看文章吧 导入QQ群信息,进行ETL,将其规范化 计算哪些QQ发言较多 计算一天中哪些时段发言较多 计算统计内所有天的日发言量 setwd("C:/Users/liyi/D ...

  8. C语言实现统计字符个数

    #include<stdio.h> int main() {     int sz[10]={0},zm[26]={0},z[26]={0},i,space=0,e=0,t=0;      ...

  9. C++语言,统计一篇英文文章中的单词数(用正则表达式实现)

    下面的例子展示了如何在C++11中,利用regex_search()统计一篇英文文章中的单词数: #include <iostream> #include <regex> #i ...

随机推荐

  1. Tomcat訪问日志浅析

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" ...

  2. 解决:Access denied for user ''@'sinochip-79e833' (using password: NO)

    uthentication to host '' for user '' using method 'mysql_native_password' failed with message: Acces ...

  3. CentOS安装配置Samba

    介绍 Samba可以让我们在windows中访问linux系统中的文件,如果用来调试linux虚拟机中的代码会非常的方便 1.安装 yum -y update yum install samba sa ...

  4. Web Service-WSDL详解

    WSDL指网络服务描述语言 (Web Services Description Language), 是一种用XML编写的文档, 用于描述Web Service和函数.参数以及返回值等; 文档内规定了 ...

  5. jsp中获取当前项目名称

    在JSP页面获取当前项目名称的方法: 方法1: <%= this.getServletContext().getContextPath() %> 方法2: 使用EL表达式 ${pageCo ...

  6. leetcode719:直线上的第k近点对

    问题描述 给定数组a[N],可以确定C(N,2)个点对,也就确定了C(N,2)个距离,求这些距离中第k小的距离(k<C(N,2)). 思路 看到第k小.第k大这种问题,首先想到二分法. 把求值问 ...

  7. 数据库分析函数 ROW_NUMBER() rank() dense_rank() 的区别 first_value(D) , last_value(D)

    直接上图 select * from tab select B,ROW_NUMBER()over(order by B) from tab 当碰到相同数据时,排名按照记录集中记录的顺序依次递增.  遇 ...

  8. iOS9中怎样在日历App中创建一个随意时间之前開始的提醒(三)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 假设认为写的不好请多提意见,假设认为不错请多多支持点赞.谢谢! hopy ;) 四.创建随意时间之前開始的提醒 如今我们找到了指定源中的指定日 ...

  9. codeforces#254DIV2解题报告

    今天简直大爆发啊... 吃了顿烧烤竟然这么管事. . . .. 本弱渣竟然做出来了3道,并且B题是我第一次在CF中用到算法..(曾经最多也就是贪心. . . ). 题目地址:codeforces#22 ...

  10. java中如何设置下载文件

    如果想要设置某一url为下载文件的方法如下 需要设置文件响应类型,使用response.setContentType,比如jpeg格式的图片.如果想要访问该页面时出现下载保存的窗口,使用respons ...