//GradeBook.h #include<string> using std::string; class GradeBook { public: GradeBook(string );//重载构造函数 void setCourseName(string );//设置课程名称 string getCourseName();//返回课程名称 void disPlayMessage();//欢迎信息 void determineClassAverage();//统计全班学生某一门课程的平均分以及总分 private: string courseName;//course name for this GradeBook class };
//GradeBook.cpp #include<iomanip> #include <iostream> using namespace std; #include "GradeBook.h" //两个include头文件的顺序还对报错有影响额,好神奇!!!!! GradeBook::GradeBook(string name) { setCourseName(name); } //进行判断,如果输入coursename字符大于25,则取前25个字符 void GradeBook::setCourseName(string name) { if(name.length()<=25) courseName = name; else { courseName = name.substr(0,25);//select first 25 characters cout << "Name\"" << name << "\"exceeds maximum length(25).\n" << "limiting courseName to first 25characters.\n" << endl; } } string GradeBook::getCourseName() { return courseName; } void GradeBook::disPlayMessage() { cout << "welcome to the grade book for\n" << getCourseName() << "!\n"<< endl; } void GradeBook::determineClassAverage() { int total = 0;//学生总成绩 int grade;//输入的学生成绩 int gradeCounter = 0 ;//输入的学生成绩个数 double average ;//学生的平均成绩 cout << "Enter the first grade or -1 to quit :" << endl; cin >> grade ; while(grade!=-1) { total = total +grade ; gradeCounter = gradeCounter +1 ;//计数器加一 cout << "Enter the " << gradeCounter +1<< "th grade or -1 to quit :" << endl; cin >> grade ; } if(gradeCounter != 0) { average = static_cast<double>(total)/gradeCounter ; cout << "\n Total of all " << gradeCounter << " grades entered is :" << total << endl; cout << "Class average is :" << setprecision(4) << fixed << average << endl; } else cout << "No grades were entered !" << endl; }
// main.cpp #include "GradeBook.h" int main() { GradeBook myGradeBook("C++大学基础教程"); myGradeBook.disPlayMessage(); myGradeBook.determineClassAverage(); system("pause >> cout "); return 0; }
相关推荐
第一章 C++基础知识 1.1 程序设计基本概念 1. 程序=算法+数据结构 2. 算法:解决问题所列出来的步骤 3. 程序设计语言:面向机器的语言;`面向过程的语言;面向对象的语言 4. 先进的模块化的程序设计思想 1.2 C++语言...
1、需要有好的C/C++基础。正所谓“磨刀不误砍柴工”,最开始接触VC时不要急于开始Windows程序开发,而是应该进行一些字符界面程序的编写。这样做的目的主要是增加对语言的熟悉程度,同时也训练自己的思维和熟悉一些...
2.9 构造算法与自上而下逐步完善:实例研究2(标记控制重复) 2.10 构造算法与自上而下逐步完善:实例研究3(嵌套控制结构) 2.11 赋值运算符 2.12 自增和自减运算符 2.13 计数器控制循环的要点 2.14 for重复结构 ...
2.9 构造算法与自上而下逐步完善:实例研究2(标记控制重复) 2.10 构造算法与自上而下逐步完善:实例研究3(嵌套控制结构) 2.11 赋值运算符 2.12 自增和自减运算符 2.13 计数器控制循环的要点 2.14 for重复结构 ...
C++大学教程(目录) 第1章 计算机与C++编程简介-------------------------------------------------1 1.1 简介--------------------------------------------------------------1 1.2 什么是计算机--------...
第1章 C++基础 1 1.1 C++简介 1 1.1.1 C++语言的起源 1 1.1.2 C++与面向对象的程序设计 1 1.1.3 C++的特点 2 1.1.4 C++术语 2 1.1.5 C++程序示例 2 1.2 变量、表达式及赋值语句 4 1.2.1 标识符 4 1.2.2 ...
本书延续了Ivor Horton讲解编程语言的独特方法,从中读者可以学习Visual C++ 2005的基础知识,并全面掌握在MFC和Windows Forms中访问数据源的技术。此外,本书各章后面的习题将有助于读者温故而知新,并尽快成为C++...
标题:PHP基础教程 出处:风流的CG网络日志 时间:Mon, 28 Aug 2006 07:24:34 +0000 作者:yufeng 地址:http:///read.php?38 内容: 提供给新手学习的 PHP新手教程,是一个比较有价值的PHP新手教程! 一、PHP...
PL/SQL 基础,一个不错的 PL/SQL 参考手册。内容预览: ---- 第一章 PL/SQL 简介 ---- 1. Oracle应用编辑方法概览 1) Pro*C/C++/... : C语言和数据库打交道的方法,比OCI更常用; 2) ODBC 3) OCI: C语言和...
支持静态链接其它编程语言(如C/C++、汇编等)编译生成的静态库(.LIB或.OBJ),但仅限于COFF格式,支持cdecl和stdcall两种函数调用约定。 使用说明如下:函数声明和调用方法与DLL命令一致;“库文件名”以.lib...