/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称:a.cpp
* 作 者:孔云
* 完成日期:2014年3月5日
* 版 本 号: v1.0
* 输入描述:输入N名学生的信息(学号、姓名、C++、高数、英语)。
* 问题描述:求出每名学生的总分和均分及均分的均值,并存储在机构体数组中。
*/
#include <iostream>
#include <iomanip>
using namespace std;
struct Student
{
char num[13];
char name[10];
int cpp;
int math;
int english;
double average;
double score;
};
const int N=5;
double aver=0;
int main( )
{
int i, j, k;
//定义结构体数组
Student stu[N];
//写出代码,实现要求的功能
cout<<"请输入学号"<<setw(8)<<"姓名"<<setw(8)<<"C++"<<setw(8)<<"高数"<<setw(8)<<"英语"<<endl;
for(i=0; i<3; i++)
{
cin>>stu[i].num>>stu[i].name>>stu[i].cpp>>stu[i].math>>stu[i].english;
stu[i].score=stu[i].cpp+stu[i].math+stu[i].english;
stu[i].average=stu[i].score/3;
}
cout<<"学号"<<setw(14)<<"姓名"<<setw(10)<<"总分"<<setw(10)<<"均分"<<endl;
for(j=0; j<3; j++)
{
cout<<stu[j].num<<setw(14)<<setiosflags(ios::left)<<stu[j].name<<setw(10)<<setiosflags(ios::left)<<stu[j].score<<setw(10)<<setiosflags(ios::left)<<stu[j].average<<endl;
}
for(k=0; k<3; k++)
{
aver+=stu[k].average;
}
cout<<"所有同学均分的均值是:"<<aver/3<<endl;;
return 0;
}
心得体会:为什么怎么弄,都不能将姓名与学号分开呢?本想做一件美观的事情,可、、、真扫兴加强理解结构体,输入输出的控制符也不能放过