C程序设计实践环节考核规定.docx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C程序设计实践环节考核规定.docx》由用户(hhsmd)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 实践 环节 考核 规定
- 资源描述:
-
1、C+程序设计实践环节考核规定1. C+程序设计实践环节考核大纲一、考核类型上机考核二、目的要求C+语言程序设计是计算机科学和应用专业、信息管理专业(本科)的必修课,是培养学生实践动手能力的一门重要专业课程,是为满足计算机应用领域和计算机应用人才的需要而设置的。C+语言是一种面向对象的编程语言,它集抽象性、封装性、继承性和多态性等面向对象特征于一体,可以帮助人们开发出具有较高数据抽象程度,能够充分体现信息隐蔽、软件重用、易修改、易扩充等特性的大型软件。C+程序设计的实验采用Microsoft Visual C+6.0。通过上机实践,加深对课程的理解,更好地掌握C+面向对象程序设计的基本方法,增强
2、实际动手能力。三、考核环境 硬件:586以上的PC系列机,主频大于166MHz,内存大于256MB,硬盘空间大于500MB。 软件:中文Windows 2000/NT/XP操作系统,Microsoft Visual C+6.0。四、考核方法 考生抽取试题后,在45分钟内,完成试卷中所要求的全部内容,并作必要的记录。考核结束后,考生上交试卷。上机考核成绩由现场老师初评,经考点负责人审核签名,报主考院校核定。成绩分合格、不合格两类。五、考核内容l 掌握Microsoft Visual C+ 6.0集成开发环境的使用, 新建工程,编辑含有类的C+源文件,存取文件,编译文件,调试程序和运行程序。l 模
3、板。包括:函数模板、类模板,练习编制函数模板和类模板。l 熟悉面向对象编程思想和多文件编程规范。l 掌握公有继承的赋值兼容性规则、构造函数、复制构造函数和析构函数的设计方法。l 练习使用向量解决实际问题。l 熟悉各类运算符的重载。l 熟悉使用文件的基本方法。l 熟悉继承和包含以及虚函数的多态性。六、参考书目1.刘振安主编,C+程序设计,机械工业出版社2008年2. 薛万鹏 译,C+程序设计教程,机械工业出版社,2005年 3. 钱能,C+程序设计教程,清华大学出版社,2006年2 C+程序设计上机考核指导C+语言程序设计是一门实践性很强的课程,必须通过反复上机练习,深入领悟面向对象程序设计的基
4、本思想。通过实验教学加深理解和巩固课堂和教材所学的内容,提高实践动手能力。实验一 Microsoft Visual C+ 6.0集成开发环境的使用一、实验目的和要求了解并初步掌握Microsoft Visual C+ 6.0集成开发环境的使用。二、实验内容(1) 创建项目(Project)l 启动VC+ 6.0。l 从主菜单中选择【文件】|【新建】命令,打开【新建】对话框。单击【工程】标签,从项目列表中单击Win32 Console Application 选项;在【工程】文本框中输入项目的名字,如“hello”,系统将自动为用户的项目分配一个默认的目录. l 如果是Visual C+ 6.0
5、,系统将显示一个询问项目类型的程序向导,选择an emptyproject 选项,单击【完成】按钮,显示新建项目信息;单击【确定】按钮结束。(2) 添加程序代码l 从主菜单中选择【文件】|【新建】命令,打开【新建】对话框。l 在【新建】对话框中打开【文件】选项卡,单击+ Source File 选项,建立源文件;选中“添加工程”复选框;在右边的“文件”文本框中为文件指定一个名字,如“hello”。l 编辑源文件。在【工作区】窗口中单击FileView 标签,选择并打开该窗口中SourceFiles 下的文件, 如hello.cpp,在打开的【文件】窗口中输入源程序。l 在项目文件中增加文件。若
6、在已有的项目文件中增加一个新文件,如C+源文件“*.cpp”或头文件“*.h”需要执行以下操作。打开相应的项目文件,选择【新建】|【文件】命令,选择C+编辑栏Source 选项,可增加C+源文件;或选择C/C+ Head File 选项增加C/C+头文件。在【文件】文本框输入文件名,单击【确定】按钮。(3) 编译源文件先激活相应的源程序窗口,选择【编译】|【编译】命令或按Ctrl+F7 键来编译源文件,形成目标文件(生成.obj 文件),若该项目中有多个源文件,可依次激活并编译。(4) 链接目标程序,形成可执行文件选择【编译】|【链接】命令或按快捷键F7 链接程序,并形成可执行文件。此命令也可
7、直接将项目中的所有源文件进行编译并链接形成可执行文件,使编译和链接的过程结合在一起。(5) 运行程序选择【编译】|【执行】命令或使用快捷键Ctrl+F5 运行该程序,将显示一个类似于DOS的窗口,在窗口中第一行输出 “hello,world!”,第二行输出“Press any key to continue”,提示用户按任意键回到开发环境。三、程序练习定义一个关于日期的类,然后声明对象,判断该日期是否为闰年并输出。本题练习的是定义类和使用类的方法。源程序代码:#include iostream using namespace std;class TDatepublic:void SetDate
8、(int y,int m,int d);int isLeapYear();void Print();private:int year,month,day;void TDate:SetDate(int y,int m,int d)year=y;month=m;day=d;int TDate:isLeapYear()return (year%4=0&year%100!=0) | (year%400=0);void TDate:Print()coutyear.month.dayendl;void main()TDate date1,date2;date1.SetDate(2004,5,4);date
9、2.SetDate(2005,4,9);int leap=date1.isLeapYear();date1.Print();if (leap=1)cout是闰年!endl;elsecout不是闰年!endl;date2.Print();leap=date2.isLeapYear();if (leap=1)cout是闰年!endl;elsecout不是闰年!endl;四、实验要求按要求编写实验程序,将实验程序调试运行,写出程序的运行结果,并提交实验报告,写出调试运行的分析和体会。实验二 类和对象的使用一、 实验目的和要求 (1)熟悉类的定义格式和类中成员的访问权限。(2)掌握对象的定义方法以及对
10、象的初始化和赋值的操作。(3)掌握构造函数和析构函数的使用。二、实验内容1. 编写一个程序,定义类CPeople包含个人信息姓名、年龄、薪水。并在类中定义构造函数、析构函数。题目分析:注意构造函数、析构函数的定义规则。源程序代码:#include iostream #include using namespace std;/类CPeople的定义class CPeopleintm_nAge;floatm_fSalary;char*m_pstrName;public:CPeople();/缺省构造函数CPeople(int age, float salary, char* name);/带参数的
11、构造函数CPeople(const CPeople &);/拷贝构造函数CPeople();/析构函数char *GetName();float GetSalary ();void SetSalary (float);int GetAge();void SetAge(int age);CPeople:CPeople()/缺省构造函数,给创建的对象的每个成员赋默认值m_nAge = 20;m_fSalary = 3000.00f;m_pstrName = new char20;/用new操作符为字符指针m_pstrName分配空间strcpy(m_pstrName, 无名氏);CPeople:C
12、People(int age, float salary, char *name)/带参数的构造函数m_nAge = age;m_fSalary = salary;m_pstrName = new char20;/用new操作符为字符指针m_pstrName分配空间strcpy(m_pstrName, name);/复制构造函数,用已存在的对象来创建新的对象CPeople:CPeople( const CPeople &AnotherPeople) m_nAge = AnotherPeople.m_nAge;m_fSalary = AnotherPeople.m_fSalary;m_pstrN
13、ame = new charstrlen(AnotherPeople.m_pstrName) + 1;strcpy(m_pstrName, AnotherPeople.m_pstrName );CPeople:CPeople()/析构函数,用来释放我们在构造函数中动态申请的内存空间if (m_pstrName != NULL)delete m_pstrName;/释放m_pstrName所占用的内存空间char *CPeople:GetName()return m_pstrName;int CPeople:GetAge()return m_nAge;void CPeople:SetAge(in
14、t age )if(age = 0) cout 设置的年龄不合法 endl;elsem_nAge = age;float CPeople:GetSalary()return m_fSalary;void CPeople:SetSalary(float num)if(num 0)cout 设置的薪水数目不合法 endl;elsem_fSalary = num;void main()CPeople ZhangSan(65, 2000.00f, 张 三);/创建一个对象ZhangSancout 以下为个人信息:n姓名,年龄,薪水 endl;cout -n;cout ZhangSan.GetName(
15、) ;/输出对象ZhangSan的姓名cout ZhangSan.GetAge() ;/输出对象ZhangSan的年龄信息cout ZhangSan.GetSalary() endl endl;/输出对象ZhangSan的工资信息CPeople A;/创建一个对象AA.SetAge (34);/设置对象A的年龄A.SetSalary(4000.00f);/设置对象A的工资cout A.GetName() ;/输出对象A的姓名 cout A.GetAge() ;/输出对象A的年龄信息cout A.GetSalary() endl endl;/输出对象A的工资信息CPeople B (ZhangS
16、an);/用对象ZhangSan来创建对象Bcout B.GetName() ;cout B.GetAge() ; cout B.GetSalary() endl endl;三、实验要要求按要求编写实验程序,将实验程序调试运行,写出程序的运行结果,并提交实验报告,写出调试运行的分析和体会。实验三 继承和派生一、 实验目的和要求l 掌握派生类的定义方法和派生类构造函数的定义方法。l 掌握不同继承方式的情况下,基类成员在派生类中的访问权限。l 了解派生类的构造函数和析构函数的执行顺序。了解多重继承的定义方法,多重继承的构造函数和析构函数的使用。二、实验内容在类CPeople的基础上,派生出学生类C
17、Student,并实现对学生成绩的统计和输出。源程序代码:#include #include #define MAXNUM 10using namespace std;class CPeople protected:intm_nAge;public:char*m_pstrName;CPeople(int age, char *name);CPeople();int GetAge();void SetAge(int age);void CopyPeople(CPeople *pAnother);CPeople:CPeople(int age, char *name)m_nAge = age;m_
18、pstrName = new char20;strcpy(m_pstrName, name);CPeople:CPeople()if ( m_pstrName != NULL )delete m_pstrName;int CPeople:GetAge()return m_nAge;void CPeople:SetAge(int age)m_nAge = age;void CPeople:CopyPeople(CPeople *pAnother)m_nAge = pAnother - m_nAge;strcpy(m_pstrName, pAnother - m_pstrName);class C
19、Student:public CPeoplefloat m_ArrayScoreMAXNUM;/用来存放成绩的数组protected:intm_stuNo;/学号intm_courseNum;/课程数目floatm_aScore;/平均成绩public:CStudent(int age, int No, int Num, char* pName = no name) : CPeople(age,pName)m_stuNo = No;m_courseNum = Num;m_aScore = 0.0f;/初始化成绩数组cout 请输入学生 m_pstrName m_courseNum 门课的成绩:
展开阅读全文