This commit is contained in:
Light-City
2020-04-06 00:57:02 +08:00
parent f97c156cc4
commit a4d828bb4c
120 changed files with 4413 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
## 重点实战练习
├── [中括号重载.cpp](中括号重载.cpp)
├── [时钟++运算符重载.cpp](时钟++运算符重载.cpp)
├── [运算符重载之强制转换.cpp](运算符重载之强制转换.cpp)
└── [重载圆括号的时钟.cpp](重载圆括号的时钟.cpp)
├── [函数模板.cpp](函数模板.cpp)
├── [动态数组.cpp](动态数组.cpp)
├── [字典插入与查找.cpp](字典插入与查找.cpp)
├── [异常捕获.cpp](异常捕获.cpp)
├── [类模板之栈.cpp](类模板之栈.cpp)
├── [类模板特化之数组.cpp](类模板特化之数组.cpp)
├── [继承与封装.cpp](继承与封装.cpp)
├── [读写文件综合题.cpp](读写文件综合题.cpp)
├── [输入输出运算符重载.cpp](输入输出运算符重载.cpp)
├── [输入输出重载.cpp](输入输出重载.cpp)
├── [输出格式.cpp](输出格式.cpp)

View File

@@ -0,0 +1,51 @@
//Eg8-9.cpp
#include <iostream>
#include <cstring>
using namespace std;
struct Person{ //ְ<><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ľṹ
double salary;
char *name;
};
class SalaryManaege{
Person *employ; //<2F><><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int max; //<2F><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1>Ͻ<EFBFBD>
int n; //<2F><><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ʵ<EFBFBD><CAB5>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
SalaryManaege(int Max=0){
max=Max;
n=0;
employ=new Person[max];
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ֱ<EFBFBD><D6B1>ʹ<EFBFBD><CAB9>
double &operator[](char *Name) { //<2F><><EFBFBD><EFBFBD>[]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Person *p;
for(p=employ;p<employ+n;p++)
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>
if(strcmp(p->name,Name)==0)
return p->salary;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
p=employ + n++;
p->name=new char[strlen(Name)+1];
strcpy(p->name,Name);
p->salary=0;
return p->salary;
}
void display(){
for(int i=0;i<n;i++)
cout<<employ[i].name<<" "<<employ[i].salary<<endl;
}
};
int main(){
SalaryManaege s(3);
s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]=2188.88;
s["<EFBFBD><EFBFBD>˹"]=1230.07;
s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]=3200.97;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t"<<s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]<<endl; cout<<"<EFBFBD><EFBFBD>˹\t"<<s["<EFBFBD><EFBFBD>˹"]<<endl;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t"<<s["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]<<endl;
cout<<"-------<2D><>Ϊdisplay<61><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--------\n\n";
s.display();
system("pause");
}

View File

@@ -0,0 +1,19 @@
#include<iostream>
#include<cstring>
using namespace std;
template<class T> T compareMax(T t1,T t2){
return t1>t2?t1:t2;
}
template<> char* compareMax<char *>(char *s1,char *s2){
return strcmp(s1,s2)>=0?s1:s2;
}
int main(int argc, char const *argv[])
{
cout<<compareMax(1,2)<<endl;
cout<<compareMax("asda","qweq")<<endl;
system("pause");
return 0;
}

View File

@@ -0,0 +1,5 @@
#include<iostream>
char *sPtr; //<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
s="<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
sPtr = new char[strlen(s)+1];
strncpy(sPtr,s;

View File

@@ -0,0 +1,78 @@
#include<iostream>
#include<map>
#include<cstring>
using namespace std;
int main(int argc, char const *argv[])
{
map<const char*,const char*> mp;
map<const char*,const char*>::iterator iter;
const char key[3][20]={"img","system","ip"};
const char value[3][20]={"d:/a.img","win7","193.68.6.3"};
//make_pair<69><72><EFBFBD><EFBFBD>
for(int i=0;i<2;i++){
mp.insert(make_pair(key[i],value[i]));
}
//pair<const char*,const char*><3E><><EFBFBD><EFBFBD>
mp.insert(pair<const char*,const char*>(key[2],value[2]));
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
mp["addr"]="<EFBFBD>й<EFBFBD>";
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>Ԫ<EFBFBD><D4AA>
//ѭ<><D1AD>ȡ<EFBFBD><C8A1>Ԫ<EFBFBD><D4AA>
for(iter=mp.begin();iter!=mp.end();iter++){
cout<<iter->first<<"\t"<<iter->second<<endl;
}
char key1[20];
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>밴key<EFBFBD><EFBFBD><EFBFBD>ң<EFBFBD>";
cin.getline(key1,20);
//<2F><><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA>
for(iter=mp.begin();iter!=mp.end();iter++){
if(strcmp(iter->first,key1)==0){
cout<<iter->first<<"<EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>"<<"<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ֵΪ<EFBFBD><EFBFBD>"<<iter->second<<endl;
}
}
//<2F><>һ<EFBFBD><D2BB>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>ʽ
//findֻ<64><D6BB><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9BDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>cin<69><6E>
iter=mp.find("addr");
if(iter!=mp.end()){
cout<<iter->first<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>key<EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>"<<"<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>valueΪ<EFBFBD><EFBFBD>"<<iter->second<<endl;
cout<<"<EFBFBD><EFBFBD>ʼɾ<EFBFBD><EFBFBD>Ԫ<EFBFBD>أ<EFBFBD>"<<endl;
mp.erase(iter);
// break;
}
//<2F>ڶ<EFBFBD><DAB6>ַ<EFBFBD>ʽɾ<CABD><C9BE>
//<2F><><EFBFBD><EFBFBD>keyɾ<79><C9BE>Ԫ<EFBFBD><D4AA>
char drop_key[20];
//<2F><><EFBFBD><EFBFBD>valueɾ<65><C9BE>Ԫ<EFBFBD><D4AA>
char drop_value[20];
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>밴keyɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
cin.getline(drop_key,20);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>밴valueɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
cin.getline(drop_value,20);
for(iter=mp.begin();iter!=mp.end();iter++){
if(strcmp(iter->first,drop_key)==0){
cout<<iter->first<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>key<EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>"<<"<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>valueΪ<EFBFBD><EFBFBD>"<<iter->second<<endl;
cout<<"<EFBFBD><EFBFBD>ʼɾ<EFBFBD><EFBFBD>Ԫ<EFBFBD>أ<EFBFBD>"<<endl;
mp.erase(iter);
break;
}
if(strcmp(iter->second,drop_value)==0){
cout<<iter->second<<"value<EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>"<<"<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>keyΪ<EFBFBD><EFBFBD>"<<iter->first<<endl;
cout<<"<EFBFBD><EFBFBD>ʼɾ<EFBFBD><EFBFBD>Ԫ<EFBFBD>أ<EFBFBD>"<<endl;
mp.erase(iter);
break;
}
}
cout<<"------ɾ<><C9BE>Ԫ<EFBFBD><D4AA><EFBFBD>Ժ<EFBFBD>--------\n";
//ѭ<><D1AD>ȡ<EFBFBD><C8A1>Ԫ<EFBFBD><D4AA>
for(iter=mp.begin();iter!=mp.end();iter++){
cout<<iter->first<<"\t"<<iter->second<<endl;
}
system("pause");
return 0;
}

View File

@@ -0,0 +1,25 @@
#include<iostream>
using namespace std;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD>׳<EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void fun(int x){
try{
if (x==0)
throw "<EFBFBD>";
}catch(...){
cout<<"in fun"<<endl;
throw 1;
}
}
int main(int argc, char const *argv[])
{
try{
fun(0);
}catch(int n){
cout<<"in main"<<endl;
}
system("pause");
return 0;
}

View File

@@ -0,0 +1,93 @@
#include<iostream>
#include<cmath>
using namespace std;
/*
* ʱ<><CAB1><EFBFBD><EFBFBD>
*/
class Clock
{
private:
int Hour, Minute, Second;
public:
Clock(int h=0, int m=0, int s=0);
void ShowTime();
Clock& operator ++();
Clock operator ++(int);
};
/*
* ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><ECBAAF>
*/
Clock::Clock(int h,int m, int s)
{
if(h>=0 && h<24 && m>=0 && m<60 && s>=0 && s<60)
{
Hour = h;
Minute =m;
Second= s;
}
else
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"<<endl;
}
/*
* <20><>ʾʱ<CABE><CAB1>
*/
void Clock::ShowTime()
{
cout<<Hour<<":"<<Minute<<":"<<Second<<endl;
}
/*
* ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EBA3A8><EFBFBD><EFBFBD>ǰ׺++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
Clock& Clock::operator ++()
{
Second++;
if (Second >= 60)
{
Second = Second - 60;
Minute++;
if (Minute >= 60)
{
Minute = Minute - 60;
Hour++;
Hour = Hour % 24;
}
}
return *this;
}
/*
* ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EBA3A8><EFBFBD>غ<EFBFBD>׺++<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
Clock Clock::operator ++(int)
{
Clock old = *this;
++(*this);
return old;
}
/*
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
int main()
{
Clock myClock(23,59,59);
cout<<"<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾʱ<EFBFBD><EFBFBD>Ϊ:\t\t";
myClock.ShowTime();
cout<<"ִ<EFBFBD><EFBFBD>myClock++<2B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ϊ:\t";
//<2F><>ִ<EFBFBD><D6B4>ShowTime()<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>myClock=23:59:59<35><39>
//<2F><>ִ<EFBFBD><D6B4>myClock++<2B><><EFBFBD><EFBFBD>ʱmyClock=00:00:00
(myClock++).ShowTime();
cout<<"ִ<EFBFBD><EFBFBD>++myClock<63><6B><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ϊ:\t";
//<2F><>ִ<EFBFBD><D6B4>++myClock<63><6B><EFBFBD><EFBFBD>ʱmyClock=00:00:01
//<2F><>ִ<EFBFBD><D6B4>ShowTime()<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>myClock=00:00:01
(++myClock).ShowTime();
system("pause");
}

View File

@@ -0,0 +1,63 @@
#include<iostream>
using namespace std;
template<typename T,int MAXSIZE>
class Stack{
public:
Stack(){}
void init(){
top=-1;
}
bool isFull(){
if(top>=MAXSIZE-1)
return true;
else
return false;
}
bool isEmpty(){
if(top==-1)
return true;
else
return false;
}
void push(T e);
T pop();
private:
T elems[MAXSIZE];
int top;
};
template<typename T,int MAXSIZE> void Stack<T,MAXSIZE>::push(T e){
if(!isFull()){
elems[++top]=e;
}
else{
cout<<"ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>벻Ҫ<EFBFBD>ټ<EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>أ<EFBFBD>";
return;
}
}
template<typename T,int MAXSIZE> T Stack<T,MAXSIZE>::pop(){
if(!isEmpty()){
return elems[top--];
}
else{
cout<<"ջ<EFBFBD>ѿգ<EFBFBD><EFBFBD>벻Ҫ<EFBFBD>ٵ<EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD>أ<EFBFBD>";
return 0;
}
}
int main(int argc, char const *argv[])
{
Stack<int,10> s1;
s1.init();
int i;
for(i=1;i<11;i++)
s1.push(i);
for(i=1;i<11;i++) cout<<s1.pop()<<"\t";
cout<<endl;
system("pause");
return 0;
}

View File

@@ -0,0 +1,76 @@
#include<iostream>
#include<cstring>
using namespace std;
#define MAXSIZE 5
template<class T>
class Array{
public:
Array(){
for(int i=0;i<MAXSIZE;i++){
array[i]=0;
}
}
T &operator[](int i);
void Sort();
private:
T array[MAXSIZE];
};
template<class T> T& Array<T>::operator[](int i){
if(i<0||i>MAXSIZE-1){
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>Խ<EFBFBD>"<<endl;
exit(0);
}
return array[i];
}
template<class T> void Array<T>::Sort(){
int p,j;
for(int i=0;i<MAXSIZE-1;i++){
p=i;
for(j=i+1;j<MAXSIZE;j++){
if(array[p]<array[j])
p=j;
}
T t;
t=array[i];
array[i]=array[p];
array[p]=t;
}
}
template<> void Array<char *>::Sort(){
int p,j;
for(int i=0;i<MAXSIZE-1;i++){
p=i;
for(j=i+1;j<MAXSIZE;j++){
if(strcmp(array[p],array[j])<0)
p=j;
}
char* t=array[i];
array[i]=array[p];
array[p]=t;
}
}
int main(int argc, char const *argv[])
{
Array<int> a1;
Array<char*>b1;
a1[0]=1;a1[1]=23;a1[2]=6;
a1[3]=3; a1[4]=9;
a1.Sort();
for(int i=0;i<5;i++)
cout<<a1[i]<<"\t";
cout<<endl;
b1[0]="x1"; b1[1]="ya"; b1[2]="ad";
b1[3]="be"; b1[4]="bc";
b1.Sort();
for(int i=0;i<5;i++)
cout<<b1[i]<<"\t";
cout<<endl;
system("pause");
return 0;
}

View File

@@ -0,0 +1,90 @@
#include<iostream>
#include<cstring>
using namespace std;
class Employee{
public:
Employee(const char *name,const char *id){
strcpy(Name,name);
strcpy(Id,id);
}
char* getName(){
return Name;
}
char* getId(){
return Id;
}
void display(){
cout<<Name<<"\t"<<Id<<endl;
}
private:
char Name[20];
char Id[20];
};
class Manager:public Employee{
public:
//ֱ<>ӵ<EFBFBD><D3B5>ù<EFBFBD><C3B9><EFBFBD><ECB7BD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB7BD><EFBFBD>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB7BD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>б<EFBFBD><D0B1>д<EFBFBD><D0B4>ݲ<EFBFBD><DDB2><EFBFBD>
Manager(const char *name,const char *id,int week):Employee(name,id){
WeeklySalary=week*1000;
}
void display(){
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"<<getName()<<"\t"<<getId()<<"\t"<<WeeklySalary<<endl;
}
private:
int WeeklySalary;
};
class SaleWorker:public Employee{
public:
SaleWorker(const char*name,const char *id,int profit,int x):Employee(name,id){
workerMoney=baseMoney+x*0.05*profit;
}
void display(){
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>"<<getName()<<"\t"<<getId()<<"\t"<<workerMoney<<endl;
}
private:
float baseMoney=800.0;
float workerMoney;
};
class HourWorker:public Employee{
public:
HourWorker(const char*name,const char *id,int h):Employee(name,id){
TotalMoney=h*hourMoney;
}
void display(){
cout<<"Сʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"<<getName()<<"\t"<<getId()<<"\t"<<TotalMoney<<endl;
}
private:
float hourMoney=100.0;
float TotalMoney;
};
int main(int argc, char const *argv[])
{
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD>";
int week;
cin>>week;
Manager m("С<EFBFBD><EFBFBD>","11111111",week);
m.display();
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
int profit;
cin>>profit;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
int x;
cin>>x;
SaleWorker s("С<EFBFBD><EFBFBD>","222222",profit,x);
s.display();
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сʱ<EFBFBD><EFBFBD>";
int hour;
cin>>hour;
HourWorker h("С<EFBFBD><EFBFBD>","333333",hour);
h.display();
system("pause");
return 0;
}

View File

@@ -0,0 +1,73 @@
#include<iostream>
#include<fstream>
#include<cstring>
#include<vector>
using namespace std;
class Person{
public:
Person(){}
Person(char *name,char *id,int math,int chinese,int english){
strcpy(Name,name);
strcpy(Id,id);
Math=math;
Chinese=chinese;
English=english;
Sum=Math+Chinese+English;
}
void display(){
cout<<Name<<"\t"<<Id<<"\t"<<Math<<"\t"<<Chinese<<"\t"<<English<<"\t"<<Sum<<endl;
}
private:
char Name[20];
char Id[20];
int Math;
int Chinese;
int English;
int Sum;
};
int main(int argc, char const *argv[])
{
char ch;
char Name[20],Id[20];
int Math,Chinese,English;
fstream ioFile;
ioFile.open("d:/per.dat",ios::out|ios::app);
cout<<"---------<2D><><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ----------\n";
do{
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
cin>>Name;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD>ţ<EFBFBD>";
cin>>Id;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѧ<EFBFBD>ɼ<EFBFBD><EFBFBD><EFBFBD>";
cin>>Math;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><EFBFBD><EFBFBD>";
cin>>Chinese;
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӣ<EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD><EFBFBD><EFBFBD>";
cin>>English;
Person per(Name,Id,Math,Chinese,English);
ioFile.write((char *)&per,sizeof(per));
cout<<"<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Y/y) ";
cin>>ch;
}while(ch=='y'||ch=='Y');
ioFile.close();
ioFile.open("d://per.dat",ios::in);
Person p;
ioFile.read((char*)&p,sizeof(p));
vector<Person> v;
vector<Person>::iterator vt;
while(!ioFile.eof()){
v.push_back(p);
ioFile.read((char*)&p,sizeof(p));
}
ioFile.close();
cout<<"---------<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ-----------"<<endl;
for(vt=v.begin();vt!=v.end();vt++){
(*vt).display();
}
system("pause");
return 0;
}

View File

@@ -0,0 +1,39 @@
/*
<20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1>Sales<65><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>name<6D><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>id<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD>age<67><65>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ֶ<EFBFBD>Sales<65><73><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
#include<iostream.h>
#include<string.h>
class Sales{
private:
char name[10];
char id[18];
int age;
public:
Sales(char *Name,char *ID,int Age);
friend Sales &operator<<(ostream &os,Sales &s); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
friend Sales &operator>>(istream &is,Sales &s); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
};
Sales::Sales(char *Name,char *ID,int Age) {
strcpy(name,Name);
strcpy(id,ID);
age=Age;
}
Sales& operator<<(ostream &os,Sales &s) {
os<<s.name<<"\t"; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
os<<s.id<<"\t"; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4>
os<<s.age<<endl; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
return s;
}
Sales &operator>>(istream &is,Sales &s) {
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD>ţ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"<<endl; is>>s.name>>s.id>>s.age;
return s;
}
void main(){
Sales s1("<EFBFBD>ſ<EFBFBD>","214198012111711",40); //L1
cout<<s1; //L2
cout<<endl; //L3
cin>>s1; //L4
cout<<s1; //L5
}

View File

@@ -0,0 +1,41 @@
#include<iostream>
using namespace std;
#include<cstring>
class Sales{
private:
char name[10];
char id[18];
int age;
public:
Sales(char *Name,char *ID,int Age);
friend Sales &operator<<(ostream &os,Sales &s);
friend Sales &operator>>(istream &is,Sales &s);
};
Sales::Sales(char *Name,char *ID,int Age){
strcpy(name,Name);
strcpy(id,ID);
age=Age;
}
Sales &operator<<(ostream&os,Sales &s){
os<<s.name<<"\t"<<s.id<<"\t"<<s.age<<endl;
return s;
}
Sales &operator>>(istream&is,Sales &s){
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n";
is>>s.name>>s.id>>s.age;
}
int main(int argc, char const *argv[])
{
Sales s("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>","15611",26);
cout<<s;
cin>>s;
cout<<s;
system("pause");
return 0;
}

View File

@@ -0,0 +1,19 @@
#include<iostream>
#include<iomanip>
using namespace std;
int main(int argc, char const *argv[])
{
char s[20]="this is a string";
double digit=-36.96656;
cout<<setw(30)<<left<<setfill('*')<<s<<endl;
cout<<dec<<setprecision(4)<<digit<<endl;
cout<<dec<<15<<endl;
//setbase(int x)<29><><EFBFBD>ý<EFBFBD><C3BD>ƺ󣬺<C6BA><F3A3ACBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
cout<<setbase(10)<<15<<endl;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><32><CEBB>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>
float x=6.6937;
cout<<float(int(x*1000+0.5)/1000.0)<<endl;
system("pause");
return 0;
}

View File

@@ -0,0 +1,35 @@
/*
<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Circle<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Circle<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>int<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD>İ뾶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>double<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>float<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
/*
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>з<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD>Ҫת<EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD>type<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD>
*/
#include <iostream>
using namespace std;
class Circle{
private:
double x,y,r;
public:
Circle(double x1,double y1,double r1){x=x1;y=y1;r=r1; }
operator int(){return int(r);}
operator double(){return 2*3.14*r;}
operator float(){return (float)3.14*r*r;}
};
int main(){
Circle c(2.3,3.4,2.5);
int r=c; //<2F><><EFBFBD><EFBFBD>operator int()<29><><EFBFBD><EFBFBD>Circle<6C><65><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>int
double length=c; //<2F><><EFBFBD><EFBFBD>operator double()<29><>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>double
float area=c; //<2F><><EFBFBD><EFBFBD>operator float()<29><><EFBFBD><EFBFBD>Circle<6C><65><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>float
double len=(double) c; //<2F><>Cirlce<63><65><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>ǿ<EFBFBD><C7BF>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>double
cout<<r<<endl;
cout<<length<<endl;
cout<<len<<endl;
cout<<area<<endl;
system("pause");
}

View File

@@ -0,0 +1,25 @@
#include <iostream>
using namespace std;
class Time{
private:
int hh,mm,ss;
public:
Time(int h=0,int m=0,int s=0):hh(h),mm(m),ss(s){}
void operator()(int h,int m,int s) {
hh=h;
mm=m;
ss=s;
}
void ShowTime(){
cout<<hh<<":"<<mm<<":"<<ss<<endl;
}
};
int main(){
Time t1(12,10,11);
t1.ShowTime();
t1.operator()(23,20,34);
t1.ShowTime();
t1(10,10,10);
t1.ShowTime();
system("pause");
}