C++实验报告模版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科实验报告
课程名称:面向对象的程序设计实验项目:
实验地点:
专业班级:物联网1403
学号:
学生姓名:
指导教师:***
2015年5月10日
实验一C++基础
一、实验目的:
(1)熟悉Visual Studio2010或Visual C++的编程环境;
(2)掌握内联函数,带默认形参的函数,重载函数的定义和使用;理解函数的参数传递机制;
(3)理解命名空间的概念,掌握命名空间的使用;
(4)掌握引用的概念以及引用作为函数参数和函数返回值的使用方法;
(5)掌握内存的动态分配的概念和使用方法;
(6)掌握文件的打开、关闭以及读写操作。
二、实验要求
(1)按照实验内容编写程序,并调试程序,并给出测试数据和实验结果;
(2)整理上机步骤,总结经验和体会;
(3)完成实验报告和上交程序。
三、实验设备
PC机。
四、实验内容
(1)运行下面的程序,观察变量x、y的值。
#include
using namespace std;
void fnl(int z=5);
int x=1,y=2;
int main()
{
cout<<"Begin..."< cout<<"x="< cout<<"y="< cout<<"Evaluate x and y in main()…"< int x=10,y=20; cout<<"x="< cout<<"y="< cout<<"Step into fnl()…"< fnl(); fnl(10); cout<<"Back in main"< cout<<"x="< cout<<"y="< return 0; } void fnl(int z) { static int x=100; int y=200; cout <<"x="< cout<<"y="< x=x+y+z; } 结果为: (2)编写重载函数max1可分别求取2个整数、3个整数、2个双精度数、3个双精度数的最大值。 程序为: #include "stdafx.h" #include using namespace std; int add(int x,int y); int add(int x,int y,int z); double add(double x,double y); double add(double x,double y,double z); int main(int argc, char* argv[]) { int a,b,c; double x,y,z; cout<<"输入3个整数"< cin>>a>>b>>c; add(a,b); add(a,b,c); cout<<"输入3个浮点数"< add(x,y); add(x,y,z); return 0; } int add(int x,int y) { if(x>y) cout<<"max2="< else cout<<"max2="< return 0; } int add(int x,int y,int z) { int i; if(x>y) i=x; else i=y; if(i>z) cout<<"max3="< else cout<<"max3="< return 0; } double add(double x,double y) { if(x>y) cout<<"max2="< else cout<<"max2="< return 0; } double add(double x,double y,double z) { double i; if(x>y) i=x; else i=y; if(i>z) cout<<"max3="< else cout<<"max3="< return 0; } 结果为: (3)用new操作为一个包含10个整数的数组分配内存,输入若干个值到数组中,分别统计其中正数和负数的个数后再用delete操作释放内存。 程序为: #include "stdafx.h" #include using namespace std; int main(int argc, char* argv[]) { int *p,i,z,f; p=new int[10]; for(i=0;i<10;i++) cin>>p[i]; z=0; f=0; for(i=0;i<10;i++) { if(p[i]>0) z++; else f++; } cout<<"正数个数为:"< cout<<"负数个数为:"< delete []p; return 0; } 结果为: