C++实验报告完整版浙江大学城市学院.docx

上传人:b****5 文档编号:8787704 上传时间:2023-05-15 格式:DOCX 页数:95 大小:117.63KB
下载 相关 举报
C++实验报告完整版浙江大学城市学院.docx_第1页
第1页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第2页
第2页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第3页
第3页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第4页
第4页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第5页
第5页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第6页
第6页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第7页
第7页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第8页
第8页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第9页
第9页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第10页
第10页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第11页
第11页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第12页
第12页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第13页
第13页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第14页
第14页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第15页
第15页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第16页
第16页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第17页
第17页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第18页
第18页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第19页
第19页 / 共95页
C++实验报告完整版浙江大学城市学院.docx_第20页
第20页 / 共95页
亲,该文档总共95页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C++实验报告完整版浙江大学城市学院.docx

《C++实验报告完整版浙江大学城市学院.docx》由会员分享,可在线阅读,更多相关《C++实验报告完整版浙江大学城市学院.docx(95页珍藏版)》请在冰点文库上搜索。

C++实验报告完整版浙江大学城市学院.docx

C++实验报告完整版浙江大学城市学院

C++程序设计报告

课程名称C++程序设计

姓名黄丽平

学号31202417

专业班级电子科学与技术1201

学期2013-2014-1

学分1分

指导教师(职称)刘泓(副教授)

··

次号

实验内容概要

1

实验1:

熟悉上机环境及C++基础实验

2

实验2:

C++文件组织与C++运算符的应用

3

实验3:

C++循环程序设计

4

实验4:

C++分支程序设计

5

实验5:

函数设计与应用

(1)

6

实验6:

函数设计与应用

(2)

7

实验7:

数组的应用

(1)

8

实验8:

数组的应用

(2)

9

实验9:

指针在数组中的应用

10

实验10:

指针与函数

11

实验11:

类与对象

(1)

12

实验12:

类与对象

(2)

13

实验13:

运算符重载

14

实验14:

类继承与多态性

15

实验15:

模板和异常处理

16

实验16:

I/O与文件操作

17

实验17:

可视化程序设计初步

说明:

以下为各个实验分实验目的和要求、实验内容、操作方法与实验步骤、程序运行结果与分析、讨论、心得。

实验1熟悉上机环境及C++基础实验

一、实验目的和要求

1.熟悉上机环境,了解VisualC++6.0集成开发环境、掌握源程序编辑、程序调试、查看变量、程序运行;

2.熟悉C++的程序结构,掌握main函数、保留字、变量及变量定义、输入与输出流等概念;

3.熟悉类与类对象的定义、类成员的调用。

二、实验内容

任务1:

程序调试

1、熟悉VisualC++开发环境

(1)从Windows的“开始”菜单,选择“程序”→“MicrosoftVisualStudio”→“MicrosoftVisualC++6.0”,用鼠标左键点击“MicrosoftVisualC++6.0”。

进入DeveloperStudio的应用程序集成开发环境。

(2)用鼠标左键点击“File”→“新建”命令,得到“新建”对话框,在“新建”对话框中点击“文件”标签,选择标签“C++SourceFile”,并且在右边“文件”文本框中输入文件名file1,点击命令按钮“确定”。

(3)在编辑区光标处开始输入源程序,输入源程序。

/*程序功能:

输入输出练习*/

#include

intmain()

{

cout<<"您好!

浙江大学欢迎您,愿您喜欢C++的输入输出。

";//表示输出一个字符串

cout<<2008;//打印一个整数

cout<<"\n";//换行

cout<<20.1;//打印一个实数

cout<

cout<<"Iam"<<20<<"yearsoldstudent.";//连续打印

charname[30];//变量的声明位置与C有什么区别吗?

intage;

cout<<"pleasegiveyourname:

";

cin>>name;//表示键盘输入字符串到变量name中

cout<<"pleasetellmehowoldareyou?

";

cin>>age;//表示键盘输入整型数到变量age中

cout<<"Yournameis"<

cout<<"youare"<

}

(4)点击菜单栏的菜单“编译”→“编译file1.cpp”,建立一个默认的工作区。

编译成功,产生一个目标文件:

file1.obj。

如果程序有错误,在输出窗口中会指出每一项的错误及产生错误的原因、所在行。

请操作(a)在程序中任何一行少一个“;”符号,有什么提示?

(b)删除intage;这一行,编译后有什么错误提示。

(6)点击菜单“编译”→“执行file1.exeCtr1+F5”,点击命令按钮“是(Y)”,将产生一个可执行文件file1.exe。

(7)编辑第二个C++源程序。

点击“文件”→“新建”,在“新建”对话框中选择“C++SourceFile”,在文件框中输入文件名file2。

(8)点击菜单的“文件”→“关闭工作区”,关闭前一题的工作空间,重新编译即可。

(9)打开已存在的文件,DeveloperStudio中一次只能打开一个工作空间。

工作空间的打开过程为:

“文件”→“打开工作区”,在对话框中选择要打开的工程(.dsw)文件。

问题:

1.C++中的注解有哪些?

2.应用输入输出流应包含什么库?

3.定义变量有什么含义?

4.常用变量有哪些基本类型?

2、C++程序的调试

编辑程序后存在一些错误是不可避免的,这些错误的发生有可能是:

编译错误,如语法、输入错误等;链接错误,如函数名写错或所调用的函数没有定义;运行错误等。

与位置有关的断点设置。

(1)最简单的是设置一般位置断点,只要把光标移到要设断点的位置,当然这一行必须包含一条有效语句的;然后按F9键(F9键为开关键),会看到在这一行的左边出现一个红色的圆点。

(2)表达式在满足一定条件的情况:

要设置这种断点需可单击“编辑”→“断点….”命令,这时Breakpoint对话框将会出现(或组合键Alt+F9键)。

选中Breakpoint对话框中的Location标签,使Location页面弹出,输入行号或单击condition按钮,弹出“断点条件”对话框,在Expression编辑框中写出逻辑表达式,如age==18或age>20,最后按OK返回。

3、控制程序的运行

(1)单击“编译”→“开始调试”→“去”命令,程序开始运行在Debug状态下(此时菜单“编译”改变为“Debug”),程序会由于断点而停顿下来,这时会看到有一个小箭头,它指向即将执行的代码。

(2)四条命令:

Stepover,stepInto,StepOut,RuntoCursor。

Stepover:

功能是运行当前箭头指向的代码(只运行一条代码)。

StepInto:

功能是如果当前箭头所指的代码是一个函数的调用,则用StepInto进入该函数进行单步执行。

StepOut:

功能是如当前箭头所指向的代码是在某一函数内,用它使程序运行至函数返回处。

RuntoCursor:

功能是使程序运行至光标所指的代码处。

任务2:

程序调试

在实验1的源程序基础上,作以下程序的调试,并回答相关问题。

(1)用单行注释符”//”注解预处理命令,编译程序有什么提示?

如果程序中使用函数fabs,应该增加什么样的预处理?

(2)把intmain()写成intMain(),编译程序有什么提示?

请回答在C++程序设计对大小写有什么要求?

(3)如果把语句cout<<2008;如改写为:

cout<<2008编译程序有什么提示?

请回答在C++程序设计对语句结束有什么要求?

(4)程序中的变量定义:

intage;如改写为:

intage_1;编译程序有什么提示?

如改写为:

int1_age;编译程序有什么提示?

如改写为:

intfor;编译程序有什么提示?

关于变量的取名你能总结出什么经验?

任务3:

程序设计

仿照任务1,应用cin、cout进行输入、输出的程序设计。

给出提示“请输入您的学院名”,然后您输入您所在的学院,接着输出提示“请输入您的姓名”,然后输入您的姓名,然后输出提示“请输入您的年龄”,输入您的年龄后,最后输出“欢迎来自?

学院的?

同学,您的年龄是?

岁”,其中?

为输入的值。

任务4:

程序调试

进入VisualC++集成环境,编辑下列源程序:

#include

classs

{

private:

intx,y;

public:

voids(inta,intb){x=a;y=b;}

intarea(){returnx*y;}

voidshow()

{

cout<<"面积:

"<

}

};

intmain()

{

inta,b;

cin>>a>>b;

sx(a,b);

x.show();

}

编译运行程序后写出程序的运行结果并回答下列问题:

(a)省略预处理行#include,会出现什么样的错误提示?

(b)程序中出现了哪些关键字?

(c)函数init、area、show功能分别是什么?

(d)在类中,如果private、public不写,会出现什么样的错误提示?

为什么?

(e)重写程序,把成员函数定义在类的外部,提示:

请参照下列类定义。

classs

{

private:

intx,y;

public:

voidinit(inta,intb);

intarea();

voidshow();

};

voids:

:

init(inta,intb)

{

x=a;

y=b;

}

ints:

:

area()

{

returnx*y;

}

voids:

:

show()

{

cout<<"面积:

"<

}

任务5:

程序设计

模仿任务4,设计一个立方体类,它有三个int型私有成员a、b、c,求出这个立方体的体积,然后输出。

提示:

类定义为:

classcub

{

public:

cub(intx,inty,intz){a=x;b=y;c=z;}

intVolume()

{

intz;

z=a*b*c;

returnz;

}

voidshow()

{

cout<<”长方体体积为:

”<

}

private:

inta,b,c;

};

参照任务4的main函数的编写。

任务6:

程序设计

首先在屏幕上输出以下菜单:

1.求函数值

2.计算方程的根

3.画简单图形

1.退出

请输入您的选择:

2

您的选择是:

2

其中前1个2是键盘输入的,第2个2是把输入的变量值输出。

三、操作方法与实验步骤

 

四、程序运行结果与分析

 

五、讨论、心得

实验2C++文件组织与C++运算符的应用

一、实验目的和要求

1.熟悉C++的多文件组织(1个C++程序,由多个文件构成);

2.掌握C++的常量与变量,掌握

(1)读入不同进位制常量,用dec、oct、hex等控制输出;

(2)各种算术、关系运算符的应用,可含数学函数;

3.熟悉类与类对象的定义、类成员的调用。

二、实验内容

任务1:

C++多文件程序调试

C++多文件组织、类对象与类成员的使用。

理解一个C++程序可以由一个或多个文件构成,一个文件可以由一个或多个函数构成。

下列程序是完成简单的函数调用,完成一些基本运算,程序的主要思想是掌握多文件系统的编译,此C++程序由五个文件构成。

(1)开始→程序→MicrosoftVisualStudio→MicrosoftVisualC++6.0→新建→文件→C++SourceFile→在文件对话框中输入文件名2-1-1,编辑2-1-1.cpp内容:

intadd(intx,inty)

{

returnx+y;

}

     保存并关闭此文件。

(2)文件→新建→文件→C/C++HeaderFile→在文件对话框中输入文件名2-1,编辑2-1.h内容:

#include

#include"2-1-1.cpp"

   保存并关闭此文件。

(3)文件→新建→文件→C++SourceFile→在文件对话框中输入文件名2-1,编辑2-1.cpp内容:

intmain()

{

inta,b;

cin>>a>>b;

intc=add(a,b);

cout<

}

(4)编译程序,有什么提示?

请思考什么原因?

(5)在文件2-1.cpp的第一行加入预处理命令:

#include"2-1.h"

(6)再次编译,思考一下程序为什么成功了?

注意:

编译时当前文件应是2-1.cpp

任务2:

多文件程序设计

(1)仿照任务1,其中主调函数的文件名为2-2.cpp,内容为:

#include"2-2.h"

intmain()

{

inta,b;

cin>>a>>b;

intc1=f1(a,b);

cout<

intc2=f2(a,b);

cout<

intc3=f3(a,b);

cout<

intc4=f4(a,b);

cout<'<y)<

}

voidprint()

{

gt();

}

};

intmain()

{

inta,b;

cin>>a>>b;

dataA(a,b);

A.print();

return0;

}

(1)请改写函数print,分别调用成员函数函数:

lt()、ge()、eq()、and()、or()分别用于关系运算(<、>=、==)、逻辑运算(&&、||)的操作,请在类中增加成员函数lt、ge、eq、and、or的定义,并在print函数中调用。

任务5:

程序设计

重新设计任务4,把类及成员函数的实现存放在文件test4.h中,把main函数存放在test4.cpp中,编辑程序并编译运行。

提示在文件test4.cpp中要有预处理命令#include”test4.h”

任务6:

程序设计

新建三个文件,其文件名分别为ex2-2.h、ex2-2-1.cpp、ex2-2-2.cpp,其中ex2-2-1.cpp文件定义一个main函数,定义一个类对象,从键盘输入数据,作为对象的参数。

在ex2-2.h中定义类,在ex2-2-1.cpp中定义类中所有的成员函数。

程序功能:

(1)定义三角形类,可计算三角形周长与面积。

(2)定义一个棱形类,输入棱形的两条对角线,类中可求得棱形的周长与面积。

三、操作方法与实验步骤

 

四、程序运行结果与分析

 

五、讨论与心得

实验3C++循环程序设计

一、实验目的和要求

1.了解各种循环语句的基本形式;

2.理解并掌握循环语句的构成方法;

3.理解for循环的三个表达式的含义及执行过程;

4.了解for语句的表达式缺省情况;

5.理解并掌握while、do~while、for的应用;

6.理解break与continue语句的差异。

二、实验内容

任务1:

程序调试

定义一个类,此类的功能是求n至m间的自然数的和。

程序设计代码如下:

#include

classAddn_m

{

private:

intn,m;

public:

Addn_m(intn1,intm2)

{

n=n1;m=m2;

}

intAdd();

voidprint()

{

cout<

}

};

intAddn_m:

:

Add()

{

intsum=0,i;

i=n;

while(i<=m)

{

sum=sum+i;

i++;

}

returnsum;

}

voidmain()

{

inta,b;

cin>>a>>b;

Addn_mA(a,b);

A.print();

}

(1)程序运行时,从键盘输入1100,请思考程序运行的结果;

(2)在程序段中:

while(i<=m)

{

sum=sum+i;

i++;

}

去掉大括号,编译程序,思考程序的运行结果;如果没有i++语句,程序会出现什么情况?

(3)请思考当程序运行时,如输入102,程序结果如何?

应如何修改程序才能得出正确结果;

(4)请思考成员函数Add能否用访问控制符private来限定。

任务2:

程序调试

#include

classFactorial

{

private:

intn;

public:

Factorial(inta){n=a;}

intmult();

voidprint()

{

cout<

="<

}

};

intFactorial:

:

mult()

{

for(inti=1,s=1;i<=n;i++)

s=s*i;

returns;

}

intmain()

{

inta;

cin>>a;

FactorialA(a);

A.print();

}

任务3:

程序设计

仿照任务2,定义一个求阶乘和的类,从键盘输入一个不大于10的整数n,求表达式的值sum=1!

+2!

+3!

+…+n!

任务4:

编写计算近拟公式:

e=1-1/1!

+1/2!

-1/3!

+1/4!

-1/5!

+……..的程序,并使其误差小于0.00001.

任务5:

程序设计

已知main函数定义:

intmain()

{

inta,b;

charch;

cin>>a>>b>>cn;

graphicsA(a,b,ch);

A.print();

}

如果程序在执行时输入:

34*

程序执行的结果为:

****

****

****

请设计程序并调试。

任务6:

程序设计

设计程序,在屏幕上输出如下图形。

*

**

***

****

*****

******

*******

******

*****

****

***

**

*

三、操作方法与实验步骤

 

四、程序运行结果与分析

 

五、讨论与心得

实验4C++分支程序设计

一、实验目的和要求

1.掌握分支结构的各种表达形式;

2.理解并掌握分支结构中条件的表示方法;

3.理解并掌握多分支选择结构的实现方法;

4.能应用选择结构解决实际问题。

二、实验内容

任务1:

程序设计

输入a、b,循环实现计算下列算式,当a、b中有一个为0时,退出循环。

a>0,b>0,计算

a>0,b<0,计算a2+b2值

a<0,b>0,计算a*eb的值

a<0,b<0,计算ab值

编写程序实现以上功能。

任务2:

程序调试

从键盘输入一数,如果该数大于0,求该数的平方根,否则输出“该数少于0”。

#include

#include

intmain()

{

doublex,y;

cout<<"请输入一数:

"<

cin>>x;

while(fabs(x)<1e-6)

{

if(x>0)

{

y=sqrt(x);

cout<

}

else

cout<<"该数少于0"<

cin>>x;

}

return0;

}

如果省略下列程序段中的大括号,程序能运行吗?

为什么?

if(x>0)

{

y=sqrt(x);

cout<

}

任务3:

程序设计

输入一行字符,分别统计出这行字符中英文字母、空格、数字和其它字符的个数。

提示:

while((ch=getchar())!

='\n')

if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')

Letters++;

elseif(ch>='0'&&ch<='9')

Digital++;

elseif(ch=='')

Space++;

else

Other++;

思考:

如果while中的表达式写成while(ch=getchar()!

='\n')或while((ch=getchar())!

='\0'),程序是否能达到预期效果?

为什么?

任务4:

程序设计

从键盘输入三个数,判断由这三个数能否够成一个三角形,如能并判定是等边三角形还是等腰三角形、直角三角形,还是其它三角形,当输入的三个数中有一个小于等于0时,程序结束。

 

任务5:

定义一个三角形的类,从键盘输入三个数,判断由这三个数能否够成一个三角形,如能并判定是等边三角形还是等腰三角形、直角三角形,还是其它三角形,当输入的三个数中有一个等于0时,程序结束。

 

任务6:

输入一个百分制成绩,要求输出成绩相应的等级(A:

90分以上,B:

80-89,C:

70-79,D:

60-69,E:

60分以下),要求用switch语句实现。

任务6:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2