一、显示时间案例
1、问题
输入3个数字,将这三个数字按照时间的格式显示出来。
2、共有划成员实现显示
#include <iostream>
using namespace std;
class Time
{
public:
void set_time(void); //默认成员都是私有成员,此处声明的函数也是私有成员
//结构体中默认成员都是共有成员
void show_time(void);
int hour; //默认数据也是私有的
int minute;
int sec;
};
Time t; //定义全局对象t,由类型为Time类
int main()
{
t.set_time(); //调用函数普通set_time
t.show_time();
return 0;
}
void Time::set_time(void) //获取时间数据函数
{
cin >> t.hour;
cin >> t.minute;
cin >> t.sec;
}
void Time::show_time(void) //显示时间函数
{
cout << t.hour << ":" << t.minute << ":" << t.sec << endl;
}
3、在类内定义成员函数
#include <iostream>
using namespace std;
//习题2,在类内定义成员函数
class Time
{
public:
void set_time()
{
cin >> hour; //此处由于是直接调用类中内部的私有成员,因此不需要使用t1.hour
cin >> minute;
cin >> sec;
}
void show_time()
{
cout << hour << ":" << minute << ":" << sec << endl;
}
private: //使用private声明数据是私有部分
int hour;
int minute;
int sec;
};
int main()
{
Time t1; //通过Time类实例化对象t1
t1.set_time(); //调用类中的共有函数
t1.show_time();
return 0;
}
4、通过接口在类外定义函数
#include <iostream>
using namespace std;
class Time
{
public: //私有数据只能由成员函数调用,所以输入和输出需要由成员函数来实现
void set_time(); //声明函数
void show_time();
private: //使用private声明数据是私有部分
int hour;
int minute;
int sec;
};
int main()
{
Time t1; //通过Time类实例化对象t1
t1.set_time(); //调用类中的共有函数
t1.show_time();
return 0;
}
void Time::set_time()
{
cin >> hour; //此处由于是直接调用类中内部的私有成员,因此不需要使用t1.hour
cin >> minute;
cin >> sec;
}
void Time::show_time()
{
cout << hour << ":" << minute << ":" << sec << endl;
}
二、找出元素的最大值
1、题目
从键盘获取10个数的输入,通过算法编译,输出这组数据中的最大值。
2、参考代码
#include <iostream>
using namespace std;
//找出一个整型数组中元素的最大值
class Array_max //类的声明
{
public:
//3个成员函数的声明
void set_value(); //对数组元素设置值
void max_value(); //找出数组中的最大元素
void show_value(); //输出最大值
private:
int array[10]; //整型数组,存放一个个元素值
int max; //用来存放最大值的变量
};
void Array_max::set_value() //成员函数定义,向数组元素输入数值
{
int i;
for(i=0; i<10; i++)
cin >> array[i];
}
void Array_max::max_value() //找出数组元素中的最大值
{
int i;
max= array[0]; //设置初始值,再与其他值进行比较
for(i=1; i<10; i++)
if(array[i]>max) //用冒泡法找出最大值
max= array[i];
}
void Array_max::show_value() // 输出最大值
{
cout << "max=" << max; //输出全局变量
}
int main()
{
Array_max arr; //定义对象arr
//分别调用三个成员函数
arr.set_value();
arr.max_value();
arr.show_value();
return 0;
}
三、长方柱体积
1、题目
从键盘获取3个长方柱的长、宽、高,然后通过计算,输出长方柱的体积。
2、参考源码
#include <iostream>
using namespace std;
class Cube //定义类Cube长方体
{
public: //共有部分声明函数
void set_cube(); //建立长方体的函数声明
void handle_cube(); //处理长方体长宽高数据的函数声明
void show_cube(int j); //输出长方体体积的函数声明
private: //私有部分定义变量
int length; //分别表示长宽高
int width;
int height;
int V; //表示体积
};
int main()
{
Cube cubes[3]; //实例化3个对象cubes数组,里面代表3个长方体
int i;
for(i=0; i<3; i++) //分别遍历3个长方体,获取长宽高并计算体积
{
cubes[i].set_cube();
cubes[i].handle_cube();
cubes[i].show_cube(i);
}
system("pause"); //暂停程序
return 0;
}
void Cube::set_cube()
{
cout << "请输入长方体的长、宽、高:" << endl;
cin >> length >> width >> height;
}
void Cube::handle_cube()
{
V= length * width * height; //体积等于长*宽*高
}
void Cube::show_cube(int j) //j表示第几个长方柱
{
cout << "第" << ++j << "个该长方柱的体积为:" << V << endl;
}