文档详情

《面向对象程序设计》C实验报告.doc

发布:2018-10-06约3.13万字共55页下载文档
文本预览下载声明
《面向对象程序设计》 实验报告 学 院: 专 业: 班级学号: 姓 名: 学 期: 教 师: 实验一 C++基础练习 院(系): 课程名称:面向对象程序设计 教师签名: 班级 学号 实验室 姓名 实验成绩 所用软件 Word文档、VC++软件 实验目的和要求 1.掌握C++程序的基本格式与规范,学会编写简单的C++程序。 2.理解C++程序结构的特点。 3.熟悉C++程序基本的输入和输出操作。 4.掌握C++数据类型常量和变量以及修饰符的使用方法。 5.掌握函数定义、函数调用和函数说明的方法。 6.熟悉作用域运算符的功能和基本使用方法。 7.掌握C++内存的动态分配与释放方法。 8.理解引用的概念,掌握引用的使用方法。 实验内容和步骤 1. 调试如下的代码并回答问题。 #include iostream.h void main() { //First c++ program char name[10]; coutplease input your name:; cinname; coutwelcome nameendl; } (1)C++的注释和C有何不同? 答:C语言的注释有一种,用/*……….*/作为注释分界符号 C++除保留了这种注释方式之外,还提供了一种更有效的注释方式,该注释以“//”开始,到行尾结束。 (2)C++的输入和输出所使用的函数及其相应头文件与C有何不同? 答:在C中进行输入输出操作时,常使用函数scanf和printf。C++除了可以照常使用这两个函数进行输入输出外,还增加了标准输入流对象cin和标准输出流对象cout来进行输入和输出。Iostream是C++系统定义的一个头文件,在这个文件中声明了程序所需要的输入和输出操作的有关信息。在C语言中头文件中用“.h”作为后缀,如stdio.h、math.h等。 2. 单步调试如下的代码并回答问题。 #include iostream.h inline int f(int x) { return 2*x*x+4*x+5; } inline double f(double x) { return 2*x*x+4*x+5; } void main() { int x=5; double y=5.2; coutf(x)endl; coutf(y)endl; } (1)inline的含义和作用是什么? 答:含义:在函数说明前冠以关键字“inline”,该函数就被声明为内联函数,每当程序中出现对该函数的调用时C++编译器使用函数体中的代码插入到调用该函数的语句处,同时用实参取代形参。作用:主要是为了消除函数调用时的系统开销,以提高运行速度。 (2)C允许两个函数同名(函数重载)么,函数重载的作用是什么? 答:不允许,作用:方便使用函数,只要函数参数的类型不同,或者参数的个数不同,或者二者兼而有之,两个或者两个以上的函数可以使用相同的函数名。实现函数编译的多态性。 (3)单步调试(F10、F11),记录f(x)和f(y)会分别调用哪段代码,为什么? 答:f(x)会调用int f(int 5) f(y)会调用double f(double 5.2) 因为虽然两个函数名是一样的,形参类型和返回值类型不同,根据所给的实参类型如int型就调用int f(int 5)。 3. 单步调试如下程序并回答问题。 #include iostream.h int a[]={1,2,3,4,5,6,7,8,9,10}; int sum; void main() { int i; int sum=0; for(i=0;i10;i++) { if(a[i]%2!=0) sum=sum+a[i]; ::sum=::sum+a[i]; } cout sum of all is : ::sum; cout sum of odd is: sum; } (1)什么是局部变量和全局变量,其作用域如何界定? 答:全局变量:在函数外定义的变量,可以为本源文件的其他函数所公用,有效范围为从定义变量的位置开始到本源文件结束。局部变量:在一个函数内部定义的变量是内部
显示全部
相似文档