学生成绩统计

/* 
* 程序的版权和版本声明部分: 
* Copyright (c) 2012, 烟台大学计算机学院 
* All rights reserved. 
* 文件名称:学生成绩统计.cpp 
* 作    者:毛通 
* 完成日期:2012 年 12月 11日 
* 版 本 号:v1.0 
* 对任务及求解方法的描述部分: 要求

   (1)定义二维数组来存放各个学生各门课程成绩

   (2)求每门课程的学生平均成绩(每列),保存并输出

   (3)求每个学生的各门课程平均成绩(每行),保存并输出

   成绩如下:

              课程1          课程2          课程3 

学生1      89               78                 56 

学生2      88               99               100 

学生3      72               80                 61

学生4      60               70                 75

* 输入描述:无 
* 问题描述:
* 程序输出:“” 
* 问题分析:略
* 算法设计:略
*/

 

#include<iostream>

#include<iomanip>

using namespace std;

int main()

{
	//定义二维数组来存放各个学生各门课程成绩
	double a[5][4]=
	{
		{89,  78,  56},
		{88,  99,  100},
		{72,  80,  61},
		{60,  70,  75},
	};
	int val,flag; //val行 flag列
	
	//每列平均值 求出每列的总和然后除以4
	double sum_1[3];
	for(int i=0;i<3;i++)
	{
		sum_1[i]=0;
	}
	
	for(flag=0;flag<3;flag++)
		for(val=0;val<4;val++)
			sum_1[flag]=sum_1[flag]+a[val][flag];
		
		for(flag=0;flag<3;flag++)
			a[4][flag]=sum_1[flag]/4;
		
		
		//每个学生的各门课程平均成绩(每行),保存并输出:
		double sum_2[4];
		for( i=0;i<4;i++)
		{
			sum_2[i]=0;
		}
		
		for(val=0;val<4;val++)
			for(flag=0;flag<3;flag++)
				sum_2[val]=sum_2[val]+a[val][flag];
			for(val=0;val<4;val++)
				a[val][3]=sum_2[val]/3;
			
			
			
			//输出成绩表
			cout<<"成绩表"<<"   ";
			for(i=1;i<=3;++i)
				cout<<"课程"<<i<<"\t";
			cout<<"平均分";
			cout <<endl;
			
			i=1;
			cout<<"学生1"<<"\t"<<" ";
			
			for(val=0;val<4;val++)
			{
				for(flag=0;flag<4;flag++)
				{
					cout<<setprecision(4)<<a[val][flag]<<"\t";
				}
				i=i+1;
				if(i==5)
					break;
				
				cout<<endl<<"学生"<<i<<"\t"<<" ";
				
				
				//Continue
			}
			cout<<endl;
			
			
			cout<<"平均分"<<"\t"<<" ";
			for(flag=0;flag<4;flag++)
			{
				cout<<setprecision(4)<<a[4][flag]<<"\t";
			}
			cout<<endl;
			
			return 0;
}


/*
运行结果:


心得体会:
知识点总结:
*/

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值