南昌大学C高级语言程序设计实验报告.doc
《南昌大学C高级语言程序设计实验报告.doc》由会员分享,可在线阅读,更多相关《南昌大学C高级语言程序设计实验报告.doc(31页珍藏版)》请在冰豆网上搜索。
![南昌大学C高级语言程序设计实验报告.doc](https://file1.bdocx.com/fileroot1/2022-10/7/6ba9544e-347c-4179-a121-3f5ebadbdb74/6ba9544e-347c-4179-a121-3f5ebadbdb741.gif)
实验报告
实验课程:
学生姓名:
学号:
专业班级:
2016年9月1日
目录
实验一.C++的开发环境和简单程序的调试 2
实验二.函数的应用和类的基本构造 5
实验三.数组、指针、字符串 8
实验四.继承与派生 10
实验五.多态与模板 15
实验六.异常处理 21
实验七.输入输出 25
实验八.文件 28
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新实验日期:
2016-9-9实验成绩:
一、实验项目名称
实验一.C++的开发环境和简单程序的调试
二、实验目的
1.熟悉C++程序的风格,熟悉实验环境。
2.练习C++程序的输入、修改、编译、连接与运行的全过程
三、实验基本原理
C++程序设计语言
四、主要仪器设备及耗材
PC微机
DOS操作系统或Windows操作系统
C++程序设计语言开发环境
五、实验步骤(要求给出运行结果的屏幕截图,源程序电子打包提交)
1.分析下面程序的输出结果:
2.建立一个被称为sroot()的函数,返回其参数的二次根。
重载sroot()三次,让它分别返回整数、长整数与双精度数的二次根(为了实际计算二次根,可以使用标准库函数sqrt())。
3.编写C++风格的程序,解决百钱问题,将1元人民币兑换成1,2,5分的硬币,有多少种换法
六、实验数据及处理结果
1.分析下面程序的输出结果:
#include
int&f(int&i)
{i+=10;
returni;
}
voidmain()
{intk=0;
int&m=f(k);
cout<m=20;
cout<}
2.建立一个被称为sroot()的函数,返回其参数的二次根。
重载sroot()三次,让它分别返回整数、长整数与双精度数的二次根(为了实际计算二次根,可以使用标准库函数sqrt())。
#include
#include
usingnamespacestd;
intsroot(inti)
{return(int)sqrt(i);}
floatsroot(floatf)
{return(float)sqrt(f);}
doublesroot(doubled)
{return(double)sqrt(d);}
intmain()
{inti;
floatf;
doubled;
cout<<"输入整型参数i=";
cin>>i;
cout<<"输入长整参数f=";
cin>>f;
cout<<"输入双精度参数d=";
cin>>d;
cout<<"整型参数i的二次根="<cout<<"长整参数f的二次根="<cout<<"双精度参数d的二次根="<}
3.编写C++风格的程序,解决百钱问题,将1元人民币兑换成1,2,5分的硬币,有多少种换法?
#include
usingnamespacestd;
intmain()
{
inti,j,k;
intsum=0;
for(i=0;i<=100;i++)
for(j=0;j<=50;j++)
for(k=0;k<=20;k++)
{
if(i*1+2*j+5*k==100)
{
cout<<"一分:
"<
"<"< sum++;
}}
cout<<"总数为:
"<}
七、思考讨论题或体会或对改进实验的建议
八、参考资料
《C++语言程序设计学生用书》清华大学出版社郑莉等
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新实验日期:
2016-9-9实验成绩:
一、实验项目名称
实验二.函数的应用和类的基本构造
二、实验目的
1.熟悉C++程序类定义的一般形式。
2.熟悉C++程序对象的定义,对象的使用。
3.构造函数与析构函数的定义
三、实验基本原理
C++程序设计语言
四、主要仪器设备及耗材
PC微机
DOS操作系统或Windows操作系统
C++程序设计语言开发环境
五、实验步骤(要求运行结果的屏幕截图,源程序电子打包提交)
1.运行下面的程序,并说明运行结果为什么?
。
#include
classexample
{public:
example(intn)
{i=n;cout<<"构造函数\n";}
~example()
{cout<<"析构函数\n";}
intget_i()
{returni;}
private:
inti;
};
intsqr_it(exampleo)
{cout<<"调用sqr_it开始\n";
returno.get_i()*o.get_i();
}
voidmain()
{examplex(10);
cout<cout<cout<<"调用sqr_it结束\n";
}
2.建立类cylinder,cylinder的构造函数被传递了两个double值,分别表示圆柱体的半径和高度。
用类cylinder计算圆柱体的体积,并存储在一个double变量中。
在类cylinder中包含一个成员函数vol(),用来显示每个cylinder对象的体积。
六、实验数据及处理结果
1.运行下面的程序,并说明运行结果为什么?
。
#include
classexample
{public:
example(intn)
{i=n;cout<<"构造函数\n";}
~example()
{cout<<"析构函数\n";}
intget_i()
{returni;}
private:
inti;
};
intsqr_it(exampleo)
{cout<<"调用sqr_it开始\n";
returno.get_i()*o.get_i();
}
voidmain()
{examplex(10);
cout<cout<cout<<"调用sqr_it结束\n";
}
2.建立类cylinder,cylinder的构造函数被传递了两个double值,分别表示圆柱体的半径和高度。
用类cylinder计算圆柱体的体积,并存储在一个double变量中。
在类cylinder中包含一个成员函数vol(),用来显示每个cylinder对象的体积。
#include
usingnamespacestd;
classcylinder{
doublev;
public:
cylinder(doubler,doubleh)
{v=(3.14*r*r)*h;
cout<<"圆柱体的半径r为:
"<"< voidvol()
{cout<<"圆柱体的体积v是:
"<};
main()
{
doubler,h;
cout<<"输入圆柱体的半径r:
";
cin>>r;
cout<<"输入圆柱体的高度h:
";
cin>>h;
cylinderobj(r,h);
obj.vol();
}
七、思考讨论题或体会或对改进实验的建议
八、参考资料
《C++语言程序设计学生用书》清华大学出版社郑莉等
《高级语言C++程序设计试验指导》高等教育出版社周玉龙南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新实验日期:
2016-9-9实验成绩:
一、实验项目名称
实验三.数组、指针、字符串
二、实验目的
1.熟悉C++中数组、指针和字符串的特点和应用。
三、实验基本原理
C++程序设计语言
四、主要仪器设备及耗材
PC微机
DOS操作系统或Windows操作系统
C++程序设计语言开发环境
五、实验步骤(要求给出简单类图、运行结果的屏幕截图,源程序电子打包提交)
1.构建一个类book,其中含有两个私有数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1~5,将price初始化为qu的10倍。
显示每个对象的qu*price值。
2.通过对象指针访问对象数组,使程序以相反的顺序显示对象数组的qu*price值.
六、实验数据及处理结果
1.构建一个类book,其中含有两个私有数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1~5,将price初始化为qu的10倍。
显示每个对象的qu*price值。
#include
usingnamespacestd;
classbook{
intqu,price;
public:
book(intq)
{qu=q;price=10*q;}
intget_qu()
{returnqu;}
intget_price()
{returnprice;}
};
intmain()
{bookobj[5]={1,2,3,4,5};
for