????OJ平台:数组成绩统计

复仇者联盟之数组成绩统计

Description

定义一个5行3列的二维数组,各行分别代表一名学生的高数、英语、C++成绩。再定义一个有5个元素的一维数组,用于存储每名学生的平均成绩。请输入学生的各门课成绩,输出带平均成绩的成绩单,以及所有学生平均成绩的平均值。

Input

15个整数,表示5名学生3科的成绩

Output

分5行显示每名学生的成绩及平均成绩

再显示所有学生平均成绩的平均值(保留两位小数)

Sample Input

97 78 87
78 63 68
73 81 85
91 87 88
76 81 89

Sample Output

97 78 87 87.33
78 63 68 69.67
73 81 85 79.67
91 87 88 88.67
76 81 89 82.00
81.47

HINT

可以在下面程序框架基础上完成,计算中需要的其他变量自行添加

#include<iostream>

#include <iomanip>

using namespace std;

int main()

{

int score[5][3]; //保存成绩的数组

double average[5]; //保存平均成绩的数组

int i,j;

//输入成绩

for(i=0; i<5; i++)

for(j=0; j<3; j++)

cin>>score[i][j];

//计算每位同学的平均成绩,保存到数组average中

//输出带平均成绩的成绩单

//计算平均成绩的平均值并输出

return 0;

}

解:

#include<iostream>
#include <iomanip>
using namespace std;
int main()
{
double d;
double score[5][3];
double average[5];
int i,j;
for(i=0; i<5; i++)
for(j=0; j<3; j++)
cin>>score[i][j];
average[0]=(score[0][0]+score[0][1]+score[0][2])/3;
average[1]=(score[1][0]+score[1][1]+score[1][2])/3;
average[2]=(score[2][0]+score[2][1]+score[2][2])/3;
average[3]=(score[3][0]+score[3][1]+score[3][2])/3;
average[4]=(score[4][0]+score[4][1]+score[4][2])/3;
d=(average[0]+average[1]+average[2]+average[3]+average[4])/5;
for (i=0;i<=4;i++)

{
    for (j=0;j<=2;j++)
    {
        cout<<setiosflags(ios::fixed)<<setprecision(0)<<score[i][j];
        cout<<" ";
    }
    cout<<setiosflags(ios::fixed)<<setprecision(2)<<average[i]<<endl;
}
cout<<d;
return 0;
}

时间: 2024-10-31 20:46:17

????OJ平台:数组成绩统计的相关文章

【华为OJ平台练习题】统计一段字符串中含有空格、英文、数字的个数

//统计一段字符串中含有空格.英文.数字的个数 #include <iostream> using namespace std; void processString(char* s) { int n = strlen(s); int kg=0; int shuzi=0; int yingwen=0; if(n>0) { for(int a=0;a<n;a++) { if(s[a]==' ') kg++; if(s[a]<='9'&&s[a]>='0')

sdut 3-5 学生成绩统计

3-5 学生成绩统计 Time Limit: 1000MS Memory limit: 65536K 题目描述 通过本题目练习可以掌握对象数组的用法,主要是对象数组中数据的输入输出操作. 设计一个学生类Student它具有私有的数据成员:学号.姓名.数学成绩.英语成绩.计算机成绩:具有公有的成员函数:求三门课总成绩的函数int sum();求三门课平均成绩的函数double average();输出学生基本信息.总成绩和平均成绩的函数void print():设置学生数据信息的函数voidset

设计实现OJ平台的遇到的一些问题和解决方法

需求 毕业设计,实现一个能够自动编译.运行.监测程序运行使用资源.恶意系统调用的监控的一个OJ平台. 在设计实现的过程中的想法.碰到的问题.求解的过程以及方法,在这里记录下来. 基础结构 OJ主要由前端系统(WEB)和后端的判题程序构成,想法是后端的裁判程序做通用点,减少和前端系统的耦合,所以把后端给分离出来成一个独立的程序,大概的结构图是这样的. 解释下: 1. 前端其实可以由任何流行的web语言来实现. 2. 这里的代理可有可无,代理在这里可以实现很多功能,比如负载均衡.数据库的业务逻辑等都

华为OJ平台——字符串分隔

题目描述: 连续输入字符串,请按长度为8拆分每个字符创 后输出到新的字符串数组: 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理 输入 连续输入字符串(输入两次,每个字符长长度小于100)输出 输出到长度为8,的新字符串数组样例输入 abc 123456789样例输出 abc00000 12345678 90000000 思路: 都是直接处理,没有具体的方法而言 注意点: 华为的OJ平台的输入输出有点坑,好多次的程序都在这里出问题,在Eclipse上运行的结果没问题,然后在OJ上就是编

[西建大ACM协会]OJ平台如何使用

目录 [西建大ACM协会]OJ平台如何使用 0x00 前言 0x01 准备工作 0x02 注册账号 0x03 开始使用 [西建大ACM协会]OJ平台如何使用 0x00 前言 ?关于ACM比赛以及对应的练习对自己有什么好处,我不做多的解释,这次这篇文章只针对想要提升自己编程能力.但又苦于无法找到合适入门途径的新人. ?备注:本文涉及到的OJ平台需要能够访问外网才可访问. 0x01 准备工作 ?访问外网工具(防和谐,不多说,后续的操作中都需要它) ?浏览器(建议chrome,看不懂的题目就可以直接翻

华为OJ平台——矩阵乘法

题目描述: 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C. 输入: 1.第一个矩阵的行数 2.第一个矩阵的列数(也是第二个矩阵的行数) 3.第二个矩阵的列数 4.第一个矩阵的值 5.第二个矩阵的值 输出: 输出两个矩阵相乘的结果 样例输入 2 2 2 3 8 8 0 9 0 18 9 样例输出 171 72 72 0 思路: 题目意思很简单,只是实现两个矩阵乘法功能,要注意的一点是输出的格式. OJ平台中对输出的格式非常严格,经过多次尝试,验证此

FOJ_Problem 1587 成绩统计

水题,不过要想0ms过还是有个技巧的: #include <iostream> #include <cstring> using namespace std; int main() { int score[101]; int t,t1,temp; while(cin>>t) { //memset(score,0,sizeof(score));这样时效性不高了,因为memset()是按字节处理数据的,并且有个函数调用的过程 for (int i=0;i<101;i+

数组去重统计排序

需求是:统计次数并按照要求排序: 思路: 第一步:拼接字符串,返回一个字符串数组: 第二步 :查询数组,去重并统计次数: 第三步:使用sort()函数进行排序: 第四步:join()函数.把数组元素放到字符串中,的确很绕,学程序的没办法,多练习. <!doctype html> <html> <head> <meta charset="utf-8"> <title>数组去重统计排序</title> <styl

XTU OJ 1163 查询成绩 (字符串+递归)

 查询成绩 Accepted : 52   Submit : 275 Time Limit : 3000 MS   Memory Limit : 65536 KB 题目描述 波波同学是位大四的学生,同时也是一位考研er.为了考上北京邮电大学,他准备了很长时间.不久前,考研成绩终于公布了.波波登陆了成绩查询网站,发现自己密码竟然忘记了!但是幸好,他还记得其中的某些字母.请你判断,他记忆中的字母是否是正确密码的片段. 输入 多组样例,每组样例有两行.第一行为正确密码,第二行为波波记得的密码片段,