//_7_10_main.cpp #include "GradeBook.h" #include <ctime> #include <cstdlib> int main() { int gradesArray[GradeBook::students][GradeBook::tests]; //随机产生学生成绩 srand((unsigned)time(NULL)); for(int i=0;i<GradeBook::students;i++) for(int j=0;j<GradeBook::tests;j++) gradesArray[i][j] = rand()%101; GradeBook myGradeBook("C++",gradesArray); myGradeBook.displayMessage(); myGradeBook.processGrades(); system("pause >> cout"); return 0; }
//GradeBook.h #include <string> using namespace std; class GradeBook { public: //要设置成静态的const常量,,, static const int students = 10;//参加考试的学生 static const int tests = 3;//测试的次数 GradeBook(string,const int[][tests]); void setCourseName(string); string getCourseName(); void displayMessage();//打印一条欢迎信息! void processGrades();//综合下面函数的功能,,,, int getMaximum();//得到学生成绩中的最大值 int getMinimum();//得到学生成绩中的最小值 //计算该门课程学生成绩的平均值 double getAverage(const int[],const int); void outputBarChart();//输出学生成绩的柱状图 void outputGrades();//输出学生的成绩 private: string courseName;//专业名称 int grades[students][tests];//学生成绩的二维数组 };
//GradeBook.cpp #include "GradeBook.h" #include <iostream> #include <iomanip> using namespace std; GradeBook::GradeBook(string name,const int a[][tests]) { setCourseName(name); for(int i=0;i<students;i++)//将调用的数组信息复制到类的对象的数组中 for(int j=0;j<tests;j++) grades[i][j] = a[i][j]; } void GradeBook::setCourseName(string name) { courseName = name; } string GradeBook::getCourseName() { return courseName; } void GradeBook::displayMessage()//打印一条欢迎信息! { cout << "Welcome to the grade book for\n" << getCourseName() << " !" << endl; } void GradeBook::processGrades()//综合下面函数的功能,,,, { outputGrades();//先输出学生成绩: cout << "Lowest grade is " << getMinimum() << endl; cout << "Highest grade is " << getMaximum() << endl; outputBarChart(); } int GradeBook::getMaximum()//得到学生成绩中的最大值 { int max = 0; for(int k=0;k<students;k++) for(int h=0;h<tests;h++) { if(max<grades[k][h]) max = grades[k][h]; } return max; } int GradeBook::getMinimum()//得到学生成绩中的最小值 { int min = 100; for(int k=0;k<students;k++) for(int h=0;h<tests;h++) { if(min>grades[k][h]) min = grades[k][h]; } return min; } //计算该门课程学生成绩的平均值 double GradeBook::getAverage(const int setOfGrades[],const int grades) { int sum = 0; for(int k=0;k<grades;k++) sum+=setOfGrades[k]; return (static_cast<double>(sum))/grades ; } void GradeBook::outputBarChart()//输出学生成绩的柱状图 { cout << "\nGrades distribution:" << endl;//学生的成绩分布 const int frequencySize = 11; int frequency[frequencySize] = {0}; for(int i=0;i<students;i++) for(int j=0;j<tests;j++) { frequency[grades[i][j]/10] ++ ; } for(int count=0;count<frequencySize;count++) { if(count == 0) cout << " 0-9:" ; else if(count == 10) cout << " 100:" ; else cout << count*10 << "-" << count*10 + 9 << ":" ; for(int star=0;star<frequency[count];star++) cout << "*" ; cout << endl; } } void GradeBook::outputGrades()//输出学生的成绩 { cout << "\nThe grades are :" << endl; cout << " "; for(int i=0;i<tests;i++) cout << "Test" << i+1 << " "; cout << "Average" << endl; for(int student=0;student<students;student++) { cout << "Student" << setw(2) << student+1 ; for(int test=0;test<tests;test++) cout << setw(8) << grades[student][test]; double average = getAverage(grades[student],tests); cout << setw(9) << setprecision(2) << fixed << average << endl; }//end for }//end function
相关推荐
C++语言代码 C++大学教程第五版中的一道简单的作业题包括一些基本的函数
#GradeBook GradeBook 类。 用于演示二维数组。 基于 - 第 7 章
Gradebook Library written in C#.
gradebook.py包含一个二维数组,代表一个虚拟(链接到外部站点)课程的成绩。 数组的每一行代表一个学生,而数组的每一列则代表一个作业。 目的:这项挑战的目的是提供使用Python处理二维数组的经验
procedure Rank(VAR Xstr : array of string; NoCases : integer);procedure PcntCorrect(VAR Xstr : array of string; NoCases : integer);procedure Percentiles(VAR Xstr : array of string;...
sinatra-project-gradebook:熨斗学校第二期项目
完成Assignment类和TotalPointsGradebook类。在MainTest.java文件中测试您的代码。有关编写测试文件的提示,请参见testing_part1_hints.txt 。 第2部分 完成CategoryAssignment类和CategoryGradebook类。在MainTest....
普通的C++中的类,是GradeBook类的最普通的形式,希望对初学者有些帮助。 另外说明,本人也是初学者
成绩簿导出gradebook-export.csv的快速输出格式跑将gradebook-export.csv拖到窗口中按ENTER gradebook-export.xlsx将在与原始文件夹相同的文件夹中创建
第1部分完成Assignment类和TotalPointsGradebook类。 在MainTest.java文件中测试您的代码。 有关编写测试文件的提示,请参见testing_part1_hints.txt 。第2部分完成CategoryAssignment类和CategoryGradebook类。 在...
Print ISBN-10: 0137001304 Print ISBN-13: 978-0137001309 PRACTICAL, EXAMPLE-RICH COVERAGE OF: Classes, Objects, Encapsulation, Inheritance, Polymorphism Integrated OOP Case Studies: Time, GradeBook...
酒井成绩册出口 Quartz作业,用于将Sakai... gradebook.export.path=/Users/steve/Desktop 与该学期相符的网站将被导出。 将此空格留空以使用最新有效期 gradebook.export.term=2013 由Longsight( )赞助的代码开发
Activities that work with the Gradebook 10 Key features of the Gradebook 11 Organizing grades 11 Summary 12 Chapter 2: Customizing Grades 13 Numeric grades 13 Letter grades 14 Customizing letter ...
成绩簿 Java 应用程序 供教授记录、计算和管理学生成绩的成绩簿应用程序。 在此处查看已完成项目的项目视频:http:
gradebook-proj:紧随其后的是Scott的Allen C#基础知识课程,内容涉及Pluralsight
Student_Gradebook:创建包含学生,课程,作业的成绩簿应用程序的班级项目
JUnit_Lab 为Gradebook.java创建一个JUnit测试类。
GradeBook-Console:它是一个成绩簿控制台,记录输入的成绩。 允许用户将成绩保存在文件或临时存储器中
我记得当时以为这个项目是我在大学里做过的最激烈的一个项目,尽管查看原始源代码表明我非常幼稚。 自从这个项目完成以来已经有大约2年的时间了,现在我变得更加自信,尤其是使用C ++的程序员。 但是,新手(Rust...
C++ 的成绩簿类,为 Windows 编写,但可以移植到其他操作系统