C++实验2—作业
来源:互联网 发布:淘宝手机端详情页gif 编辑:程序博客网 时间:2024/05/22 07:08
第一题:
#include <iostream>using namespace std;class Time{public: void set_time(); void show_time(); void add_a_hours(int); void add_a_minutes(int); void add_a_seconds(int);private: bool is_time(int,int,int); int hour; int minute; int sec;};void Time::set_time(){ char c1,c2; cout<<"请输入时间(格式hh:mm:ss)"; while(1) { cin>>hour>>c1>>minute>>c2>>sec; if(c1!=':'||c2!=':') cout<<"格式不正确,请重新输入"<<endl; else if(!is_time(hour,minute,sec)) cout<<"时间非法,请重新输入"<<endl; else break; }}void Time::show_time(){ cout<<hour<<":"<<minute<<":"<<sec<<endl;}bool Time::is_time(int h,int m,int s){ if (h<0||h>24||m<0||m>60||s<0||s>60) return false; return true;}void Time::add_a_seconds(int s){ int n; sec+=s; if(sec>=60) { n=sec/60; sec%=60; Time::add_a_minutes(n); }}void Time::add_a_minutes(int m){ int n; minute+=m; if(minute>=60) { n=minute/60; minute=minute%60; Time::add_a_hours(n); }}void Time::add_a_hours(int h){ hour+=h; if(hour>=24) { hour%=24; }}int main(){ int tSecond,tMinute,tHour; Time t1; t1.set_time(); t1.show_time(); cout<<"调整时间,输入增加的量ss,mm,hh"<<endl; cin>>tSecond>>tMinute>>tHour; t1.add_a_seconds(tSecond); t1.add_a_minutes(tMinute); t1.add_a_hours(tHour); t1.show_time(); return 0;}第三题:
#include <iostream>#include<cstring>using namespace std;class Book{private: char name[50]; char writer[50]; char public_name[50]; float price; int number; int NO;public: void setBook(char *n,char *w,char *pu,float pr,int nu,int N); void borrow(); void restore(); void print(); void set_NO(int N); int get_NO();};void Book::setBook(char *n,char *w,char *pu,float pr,int nu,int N){ strcpy(name,n); strcpy(writer,w); strcpy(public_name,pu); price=pr; number=nu; NO=N;}void Book::borrow(){ cout<<number--;}void Book::restore(){ cout<<number++;}void Book::print(){ cout<<"书名:"<<name<<endl; cout<<"作者:"<<writer<<endl; cout<<"出版社:"<<public_name<<endl; cout<<"价格:"<<price<<endl; cout<<"数量:"<<number<<endl; cout<<"书号:"<< NO<<endl; cout<<endl;}void Book::set_NO(int N ){ NO=N;}int Book::get_NO(){ cout<<"新书号:"; return NO;}int main(){ Book b; b.setBook("jiewo","yuqiuyu","weifang",25,5,2014); b.print(); b.borrow(); b.print(); b.restore(); b.print(); b.set_NO(2015); b.print(); cout<<b.get_NO(); return 0;}
第四题:
#include<iostream> #include <string> using namespace std; class Stu { public: string getName(); int average(); void setStudent(string n,float c,float m1); void setName(string m); void show(); private: string name; //学生姓名 float chinese; //语文成绩 float math; //数学成绩 //接下去写 }; string Stu::getName() { return name; } int Stu::average() { return ((chinese+math)/2); } void Stu::setStudent(string n,float c,float m1) { name=n; chinese=c; math=m1; } void Stu::setName(string m) { name=m; } void Stu::show() { cout<<"Name:"<<name<<endl; cout<<"Score:"<<chinese<<" "<<math<<endl; cout<<"average:"<<(chinese+math)/2<<" "<<"Sum:"<<chinese+math<<endl<<endl; } 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; }第五题:
#include <iostream> using namespace std; class CFraction { private: int nume; int deno; public: CFraction(int nu,int de); void set(int nu=0,int de=1); void input(); void simplify(); void amplify(int n);void output(int style=0);};CFraction::CFraction(int nu,int de) {nume=nu;deno=de;}void CFraction::set(int nu,int de){nume=nu;deno=de;}void CFraction::input(){cout<<nume<<"/"<<deno<<"化简后为:";}void CFraction::simplify(){for(int i=2;i<=nume;i++){if(nume%i==0&&deno%i==0){nume/=i;deno/=i;i--;}else cout<<"";}cout<<nume<<"/"<<deno<<endl;}void CFraction::amplify(int n){nume*=n;cout<<"变化和"<<nume<<"/"<<deno<<endl;}void CFraction::output(int style){while(style==1){cout<<nume<<"/"<<deno<<"化简"<<nume<<"/"<<deno<<endl;break;}while(style==2){cout<<nume<<"/"<<deno<<"化简"<<nume/deno<<"("<<nume%deno<<"/"<<deno<<")"<<endl;break;}while(style==3){double n=nume,d=deno;cout<<nume<<"/"<<deno<<"化简"<<n/d<<endl;break;}}void main(){CFraction n(0,0);n.set(6,8);n.input();n.simplify();n.set(2,3);n.amplify(5);n.set(4,3);n.output(1);n.output(2);n.output(3);}
0 0
- 【哈工大C语言作业实验题】:13-2作业
- C++实验2—作业
- 把我的 C 作业贴出来 实验二 栈和队列 ——2
- 把我的 C 作业贴出来 实验三 数组——2
- 把我的 C 作业贴出来 实验四 树——2
- C++上机实验2——作业
- c++实验2作业
- 【哈工大C作业实验】:13-1作业题
- 操作系统实验2 作业调度实验
- 第三章实验作业2
- c++第三次实验—作业
- 【实验报告】第6次作业——数组2
- 把我的 C 作业贴出来 实验三 数组——1
- 把我的 C 作业贴出来 实验四 树——1
- 把我的 C 作业贴出来 实验一 线性表
- 把我的 C 作业贴出来 实验五 图
- 软件工程(C编码实践篇) 第二次作业实验报告
- 软件工程(C编码实践篇) 第三次作业实验报告
- ffmpeg: 视频转码命令例子
- iOS开发上传图片的压缩
- php加密方法
- android自定义UI组件
- Intellij IDEA常用配置详解
- C++实验2—作业
- IP地址,子网掩码,默认网关,DNS服务器详解
- 简单工厂模式
- LintCode 删除链表中倒数第n个节点
- 使用Collections.sort()实现List正反排序的方法
- JavaScript 基础知识点
- IP地址和子网掩码的算法
- Httpie 工具入门使用
- Activity之Notification(通知)