第七周实验报告1

来源:互联网 发布:安卓http如何获取数据 编辑:程序博客网 时间:2024/06/05 09:06

      

   /* (程序头部注释开始) 1.* 程序的版权和版本声明部分 2.* Copyright (c) 2011, 烟台大学计算机学院学生 3.* All rights reserved. 4.* 文件名称: Time类                          5.* 作    者: 114-4刘程程                             6.* 完成日期: 2012 年 4  月 2 日 7.* 版 本 号: vc.5    8. 9.* 对任务及求解方法的描述部分 10.* 输入描述: 11.* 问题描述:含有静态数据成员和成员函数的Time类:类中所有的对象共有的数据 12.* 程序输出:根据is_24和from0,输出适合形式-20:23:5/8:23:5 pm/08:23:05 pm 13.* 程序头部的注释结束 14.*/15.16.  #include <iostream>using namespace std;class Time{public: Time(int = 0,int = 0,int = 0); void show_time(); //根据is_24和from0,输出适合形式的时间20:23:5/8:23:5 pm/08:23:05 pm      void add_seconds(int);//增加n秒钟 void add_minutes(int);//增加n分钟 void add_hours(int);//增加n小时 static void change24();//改变静态成员is_24,在12和24时制之间转换 static void changefrom0();//改变静态成员from0,转换是否前导0private: static bool is_24;//为true时,24小时制;为false时,12小时制 static bool from0;//为true时,前导0,为false,不前导0 int hour; int minute; int sec;};bool Time::is_24 = true;bool Time::from0 = false;Time::Time(int h,int m,int s):hour(h), minute(m), sec(s){}void Time::show_time() //重难点{ //输出时 int h =(is_24)?hour:hour%12;   if (h < 10 && from0) cout << '0';   cout<<h<<':';   //输出分   if(minute <10 && from0) cout<<'0';   cout << minute <<':';   //输出秒   if(sec < 10 && from0) cout << '0';   cout << sec;   //输出pm或 am   if(!is_24)     cout<<(hour > 12)? "pm":"am";//这样写很简洁   cout<<endl;}void Time::add_seconds(int n)//增加n秒钟{ sec += n; if (sec > 59) {  add_minutes(sec/60);  sec %= 60; }}void Time::add_minutes(int n) //增加n分钟{ minute += n; if(minute > 59) {  add_hours(minute/60);  minute %= 60; }}void Time::add_hours(int n) //增加n小时{ hour += n; if (hour > 23)  hour %= 24;}void Time::change24(){ is_24 =! is_24;}void Time::changefrom0(){ from0 =! from0;}int main(){ Time t1(23,14,25),t2(8,45,6); cout<<"24时制,不前导0:"<<endl; cout<<" t1是:"; t1.show_time(); cout<<" t2是:"; t2.show_time(); t1.add_hours(10); t2.add_hours(10); Time::changefrom0();//注意此处调用静态成员 cout<<"10小时后,切换是否前导0:"<<endl; cout << "t1是:"; t1.show_time(); cout << "t2是:"; t2.show_time(); system("pause"); return 0;}


 

  1.  

     

    感悟:这次这个程序花了我很长时间,主要是在showtime上花了很长时间,而且篇幅也很长,听了老师的讲解,恍然大悟,竟有点喜欢上那种感觉。。。

  2. 再就是通过这个程序,在深刻的了解下布尔变量。。

 

  1.  

 

  1.  

原创粉丝点击