C++程序设计经典300例2of3

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.*****************************************
//类的多态实现
#include <iostream>
using namespace std;
class salary
{
public:
salary(){}
~salary(){}
virtual void pay(){}
private:
};
class member1:public salary
{
public:
member1(double a){_total=a;}
~member1(){}
void pay()
{
cout<<"每月给员工1的薪水为:"<<_total<<"元"<<endl;
}
private:
double _total;
};
class member2:public salary
{
public:
member2(double a){_total=a;}
~member2(){}
void pay()
{
cout<<"每月给员工2的薪水为:"<<_total<<"元"<<endl;
}
private:
double _total;
};
void main()
{
member1 m1(4000.0);
member2 m2(10000.0);
salary *sa1=&m1;
salary *sa2=&m2;
sa1->pay();
sa2->pay();
}
2********************************************* //实例113 动物对象进化(继承)
#include <iostream>
using namespace std;
class animal_ancestor
{
public:
animal_ancestor(){}
~animal_ancestor(){}
void respire()//呼吸
{
cout<<"可以呼吸"<<endl;
}
};
class ape:public animal_ancestor
{
public:
ape(){}
~ape(){}
void move()//行走
{
cout<<"可以行走"<<endl;
}
};
class human:public ape
{
public:
human(){}
~human(){}
void miss()
{
cout<<"可以想念某人"<<endl;
}
};
void main()
{
human _human;
cout<<"人类";
_human.respire();
_human.move();
_human.miss();
}
3.************************************************
//实例112 求圆的面积和周长
#include <iostream>
using namespace std;
#define Pi 3.14159265
class circle
{
public:
double area(double x)
{
return Pi*x*x;
}
double circumfer(double y)
{
return 2*Pi*y;
}
public:
double radius;
};
void main()
{
circle _circle;
cout<<"请输入圆的半径:";
cin>>_circle.radius;
cout<<"圆的面积为:"<<_circle.area(_circle.radius)<<endl;
cout<<"圆的周长为:"<<_circle.circumfer(_circle.radius)<<endl; }
4-**********************************************
/实例111 乡村生产总值(同类对象数据统计(ABC对象相加))#include <iostream>
using namespace std;
class Cun_product
{
public:
Cun_product(){veget_result=0;fruit_result=0;grain_result=0;}
Cun_product(double x,double y,double z)
{
veget_result=x;
fruit_result=y;
grain_result=z;
}
~Cun_product(){}
friend Cun_product operator+(Cun_product cun1,Cun_product cun2);//重载友元运算符函数
void output()
{
cout<<veget_result<<","<<fruit_result<<","<<grain_result<<endl;
}
private:
double veget_result;
double fruit_result;
double grain_result;
};
Cun_product operator+(Cun_product cun1,Cun_product cun2)
{
Cun_product add;
add.veget_result=cun1.veget_result+cun2.veget_result;
add.fruit_result=cun1.fruit_result+cun2.fruit_result;
add.grain_result=cun1.grain_result+cun2.grain_result;
return add;
}
void main()
{
Cun_product cun_A(1.2,3,4),cun_B(2.3,5,1),cun_C(1.4,3,2),cun;
cun=cun_A+cun_B+cun_C;
cout<<"ABC村总共的蔬菜、水果和稻谷产量分别为:";
cun.output();
}
5*****************************************************
//实例110 产量统计(计算A村各类农作物的产量)
#include <iostream>
using namespace std;
class Cun_A
{
public:
Cun_A(double x,double y,double z)
{
acer_veget=x;
acer_fruit=y;
acer_grain=z;
}
~Cun_A(){}
void SetPerProduct(double a,double b,double c)
{
output_per_acerV=a;
output_per_acerF=b;
output_per_acerG=c;
}
void veget()
{
double result=acer_veget*output_per_acerV;
cout<<"A村蔬菜的产量为:"<<result<<endl;
}
void fruit()
{
double result=acer_fruit*output_per_acerF;
cout<<"A村水果的产量为:"<<result<<endl;
}
void grain()
{
double result=acer_grain*output_per_acerG;
cout<<"A村稻谷的产量为:"<<result<<endl;
}
private:
double acer_veget;//蔬菜作物的占地
double output_per_acerV;//每亩地产蔬菜多少
double acer_fruit;//水果作物的占地
double output_per_acerF;//每亩地产水果多少
double acer_grain;//稻谷作物的占地
double output_per_acerG;//每亩地产稻谷多少
};
void main()
{
Cun_A A(1.2,2,3);
A.SetPerProduct(500,400,700);
A.veget();
A.fruit();
A.grain();
}
6.***************************************************** #include <iostream>
using namespace std;
void cal_num(double *a, int *b, int number)
{
for(int i=0;i<number;i++)
{
if(a[i]<60)//不及格
b[0]++;
else if(a[i]>=60 && a[i]<70)
b[1]++;
else if(a[i]>=70 && a[i]<80)
b[2]++;
else if(a[i]>=80 && a[i]<90)
b[3]++;
else//优秀
b[4]++;
}
}
void main()
{
double math_score[35];//班级有35个学生
int num[5]={0};//5个等级的人数
cout<<"请输入35个学生的成绩:"<<endl;
for(int i=0;i<35;i++)
cin>>math_score[i];
cal_num(math_score,num,35);
cout<<"<60分的人数:"<<num[0]<<endl;
cout<<"介于60~70分的人数:"<<num[1]<<endl;
cout<<"介于70~80分的人数:"<<num[2]<<endl;
cout<<"介于80~90分的人数:"<<num[3]<<endl;
cout<<">90分的人数:"<<num[4]<<endl;
}
7******************************************************** #include <iostream>
using namespace std;
struct ticket
{
char train_number[5];//车次
char train_name[50];//从哪儿到哪儿
int yingwo_num;//硬卧票数
float yingwo_cash;//硬卧钱
int yingzuo_num;//硬座票数
float yingzuo_cash;//硬座钱
};
ticket Ticket[5];//数据库目前只存5条项目
void init()
{
strcpy(Ticket[0].train_number, "T56");
strcpy(Ticket[0].train_name,"西安-北京西");
Ticket[0].yingwo_num=100;
Ticket[0].yingwo_cash=263.5;
Ticket[0].yingzuo_num=200;
Ticket[0].yingzuo_cash=148.5;
strcpy(Ticket[1].train_number, "K126");
strcpy(Ticket[1].train_name,"西安-天津");
Ticket[1].yingwo_num=60;
Ticket[1].yingwo_cash=289.5;
Ticket[1].yingzuo_num=100;
Ticket[1].yingzuo_cash=163.5;
strcpy(Ticket[2].train_number, "T166");
strcpy(Ticket[2].train_name,"西安-上海");
Ticket[2].yingwo_num=150;
Ticket[2].yingwo_cash=321.5;
Ticket[2].yingzuo_num=240;
Ticket[2].yingzuo_cash=180.5;
strcpy(Ticket[3].train_number, "T266");
strcpy(Ticket[3].train_name,"西安-广州");
Ticket[3].yingwo_num=50;
Ticket[3].yingwo_cash=414;
Ticket[3].yingzuo_num=40;
Ticket[3].yingzuo_cash=236;
strcpy(Ticket[4].train_number, "T114");
strcpy(Ticket[4].train_name,"西安-南京");
Ticket[4].yingwo_num=10;
Ticket[4].yingwo_cash=270.5;
Ticket[4].yingzuo_num=20;
Ticket[4].yingzuo_cash=152.5;
}
void query()
{
char checi[5];
bool flag=true;
bool whether=false;//是否有
while(flag==true)
{
cout<<"请输入要查询的车次:";
cin>>checi;
for(int i=0;i<5;i++)
{
if(strcmp(Ticket[i].train_number,checi)==0)
{
whether=true;
cout<<Ticket[i].train_number<<" "<<Ticket[i].train_name;
cout<<" "<<Ticket[i].yingwo_num<<" "<<Ticket[i].yingwo_cash;
cout<<" "<<Ticket[i].yingzuo_num<<" "<<Ticket[i].yingzuo_cash<<endl;
i=5;
}
else
whether=false;
}
if(whether==true)//有
{}
else
{cout<<"该车次在系统中没有相应信息,请检查后输入"<<endl;}
cout<<"是否继续查询?0-否,1-是";
int x;
cin>>x;
if(x==0)
{
flag=false;
cout<<"退出查询系统"<<endl;
}
else if(x==1)
{}
}
}
int main()
{
cout<<"------------------------火车票当日售卖查询系统---------------------"<<endl;
cout<<"现存火车票信息只有从西安发的列车,";
cout<<"目的地只有北京西、上海、天津、广州和南京。

"<<endl;
cout<<"请前往上述5个目的地的旅客进行查询"<<endl;
cout<<"车次-------始地-目的地-------硬卧剩票";
cout<<"------硬卧价钱------硬座剩票------硬座价钱"<<endl;
init();//初始化信息
query();//查询
return 0;
}
8**********************************************************
#include <iostream>
using namespace std;
void fun1()
{cout<<"功能1实现"<<endl;}
void fun2()
{cout<<"功能2实现"<<endl;}
void fun3()
{cout<<"功能3实现"<<endl;}
void function(int a)
{
switch(a)
{
case 1:
fun1();
break;
case 2:
fun2();
break;
case 3:
fun3();
break;
default:
break;
}
}
void main()
{
int choice;
cout<<"本实例实现最基本的互动式程序,"<<"\n";
cout<<"可实现的功能有3种:1-功能1,2-功能2,3-功能3,\n";
bool flag=true;
while(flag==true)
{
cout<<"请输入功能编号:"<<endl;
cin>>choice;
function(choice);
cout<<"是否继续?0-是,1-否";
int x;
cin>>x;
if(x==0)
{}
else if(x==1)
{
flag=false;
cout<<"退出成功"<<endl;
}
}
}
9*************************************************************
#include<iostream>
using namespace std;
int main(int argc,char **argv)
{
for(int i=0;i<argc;i++)
cout<<"Argument "<<i<<" is "<<argv[i]<<endl;
if(argc==5)
cout<<"一共有4个命令需要106.exe执行"<<endl;
else
cout<<"不是4个命令"<<endl;
return 0;
}
10-******************************************************
#include<iostream>
using namespace std;
int main(int argc,char **argv)
{
for(int i=0;i<argc;i++)
cout<<"Argument "<<i<<" is "<<argv[i]<<endl;
return 0;
}
11*************************************************************** #include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
void generate_lower()
{
char lower;
int lower_index;
lower_index=1+(int)(26.0*rand()/(RAND_MAX+1.0));
lower=char(lower_index+96);
cout<<lower;
}
void generate_upper()
{
char upper;
int upper_index;
upper_index=1+(int)(26.0*rand()/(RAND_MAX+1.0));
upper=char(64+upper_index);
cout<<upper;
}
void generate_number()
{
int number;
number=0+(int)(9.0*rand()/(RAND_MAX+0.0));
cout<<number;
}
int main()
{
srand((int)time(0));
int num;
int upper;
int lower;
int number;
while(1)
{
cout<<"请输入验证码的位数:";
cin>>num;
cout<<"在这"<<num<<"位验证码中,需要大写字母、小写字母、数字各几位,请输入";
cin>>upper>>lower>>number;
while(upper)
{
generate_upper();
upper--;
}
while(lower)
{
generate_lower();
lower--;
}
while(number)
{
generate_number();
number--;
}
cout<<endl<<"是否继续产生随机验证码?"<<endl;
cout<<"1.是2.否"<<endl;
int y;
cin>>y;
cout<<endl;
if(y==1)
{}
if(y==2)
{
cout<<"退出系统"<<endl;
break;
}
}
return 0;
}
12**************************************************************** #include <iostream>
using namespace std;
double jiecheng(int n)
{
if(n==0)//0的阶乘
return 1;
else
return n*jiecheng(n-1);
}
int main()
{
int m=100;
cout<<jiecheng(m)<<endl;
return 0;
}
13******************************************************
#include <iostream>
using namespace std;
void add()
{
cout<<"2+3="<<2+3<<endl;
}
void substract()
{
cout<<"2-3="<<2-3<<endl;
}
int add1()
{
cout<<"2+3="<<2+3<<endl;
return 0;
}
int sub1()
{
cout<<"2-3="<<2-3<<endl;
return 0;
}
void main()
{
atexit(add);
atexit(substract);
_onexit(add1);
_onexit(sub1);
cout<<"main中"<<endl;
}
14***************************************************** #include <iostream>
using namespace std;
int add(int a,int b)
{return a+b;}
int add(int a,int b,int c=10)
{return a+b+c;}
double add(double a,double b)
{return a+b;}
void main()
{
cout<<"2+3="<<add(2,3)<<endl;
cout<<"2+3+4="<<add(2,3,4)<<endl;
cout<<"2.2+3.3="<<add(2.2,3.3)<<endl;
}
15***************************************************** #include <iostream>
using namespace std;
class xingge//抽象类
{
public:
xingge(){}//构造函数
virtual void talk()=0;//纯虚函数
virtual void kind_hearted()=0;//纯虚函数
};
class child1:public xingge//子类child1
{
public:
child1(){}
void talk()
{cout<<"沉默寡言"<<endl;}
void kind_hearted()
{cout<<"热心肠"<<endl;}
};
class child2:public xingge//子类2
{
public:
child2(){}
void talk()
{cout<<"碎碎念"<<endl;}
void kind_hearted()
{cout<<"热心肠"<<endl;}
};
void main()
{
xingge *_xg;//抽象类指针
child1 _c1;//child1实例化
child2 _c2;//child2实例化
_xg=&_c1;//取址child1
cout<<"child1的性格:"<<endl;
_xg->talk();
_xg->kind_hearted();
_xg=&_c2;//取址child2
cout<<"child2的性格:"<<endl;
_xg->talk();
_xg->kind_hearted();
}
16****************************************************** #include <iostream>
using namespace std;
template<class T> void output(T a)//模板输出函数
{
cout<<a<<endl;
}
void main()
{
output(1);//输出整数变量
output(3.4);//输出浮点变量
}
17********************************************
#include <iostream>
using namespace std;
#define M 10
#define N 10
class Maze
{
public:
Maze();//构造函数
~Maze(){}//析构函数
void PrintMaze();//打印迷宫
void GetPos();//获取出入口位置
void SearchMaze();//获取迷宫路径
bool EvaluateMaze(int i,int j);//判断当前点是否可行
private:
int maze[M][N];//迷宫
int start_row;//入口行
int start_col;//入口列
int end_row;//出口行
int end_col;//出口列
bool succeed;//是否找到出口
};
Maze::Maze()
{
int copy[M][N]={{1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,1,0,1,0,1,0,0,1},
{1,0,0,1,0,1,1,1,0,1},
{1,1,0,1,0,1,1,0,0,0},
{1,0,0,0,0,0,1,0,0,1},
{1,1,1,1,1,1,1,0,1,1},
{1,1,0,1,0,1,1,0,0,1},
{1,0,0,0,0,0,1,1,0,1},
{1,1,1,1,1,1,1,1,1,1}};
memcpy(maze,copy,sizeof(maze));//迷宫初始化,0为可行,1为不可行succeed=false;//初始化为没有
}
void Maze::PrintMaze()
{
cout<<"显示迷宫10*10:"<<endl;
for(int i=0;i<M;i++)//行
{
for(int j=0;j<N;j++)//列
{
if(maze[i][j]==1)//不可行
cout<<"1";
else//可行
cout<<"0";
}
cout<<endl;//下一行
}
}
void Maze::GetPos()
{
cout<<"请输入迷宫入口行:";
cin>>start_row;
cout<<"请输入迷宫入口列:";
cin>>start_col;
cout<<"请输入迷宫出口行:";
cin>>end_row;
cout<<"请输入迷宫出口列:";
cin>>end_col;
}
void Maze::SearchMaze()
{
if(EvaluateMaze(start_row,start_col)==false)//没有找到出口cout<<endl<<"没有找到出口\n";
else//找到
{
cout<<endl<<"显示路径:"<<endl;
for(int i=0;i<M;i++)//行
{
for(int j=0;j<N;j++)//列
{
if(maze[i][j]==1)//打印不可通行位置
cout<<"1";
else if(maze[i][j]==2)//打印路径
cout<<"*";
else//可通行的但不是路径为空格
cout<<" ";
}
cout<<endl;
18***********************************************
#include "matrix.h"
void main()
{
int n,m;//行列
int *data;//矩阵内存
cout<<"请输入矩阵的行数:";
cin>>n;//行
cout<<"请输入矩阵的列数:";
cin>>m;//列
data = new int[n*m]; //申请内存
cout<<"请初始化"<<n<<"行"<<m<<"列矩阵元素"<<endl;
for (int i=0; i<n; i++)
{
for (int j=0; j<m; j++)
cin>>data[i*m+j]; //初始化
}
CMatrix m1(n,m,data);//声明类对象1
CMatrix m2(m1);//声明类对象2
cout<<"使用拷贝构造函数后,m2对象的矩阵为"<<endl;
m2.output();//输出
}
19************************************************** #include <iostream>
using namespace std;
class A
{
private:
int num;//成员变量
public:
A(int num)//构造函数
{
num=num;
//this->num=num;//初始化
}
void output()
{
cout<<"私有成员变量num="<<num<<endl;
}
};
{
A a(10);//定义类对象
a.output();//输出
}
20************************************************** #include <iostream>
using namespace std;
class Line
{
private:
int x1,y1,x2,y2;
public:
Line();//默认构造函数
Line(int a=0,int b=0,int c=0,int d=0);//带参数的构造函数
void printPoint();//打印两点坐标
double getDis();//计算两点距离
};
inline Line::Line(int a,int b,int c,int d)//初始化点
{
x1=a;
y1=b;
x2=c;
y2=d;
}
inline void Line::printPoint()
{
cout<<"A:("<<x1<<","<<y1<<")"<<endl;
cout<<"B:("<<x2<<","<<y2<<")"<<endl;
}
inline double Line::getDis()
{
double dis;
dis=sqrt(double(((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))));
return dis;
}
void main()
{
Line line(10,68,-5,6);
line.printPoint();
cout<<"两点距离:"<<line.getDis()<<endl;
}
21.***************************************************
#include <sys/timeb.h>
#include <time.h>
#include <iostream>
using namespace std;
class TIME
{
private:
double timeM;//总时间,换算为毫秒
int time_H;//时
int time_M;//分
int time_S;//秒
double millisecond;//毫秒
public:
void cal();//计算当前时间
double getSystime();//获取总时间
int getH();//获取时
int getM();//获取分
int getS();//获取秒
};
void TIME::cal()
{
struct _timeb timebuffer;//时间缓冲变量
char *timeline;
unsigned short millitml;
char temp_H[2];//字符变换量
char temp_M[2];
char temp_S[2];
_ftime(&timebuffer);//获取缓冲量
timeline = ctime(&(timebuffer.time));//转换为char*型
millitml = litm;//获取毫秒值
millisecond = (double)millitml/1000;//变换为真正的毫秒
for(int i = 0; i < 2; i++)
{
temp_H[i] = timeline[i+11];//从第11个字节开始为时的字符值,下同}
for(int j = 0; j < 2; j++)
{
temp_M[j] = timeline[j+14];//分的字符值
}
for(int k = 0; k < 2; k++)
{
temp_S[k] = timeline[k+17];//秒的字符值
}
time_H = atoi(temp_H);//时变换为整型
time_M = atoi(temp_M);//分变换为整型
time_S = atoi(temp_S);//秒变换为整型
timeM = double(time_H) * 3600 + double(time_M) * 60 + double(time_S) + millisecond;//计算总时间
}
double TIME::getSystime()
{
return timeM;//返回总时间
}
int TIME::getH()
{
return time_H;//返回时
}
int TIME::getM()
22*********************************************************
#include <iostream>
using namespace std;
class Apple
{
private:
static int apples;//静态成员变量,表示苹果个数
int apple;//非静态变量
public:
Apple(){apple=5;}//构造函数
void setApples(int a,int b)//设置苹果个数
{
apples=a;//静态
apple=b;//非静态
}
static int getApples()//获取静态苹果个数
{
return apples;//返回苹果数目
}
int getApple()//获取非静态变量值
{
return apple;
}
};
int Apple::apples=10;/*初始化静态变量*/
void main()
{
cout<<"未定义Apple类对象前,其静态成员apples="<<Apple::getApples()<<endl;
Apple a,b;//两个对象
cout<<"未赋值前,两个对象的各自变量值如下:"<<endl;
cout<<"a.apples="<<a.getApples();
cout<<"\na.apple="<<a.getApple()<<endl;
cout<<"b.apples="<<b.getApples();
cout<<"\nb.apple="<<b.getApple()<<endl;
a.setApples(23,50);//对象a赋值
cout<<"赋值后,两个对象的各自变量值如下:"<<endl;
cout<<"a.apples="<<a.getApples();
cout<<"\na.apple="<<a.getApple()<<endl;
cout<<"b.apples="<<b.getApples();
cout<<"\nb.apple="<<b.getApple()<<endl;
}
23********************************************************
//实例121 判断一个矩形是否成立
#include <iostream>
using namespace std;
struct zuobiao
{
double x;//坐标x
double y;//坐标y
};
class Quadrilateral
{
public:
Quadrilateral(zuobiao zb[])//带参数构造函数
{
zhijiao=0;//初始为没有直角
for(int j=0;j<4;j++)
{
m_zb[j].x=zb[j].x;
m_zb[j].y=zb[j].y;
}
}
~Quadrilateral(){}
bool Is_rectangle()
{
int k=0;
for(int i=1;i<4;i++)
{
if(i==3)//返回到起始那个点
{
k=0;
}
else
{
k=i+1;//
}
if(((m_zb[i].x-m_zb[k].x)*(m_zb[i].x-m_zb[i-1].x)+(m_zb[i].y-m_zb[k].y)*(m_zb[i]. y-m_zb[i-1].y))==0)//垂直
{
zhijiao++;
}
}
if(zhijiao==3)
return true;
else
return false;
}
private:
zuobiao m_zb[4];
int zhijiao;
};
void main()
{
zuobiao _zb[4];//4个点坐标
cout<<"请依次输入任意4个点的x,y坐标,以空格隔开:";
for(int i=0;i<4;i++)
{
cin>>_zb[i].x>>_zb[i].y;
}
Quadrilateral m_qu(_zb);
if(m_qu.Is_rectangle())
cout<<"该4个点组成矩形"<<endl;
else
cout<<"该4个点不能组成矩形"<<endl;
}
24**************************************************************
#include <iostream>
using namespace std;
class vocation
{
public:
vocation(){}//默认构造函数
vocation(double x,double y,double z);//带参数构造函数~vocation(){}//析构函数
void Setdinner(double a);//设置吃饭时间
double Getdinner();//接口1(获取吃饭时间)
void Setsleep(double a);
double Getsleep();//接口2(获取睡觉时间)
void Setplay(double a);//设置打豆豆时间
double Getplay();//接口3(获取打豆豆时间)private:
double _dinner;//吃饭时间
double _sleep;//睡觉时间
double _play;//打豆豆时间
};
vocation::vocation(double x,double y,double z)
{
_dinner=x;
_sleep=y;
_play=z;//初始化
}
void vocation::Setdinner(double a)
{
_dinner=a;
}
double vocation::Getdinner()
{
return _dinner;
}
void vocation::Setsleep(double a)
{
_sleep=a;
}
double vocation::Getsleep()
{
return _sleep;
}
void vocation::Setplay(double a)
{
_play=a;
}
double vocation::Getplay()
{
return _play;
}
void main()
{
double a,b,c;//时间
vocation va(5.6,8.0,3.0);
cout<<"前一天您吃饭、睡觉、打豆豆所花时间分别为:";
cout<<va.Getdinner()<<" "<<va.Getsleep()<<" "<<va.Getplay()<<endl;
cout<<"请按下面提示输入今天花费于上述3项的时间:"<<endl;
cout<<"吃饭:";
cin>>a;
cout<<"睡觉:";
cin>>b;
cout<<"打豆豆:";
cin>>c;
if((a+b+c)>24)//大于一天
cout<<"人才啊,一天当"<<a+b+c<<"小时用"<<endl;
else
{
if(a>4.5)//大于吃饭限值
cout<<"真是个饭桶!"<<endl;
va.Setdinner(a);//设置吃饭
if(b>12)//大于睡觉限值
cout<<"原来您也是睡神一个啊,握爪"<<endl;
va.Setsleep(b);//设置睡觉
if(c>6)//大于打豆豆限值
cout<<"亲,打这么长时间,手不疼吗?"<<endl;
va.Setplay(c);//设置打豆豆
}
}
25******************************************************
#include <iostream>
using namespace std;
class Point_And_Rectangle
{
public:
Point_And_Rectangle(float x,float y)//构造函数
{
length=x;//长度
width=y;//宽度
}
void init()
{
cout<<"矩阵长:"<<length<<",宽为:"<<width<<endl;
cout<<"请输入被测点的X坐标:";
cin>>X;
cout<<"请输入被测点的Y坐标:";
cin>>Y;
cout<<endl;
}
void output()
{
if(PointInRectangle()==false)//矩形外
cout<<"被测点在矩形外\n";
else//内
cout<<"被测点在矩形内\n";
}
bool PointInRectangle()
{
if(X<0 || X>length || Y<0 || Y> width)//在矩形外
return false;
else//矩形内
return true;
}
private:
float length;//长度
float width;//宽度
float X;//被测点X坐标值
float Y;//被测点Y坐标值
};
void main()
{
int goon;//是否继续
Point_And_Rectangle m(10,20.5);
do
{
m.init();//初始化
m.output();//输出结果
cout<<"是否继续?0-否,1-是"<<endl;
cin>>goon;
}while(goon==1);
}
26********************************************************** #include <iostream>
#include <string>
using namespace std;
struct stu_info//学生信息
{
string name;//姓名
int sex;//性别,0-女,1-男
int age;//年龄
string hometown;//籍贯
string mobile_number;//手机号
int major;//专业
int class_num;//班级号
};
class student
{
public:
student();//构造函数
void Print();//打印学院情况
void Input();//输入信息
bool Certain();//该条信息是否已存在
void Register();//登记信息
private:
stu_info _stu[100];//系统只能包括100人的信息
stu_info temp;//临时信息
int num;//总共几个人
};
student::student()
{
num=0;//初始只有0个人
}
void student::Print()//打印信息
{
cout<<"本系统只登记电子信息学院的学生信息"<<endl;
cout<<"学院下的专业分别为:"<<endl;
cout<<" 0-信号与信息处理"<<endl;
cout<<" 1-通信原理"<<endl;
cout<<" 2-电路系统"<<endl;
cout<<"每个专业下分别设有2个班,分别为00和01"<<endl; }
void student::Input()//输入信息
{
cout<<"请按照下面提示,在右面输入信息:"<<endl;
cout<<"姓名:"; cin>>;
cout<<"性别:"; cin>>temp.sex;
cout<<"年龄:"; cin>>temp.age;
cout<<"籍贯:"; cin>>temp.hometown;
cout<<"手机号:"; cin>>temp.mobile_number;
cout<<"专业编号:"; cin>>temp.major;//输入专业
cout<<"班级编号:"; cin>>temp.class_num;//输入班级号
}
void student::Register()//登记信息
{
if(Certain()==true)//当前信息还没有
{
if(num>99)
cout<<"登记系统已满,下午再来,谢谢"<<endl;
else
{
_stu[num]=temp;//赋值
cout<<"第"<<num+1<<"条信息成功登记"<<endl;
}
num++;//人数加1
}
else
cout<<"您已经登记过,无需重复"<<endl;
}
bool student::Certain()//是否
{
for(int i=0;i<num;i++)//与所有有效信息比较
{
if(_stu[i].age==temp.age && _stu[i].class_num==temp.class_num && _stu[i].hometown==temp.hometown
&& _stu[i].major==temp.major
&& _stu[i].mobile_number==temp.mobile_number
&& _stu[i].name== && _stu[i].sex==temp.sex)//已存在
return false;
}
return true;
}
void main()
{
student a;//学生类对象
int ch;//选择
a.Print();//打印注意事项
do
{
a.Input();//输入信息
a.Register();//登记
cout<<"继续输入吗:0-是,1-否"<<endl;
cin>>ch;
}while(ch==0);
}
27*************************************************
#include <iostream>
using namespace std;
class memory
{
public:
memory(int length)
{
_length=length;
memo=new int[_length];//申请一维内存
for(int i=0;i<_length;i++)
memo[i]=0;//初始化
cout<<"内存分配成功!"<<endl;
}
~memory()
{
delete []memo;//释放内存
if(memo!=NULL)
memo=NULL;//释放指针
cout<<"内存释放成功!"<<endl;
}
void output()//输出初始值
{
for(int i=0;i<_length;i++)
cout<<memo[i]<<" ";
cout<<endl;
}
private:
int *memo;//一维内存
int _length;//内存长度
};
void main()
{
memory _mem(20);//申请内存长度为20
_mem.output();//调用输出函数
}
28******************************************************* //实例116 错误的模糊引用(类继承问题)
#include <iostream>
using namespace std;。

相关文档
最新文档