21天学通C++之对象作业实战


因为作者平时不使用C++进行编程,但是课程刷分无奈又学习一遍,这样其实只要跟随老师的脚步一步一步进行学习和实验就可以了(ps:第一次没好好学,只拿了73分)。所以初期关于C++的学习大多OJ编程作业上进行,所以内容比较关键但却又比较浅显,有需要的读者凑合着看即可。


第三次C++作业代码和解析


第一题作业:

//
//  main.cpp
//  CppCP3_1
//
//  Created by Chenjun Xiong on 2017/3/16.
//  Copyright © 2017年 Chenjun Xiong. All rights reserved.
//
//题目描述
//(Circle类)一个圆形的旱冰场地,场地内抹水泥,造价为每平方米20元,围栏用木条围成,每米造价35元。设计一个Circle类,可以求出圆的面积和边长,进而支持求出旱冰场的等价。请在下面提示的基础上完成程序,其中需要做的工作包括:(1)在类声明中声明相关的公共成员函数;(2)在类声明和main()函数之间,定义声明的成员函数。PI采用3.1415926
//
//输入描述
//请输入旱冰场的半径
//
//输出描述
//旱冰场的造价,小数点后保留2位
//
//输入样例
//5.5
//
//输出样例
//3110.18

#include <iostream>
#include <iomanip>
using namespace std;

double PI=3.1415926;

class Circle{
private:
    double radio;

public:
    Circle(double r=0);
    void SetRadio(double r=0);
    double GetPerimeter();
    double GetArea();
    double GetPrice();
};

Circle::Circle(double r){
    radio=r;
}

void Circle::SetRadio(double r){
    radio=r;
};

double Circle::GetArea(){
    return PI*radio*radio;
}

double Circle::GetPerimeter(){
    return PI*radio*2;
}

double Circle::GetPrice(){
    return 20*GetArea()+35*GetPerimeter();
}

int main(int argc, const char * argv[]) {
    double radio;
    Circle circle;
    while(cin>>radio){
        circle.SetRadio(radio);
        cout << setprecision(2) << setiosflags(ios::fixed | ios::showpoint) << circle.GetPrice() << endl;
    }
    return 0;
}

解析:

  • 本次作业主要使用了类,类成员函数的类外声明,构造函数的重写,小数输出保留小数点后两位等技术。
  • 小数点后两位主要使用了头文件和cout输出时的函数
#include <iomanip>
cout << setprecision(2) << setiosflags(ios::fixed | ios::showpoint) << circle.GetPrice() << endl;

第二题作业:

//
//  main.cpp
//  CppCP3_2
//
//  Created by Chenjun Xiong on 2017/3/16.
//  Copyright © 2017年 Chenjun Xiong. All rights reserved.
//
//输入描述
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值