《C++语言基础》实践参考——考了语文数学的学生

返回:贺老师课程教学链接

【项目4 - 考了语文数学的学生】
下面提供了类Stu的数据成员定义,和用于测试的main函数,参考如图的运行结果,完成类的定义,并用多文件形式组织程序

#include<iostream>
using namespace std;
class Stu
{
private:
    string name;	//学生姓名
    float chinese;	//语文成绩
    float math;		//数学成绩
    //接下去写
};

int main()
{
    Stu s1,s2;
    s1.setStudent("Lin daiyu", 98, 96); //对象置初值
    s2.setStudent("Jia baoyu", 90, 88); //对象置初值
    s1.show();//打印信息
    s2.show();//打印信息
    s1.setName("xue baochai");//重新置p1对象的名字
    s1.show();
    cout<<"s1.Name: "<<s1.getName()<<endl;//打印对象的名字
    cout<<"s1.average: "<<s1.average()<<endl;//打印对象的成绩
    return 0;
}

[参考解答]

stu.h

#ifndef STUDENT_H_INCLUDED
#define STUDENT_H_INCLUDED
using namespace std;  //为了用string类型
#include <cstring>    //为了用string类型
class Stu
{
private:
    string name;	//学生姓名
    float chinese;	//语文成绩
    float math;		//数学成绩
public:
    float average();//计算平均成绩
    float sum();	//计算总分
    void show();	//打印信息
    void setStudent(string,float,float);//为对象置姓名、成绩
    void setName(string);	//为对象置姓名
    string getName();	//取得学生姓名
};

#endif // STUDENT_H_INCLUDED

stu.cpp

#include<iostream>
#include<cstring>
#include "stu.h"
using namespace std;

float Stu::average()
{
    return (chinese+math)/2;   //平均成绩
}
float Stu::sum()
{
    return chinese+math;   //总分
}
void Stu::show()	//打印信息
{
    cout<<"Name:  "<<name<<endl;
    cout<<"Score:  "<<chinese<<'\t'<<math<<endl;
    cout<<"average:  "<<average()<<'\t'<<"Sum:   "<<sum()<<endl<<endl;
}
void Stu::setStudent(string sName, float fChinese, float fMath)
{
    name=sName;	//置姓名
    chinese=fChinese;	//置语文成绩
    math=fMath;	    	//置数学成绩
}

void Stu::setName(string sName)
{
    name=sName;	//置姓名
}

string Stu::getName()
{
    return name;   //返回姓名
}

main.cpp

#include<iostream>
#include"student.h"
using namespace std;

int main()
{
    Stu s1,s2;
    s1.setStudent("Lin daiyu", 98, 96); //对象置初值
    s2.setStudent("Jia baoyu", 90, 88); //对象置初值
    s1.show();//打印信息
    s2.show();//打印信息
    s1.setName("xue baochai");//重新置p1对象的名字
    s1.show();
    cout<<"s1.Name: "<<s1.getName()<<endl;//打印对象的名字
    cout<<"s1.average: "<<s1.average()<<endl;//打印对象的成绩
    return 0;
}
时间: 2024-10-01 18:31:08

《C++语言基础》实践参考——考了语文数学的学生的相关文章

《C++语言基础》参考——学生可以相加吗?

返回:贺老师课程教学链接 谈及运算,我们总是习惯"数"的运算.而实际上,像时间之类的对象也是可以进行加减运算的.再进一步,我们的思维还可以拓展,运算加以加到任何事物上,只要我们可以为这些"运算"设计好意义. 例如:有班级类和学生类.两个学生相加,组成了一个由两个学生构成的班级:班级加学生,代表班级增加了一名新同学:学生乘学生,结果为这两个学生"结对子",可以做某些事(这个对子,需要定义成一个新的类):班级乘班级,是班级中的所有学生,两两结对子的所

《C++语言基础》参考——转换构造函数与类型转换函数

返回:贺老师课程教学链接 下面的程序,想在main函数中要完成实数加复数.复数加实数,不可以.编译下面的程序出现错误,就是因为没有提供对应类型数据的运算符重载函数. #include <iostream> using namespace std; class Complex { public: Complex():real(0), imag(0){} Complex(double r,double i):real(r), imag(i){} Complex operator+(const Co

《C++语言基础》网络课程主页

返回 贺利坚教学链接 本课程是在大学的实体课程基础上建设的一门网络课程,将我在教学中建设的资源,让更多的人能够用到. 课程链接是:点击打开链接 同步实体课在 点击打开链接,那里有92名同时学习的"同学",以及他们的博客链接. 坚持这门课程学习的学员,请在评论处留言,我将建立专门的链接,一起建设学习的氛围. 学员链接:(待加) 课程内容 一.从C到C++ 课时 视频 示例程序 自测 学习指导与实践 实践项目参考解答 1.1 由C语言到C++(暨本课介绍) 链接   1.2 C语言的基本成

【软考教程】程序设计语言基础

继续软考教程的学习,在第1章,我们主要是对计算机的组成和工作原理做了一定了解,可以说,在他的带领下,我们对计算机硬件方面的知识,有了更加坚实的基础. 第2章,程序设计语言基础知识.不看内容,光从标题来看,并不会觉得陌生."程序设计语言",至今,我们已经接触过不止一种了,从最初的VB.到后来的VB.NET.C#.C++,软考前个阶段,我们还见到了早有耳闻的Java世界. 那么,下面就跟随着"设计语言"的脚步,一起发现编程路上美丽的风光吧. 想要对程序设计语言有个宏观上

《C++语言基础》实践项目——构造函数和析构函数

返回:贺老师课程教学链接 [项目1-三角形类的构造函数] 设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化,可以由下面的类声明开始,需要自己实现相关的成员函数,以及增加要求的构造函数 class Triangle { public: double perimeter();//计算三角形的周长 double area();//计算并返回三角形的面积 void showMessage(); private: double a,b,c; //三边为私有成员数据 }; void Triang

Swift语言指南(一)--语言基础之常量和变量

原文:Swift语言指南(一)--语言基础之常量和变量 Swift 是开发 iOS 及 OS X 应用的一门新编程语言,然而,它的开发体验与 C 或 Objective-C 有很多相似之处. Swift 提供了 C 与 Objective-C 中的所有基础类型,包括表示整数的 Int,表示浮点数的 Double 与 Float,表示布尔值的 Bool,以及表示纯文本数据的 String. Swift 还为两个基本集合类型 Array 与 Dictionary 提供了强大的支持,详情可参考 (集合

找工作笔试面试经验总结(C语言基础部分)

2017年9月14号,辞去了在伟易达的工作,怎么说,待了两年了,提辞职不太好说出口,但人各有志,我还是希望能去外面接触更多的东西,也希望能够多认识一些人,丰富我的社交经验. 纵观好几个公司的笔试面试经验,都考得比较简单,笔试和面试不会是那种特别难的题目,基本上都是基础知识,所以我一再告诉我的师弟师妹,出来工作,除了一些比较牛逼的公司出的题比较异类以外,其余的绝大多数公司,考的题目都是比较基础的,所以,基础是非常重要的.下面我就根据我笔试的回忆,考的最多依然是C语言基础,写出以下考到的题目: (1

C++语言基础-入门简介

C++是个强大的语言,可以用于做别的语言做不了的工作.但是,这种强大功能是有代价的.开始使用C++时,你可能会遇到内存溢出和访问失效等问题,使程序死机.这里用最简短的篇幅介绍C++语言基础.C++语言本身有专著介绍,这种书还特别厚,所以别指望我能用三言两语说清楚.读者学完本书并使用C++ Builder一般时间之后,最后对C++语言再作更深入的了解. C++可以最充分地利用面向对象编程(OOP)的优势.OOP不只是一个新名词,而有它的实际意义,可以生成可复用的对象.新术语 对象(object),

C语言基础问题求解答,运算符

问题描述 C语言基础问题求解答,运算符 if((b[i]=='a')||(b[i]=='e')||(b[i]=='i')||(b[i]=='o')||(b[i]=='u')) 可以写成下面的形式吗? if(b[i]==('a'||'e'||'i'||'0'||'u')) 解决方案 不可以的,会先判断括号里面的.你用switch语句 解决方案二: 可以这么写 if (strstr("aeiou", b[i]) != null) ... 解决方案三: 参考http://blog.sina.