c++实验.docx
《c++实验.docx》由会员分享,可在线阅读,更多相关《c++实验.docx(25页珍藏版)》请在冰点文库上搜索。
c++实验
实验题目
实验一熟悉VisualC++编程环境
实验室
9307
实验时间
2014年2月25日
实验类别
验证
同组人数
1
成绩
指导教师签字:
一、实验目的
1.掌握VisualC++6.0集成开发环境的使用:
进入和退出;菜单、工具栏的使用;用户窗口区的划分。
2.掌握结构化程序设计方法,重点学习C++的输入与输出。
二、实验内容
1.编程,求解一元二次方程ax2+bx+c=0的根。
2.求和:
s=a+aa+aaa+…+aa…a,其中a是数字,a和n由键盘输入。
**3.找出一个4列5行的二维数组的“鞍点”,即该位置上的元素在该行最大,在该列最小,也可能没有鞍点。
三、编程分析及运行结果
1.#include
#include
usingnamespacestd;
voidmain()
{
floata,b,c,x1,x2,d,e,f;
cout<<"输入a"<cin>>a;cout<<"输入b"<cin>>b;cout<<"输入c"<cin>>c;d=b*b-4*a*c;e=-b/(2*a);f=sqrt(d)/(2*a);x1=e+f;x2=e-f;if(a==0)cout<<"不是一元二次方程"<elseif(d>=0)cout<<"x1="<if(d<0)cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>a;
cout<<"输入b"<cin>>b;cout<<"输入c"<cin>>c;d=b*b-4*a*c;e=-b/(2*a);f=sqrt(d)/(2*a);x1=e+f;x2=e-f;if(a==0)cout<<"不是一元二次方程"<elseif(d>=0)cout<<"x1="<if(d<0)cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>b;
cout<<"输入c"<cin>>c;d=b*b-4*a*c;e=-b/(2*a);f=sqrt(d)/(2*a);x1=e+f;x2=e-f;if(a==0)cout<<"不是一元二次方程"<elseif(d>=0)cout<<"x1="<if(d<0)cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>c;
d=b*b-4*a*c;
e=-b/(2*a);
f=sqrt(d)/(2*a);
x1=e+f;
x2=e-f;
if(a==0)
cout<<"不是一元二次方程"<elseif(d>=0)cout<<"x1="<if(d<0)cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
elseif(d>=0)
cout<<"x1="<if(d<0)cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
if(d<0)
cout<<"无解"<}运行结果:2.#includeusingnamespacestd;voidmain(){intsum,a,i,n,s;cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
}
运行结果:
2.#include
intsum,a,i,n,s;
cout<<"输入a"<cin>>a;cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"输入n"<cin>>n;if(n==1)s=a;if(n==2)s=a+a*10+a;else{sum=a;s=0;for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>n;
if(n==1)
s=a;
if(n==2)
s=a+a*10+a;
else
sum=a;
s=0;
for(i=0;i{sum=sum*10+a;s=sum+s;}s=s+1;}cout<<"s="<}运行结果:四、解决方法及难点:五、实验体会: 实验题目实验二利用函数编程实验室9307实验时间2014年3月4日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。二、实验内容1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。三、编程分析及运行结果1.#includeusingnamespacestd;voidmain(){inti,a;cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
sum=sum*10+a;
s=sum+s;
s=s+1;
cout<<"s="<
运行结果:
四、解决方法及难点:
五、实验体会:
实验二利用函数编程
2014年3月4日
1.熟练掌握函数的定义及调用,参数的传递,形参和实参的关系,变量的存储类型、作用域,全局变量与局部变量的比较。
2.掌握函数的嵌套调用、递归调用,内联函数、重载函数、带默认参数函数的定义与使用。
1.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。
2.写一个函数验证歌德巴赫猜想,一个不小于6的偶数可以表示为两个素数之和。
3.编写一个程序,含有名字相同的两个函数,第一个函数返回一个整数数组的平均值,另一个函数返回一个浮点数组的平均值。
inti,a;
cout<<"输入a"<cin>>a;for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
for(i=2;i{if(a%i==0){cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
if(a%i==0)
cout<break;}}if(i>=a)cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
break;
if(i>=a)
cout<}运行结果:2.#includeusingnamespacestd;intstr(intx){intn,i;for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
intstr(intx)
intn,i;
for(i=2;iif(x%i==0){n=0;break;}if(i>=x)n=1;returnn;}voidmain(){inta,i,b,m,p=0;cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
if(x%i==0)
n=0;
break;}
if(i>=x)
n=1;
returnn;
inta,i,b,m,p=0;
cout<<"输入一个不小于6偶数a"<cin>>a;for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
for(i=2;i{if(str(i)==0)continue;else{b=a-i;m=str(b);if(m==1){p=1;cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
if(str(i)==0)
continue;
b=a-i;
m=str(b);
if(m==1)
p=1;
cout<<"猜想成立"<break;}}}if(p==0)cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
if(p==0)
cout<<"猜想不成立"<}运行结果:3.#includeusingnamespacestd;intave(inti,intj){return(i+j)/2;}floatave(floatx,floaty){return(x+y)/2.000;}voidmain(){inta,b;floatc,d;cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
3.#include
intave(inti,intj)
return(i+j)/2;
floatave(floatx,floaty)
return(x+y)/2.000;
inta,b;
floatc,d;
cout<<"输入整数a="<cin>>a;cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"输入整数b="<cin>>b;cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"输入浮点数c="<cin>>c;cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"输入浮点数d="<cin>>d;cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>d;
cout<<"整数"<cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"浮点数"<}运行结果:四、解决方法及难点五、实验体会 实验题目实验三指针与引用的编程实验室9307实验时间年月日实验类别验证同组人数成绩指导教师签字:一、实验目的1.掌握指针的概念,会定义和使用指针变量。2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。3.掌握引用的定义及其使用方法。4.注意指针和引用的区别。二、实验内容事先编好程序,上机调试运行之。1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。3.利用“引用形参”实现两个变量的值互换。三、编程分析及运行结果1.#include#includeusingnamespacestd;voidmain(){char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};char*p;inti,j,k;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(strcmp(a[k],a[j])>0)k=j;if(k!=j){p=a[i];a[i]=a[k];a[k]=p;}}}for(i=0;i<10;i++)cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
四、解决方法及难点
五、实验体会
实验三指针与引用的编程
年月日
1.掌握指针的概念,会定义和使用指针变量。
2.掌握指针与数组的关系,指针与函数的关系,指针与字符串的关系。
3.掌握引用的定义及其使用方法。
4.注意指针和引用的区别。
事先编好程序,上机调试运行之。
1.在主函数中输入10个等长的字符串,用另一函数对它们排序,然后在主函数输出这10个已排好的字符串,要求用指针编程。
2.编一程序,记录从键盘输入的字符串,计算字符串的长度,并用指针实现对字符串的逆向输出。
3.利用“引用形参”实现两个变量的值互换。
char*a[10]={"aa","bb","cc","dd","ee","ff","gg","qq","ww","kk"};
char*p;
inti,j,k;
for(i=0;i<9;i++)
k=i;
for(j=i+1;j<10;j++)
if(strcmp(a[k],a[j])>0)
k=j;
if(k!
=j)
p=a[i];a[i]=a[k];a[k]=p;}
for(i=0;i<10;i++)
cout<}运行结果:2.#includeusingnamespacestd;voidstr(chara[],intn){inttemp,i,j,m=(n-1)/2;for(i=0;i<=m;i++){j=n-i-1;temp=a[i];a[i]=a[j];a[j]=temp;}}voidmain(){chara[15];inti,n;cin.getline(a,14);for(i=0;a[i]!='\0';i++);n=i;str(a,n);for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
voidstr(chara[],intn)
inttemp,i,j,m=(n-1)/2;
for(i=0;i<=m;i++)
j=n-i-1;
temp=a[i];
a[i]=a[j];
a[j]=temp;
chara[15];
inti,n;
cin.getline(a,14);
for(i=0;a[i]!
='\0';i++);
n=i;
str(a,n);
for(i=0;icout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<}运行结果:3.#includeusingnamespacestd;voidstr(int*x,int*y){intteam;team=*x;*x=*y;*y=team;}voidmain(){int*a,*b,p,q;a=&p;b=&q;cout<<"请输入p=";cin>>p;cout<<"请输入q=";cin>>q;str(a,b);cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
voidstr(int*x,int*y)
intteam;
team=*x;
*x=*y;
*y=team;
int*a,*b,p,q;
a=&p;
b=&q;
cout<<"请输入p=";
cin>>p;
cout<<"请输入q=";
cin>>q;
str(a,b);
cout<<"p="<<*a<<""<<"q="<<*b<}运行结果:四、解决方法及难点五、实验体会 实验题目实验四类与对象的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。2.学习类与对象的声明。3.学习数据成员与成员函数的访问方式。4.初步掌握用类和对象编制基于对象的程序。二、实验内容1.修改一个类,注意其中的成员访问权限,进行对比。有以下程序:#includeclassTime{public:inthour;intminute;intsec;};voidmain(){Timet1;cin>>t1.hour;cin>>t1.minute;cin>>t1.sec;cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
实验四类与对象的编程
1.掌握类与对象的定义,类和类成员的概念及对象的使用方法。
2.学习类与对象的声明。
3.学习数据成员与成员函数的访问方式。
4.初步掌握用类和对象编制基于对象的程序。
1.修改一个类,注意其中的成员访问权限,进行对比。
有以下程序:
classTime
{public:
inthour;
intminute;
intsec;
};
{Timet1;
cin>>t1.hour;
cin>>t1.minute;
cin>>t1.sec;
cout<}改写程序,要求:1)将数据成员改为私有的;2)将输入和输出的功能改为由成员函数实现;3)在类体内定义成员函数。然后编译和运行程序。请分析什么成员应指定为公有的?什么成员应指定为私有的?什么函数最好放在类中定义?什么函数最好在类外定义?2.求3个长方体的体积,请编一个基于对象的程序。数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:1)由键盘分别输入3个长方体的长、宽、高;2)计算长方体的体积;3)输出3个长方体的体积。3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。分别给出如下的3个文件1)含类定义的头文件student.h//student.hclassStudent//类的定义{public:voiddisplay();//公有成员函数的声明private:intnum;charname[20];charsex;};2)包含成员函数定义的源文件//student.cpp#include#include“student.h”voidStudent::display()//在类外定义display成员函数{cout<<“num:”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
改写程序,要求:
1)将数据成员改为私有的;
2)将输入和输出的功能改为由成员函数实现;
3)在类体内定义成员函数。
然后编译和运行程序。
请分析什么成员应指定为公有的?
什么成员应指定为私有的?
什么函数最好放在类中定义?
什么函数最好在类外定义?
2.求3个长方体的体积,请编一个基于对象的程序。
数据成员包括length(长)、width(宽)、height(高),要求用成员函数实现以下功能:
1)由键盘分别输入3个长方体的长、宽、高;
2)计算长方体的体积;
3)输出3个长方体的体积。
3.实现类的定义,借助VC++的方法建立一个新的类,采用多文件的方法来存储程序文件。
分别给出如下的3个文件
1)含类定义的头文件student.h
//student.h
classStudent//类的定义
public:
voiddisplay();//公有成员函数的声明
private:
intnum;
charname[20];
charsex;
2)包含成员函数定义的源文件
//student.cpp
#include“student.h”
voidStudent:
:
display()//在类外定义display成员函数
{cout<<“num:
”<cout<<“name:”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<“name:
”<cout<<“sex:”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<“sex:
”<}3)包含主函数的源文件main.cpp为了组成一个完整的源程序,应当有包括主函数的文件://main.cpp#include#include“student.h”voidmain(){Studentstu;stu.display();}请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。三、编程分析及运行结果1.对外开放的成员指定为公有的。访问权限被限制的成员指定为私有的。函数定义比较长的在类外定义。函数定义比较较短的在类内定义。#includeusingnamespacestd;classPoint{private:inthour;intminute;intsec;public:voidSetpoint(intx,inty,intz){hour=x;minute=y;sec=z;}voidprint(){cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
3)包含主函数的源文件main.cpp
为了组成一个完整的源程序,应当有包括主函数的文件:
//main.cpp
{Studentstu;
stu.display();
请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value,上机调试并运行。
1.对外开放的成员指定为公有的。
访问权限被限制的成员指定为私有的。
函数定义比较长的在类外定义。
函数定义比较较短的在类内定义。
classPoint
voidSetpoint(intx,inty,intz)
hour=x;
minute=y;
sec=z;
voidprint()
cout<}};voidmain(){Pointpo;po.Setpoint(5,28,49);po.print();}运行结果:2.#includeusingnamespacestd;classTi{private:floatchang;floatkuan;floatgao;public:voidlength(){cin>>chang;}voidwidth(){cin>>kuan;}voidheigth(){cin>>gao;}voidprint(){cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
Pointpo;
po.Setpoint(5,28,49);
po.print();
classTi
floatchang;
floatkuan;
floatgao;
voidlength()
cin>>chang;
voidwidth()
cin>>kuan;
voidheigth()
cin>>gao;
cout<}};voidmain(){Tistd;cout<<"输入长=";std.length();cout<<"输入宽=";std.width();cout<<"输入高=";std.heigth();std.print();}运行结果:3.#includeusingnamespacestd;classStudent{public:voiddisplay();voidset_value(){cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
Tistd;
cout<<"输入长=";
std.length();
cout<<"输入宽=";
std.width();
cout<<"输入高=";
std.heigth();
std.print();
classStudent
voiddisplay();
voidset_value()
cout<<"学号"<cin>>num;cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>num;
cout<<"姓名"<cin>>name;cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>name;
cout<<"性别"<cin>>sex;}private:intnum;charname[20];charsex;};voidStudent::display(){cout<<"num:"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cin>>sex;
display()
cout<<"num:
"<cout<<"name:"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"name:
"<cout<<"sex:"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"sex:
"<}voidmain(){Studentstu;stu.set_value();stu.display();}运行结果:四、解决方法及难点五、实验体会实验题目实验五构造函数与析构函数的编程实验室9307实验时间年月日实验类别验证同组人数1成绩指导教师签字:一、实验目的1.进一步加深对类和对象的理解。2.掌握类的构造函数和析构函数的概念、意义和使用方法。3.掌握重载构造函数的含义和使用。4.编写一个较为复杂的类和对象的应用程序。二、实验内容1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。classRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};2.重载构造函数。修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。ClassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。三、编程分析及运行结果1.#include#includeclassRect{public:intArea_int();Rect(intl,intw);~Rect();private:intnLength;intnWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
Studentstu;
stu.set_value();
实验五构造函数与析构函数的编程
1.进一步加深对类和对象的理解。
2.掌握类的构造函数和析构函数的概念、意义和使用方法。
3.掌握重载构造函数的含义和使用。
4.编写一个较为复杂的类和对象的应用程序。
1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。
要求有构造函数、析构函数,完成赋值、显示、计算矩形的面积等接口,并编写main函数进行测试。
classRect
intArea_int();
Rect(intl,intw);
~Rect();
intnLength;
intnWidth;
2.重载构造函数。
修改上题,一种构造函数用整型变量记录矩形的长和宽,另一种构造函数用double型记录矩形的长和宽,然后完成成员函数及主函数。
ClassRect
doubleArea_double();
Rect(doublel,doublew);
doublemLength;
doublemWidth;
3.构造一个类countstr,要求用构造函数设置计数器count的初始值为0,成员函数countchar()不返回任何值,它要求用户输入一段文字,按Enter键后结束计算,用count记录输入的字符数,成员函数getchar()返回count的整数值。
Rect:
Rect(intl,intw)
nLength=l;
nWidth=w;
cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
~Rect()
cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}voidmain(){RectArea(10,5);cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
intRect:
Area_int()
intx;
x=nLength*nWidth;
returnx;
RectArea(10,5);
cout<<"s="<}运行结果:2.#include#includeclassRect{public:intArea_int();doubleArea_double();Rect(doublel,doublew);Rect(intl,intw);~Rect();private:intnLength;intnWidth;doublemLength;doublemWidth;};Rect::Rect(intl,intw){nLength=l;nWidth=w;cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"constructing…"<}Rect::Rect(doublel,doublew){mLength=l;mWidth=w;cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
Rect(doublel,doublew)
mLength=l;
mWidth=w;
cout<<"constructing…"<}Rect::~Rect(){cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
cout<<"destructing…"<}intRect::Area_int(){intx;x=nLength*nWidth;returnx;}doubleRect::Area_double(){doubley;y=mLength*mWidth;returny;}voidmain(){RectArea1(9,4);cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
doubleRect:
Area_double()
doubley;
y=mLength*mWidth;
returny;
RectArea1(9,4);
cout<<"a的面积="<RectArea2(2.2,1.1);cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
RectArea2(2.2,1.1);
cout<<"b的面积="<}运行结果:3.#includeclasscountstr{public:countstr(){count=0;}voidcountchar(){cout<<"请输入字符串";cin>>str;while(str[count]!='\0')count++;}intgetchar(){returncount;}private:intcount;charstr[200];};voidmain(){countstrs;s.countchar();cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
classcountstr
countstr()
count=0;
voidcountchar()
cout<<"请输入字符串";
cin>>str;
while(str[count]!
='\0')
count++;
intgetchar()
returncount;
intcount;
charstr[200];
countstrs;
s.countchar();
cout<<"thenumber="<}运行结果:四、解决方法及难点五、实验体会
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2