2008年级 C (下) 四系机试B卷.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2008年级C(下)四系机试B卷整理

东南大学08级C++(下)上机试卷(考试时间80分钟卷面成绩100分) 学号 姓名 机位号 说明:首先在Z盘建立一个以自己的学号命名的文件夹,用于存放上交的*.CPP文件,考试结束前根据机房要求,将这个文件夹传送到网络服务器上,注意:提交时只保留文件夹中的CPP文件。 一、改错题 (50分) 【要求】调试程序,修改其中的语法错误及少量逻辑错误。只能修改、不能增加或删除整条语句,但可增加少量说明语句和编译预处理指令。 【注意】源程序以“学号f1.cpp”命名,存入自己学号文件夹。 【题目】以下程序实现动态生成数据成员,析构函数用来释放动态分配的内存,复制构造函数和复制赋值操作操作符实现深复制。 【含错误的源程序】 #include iostream #include cstring using namespace std; class student { char *pName; public: student( ); student( char *pname, int len ); //错误1 改为student( char *pname ); student( student s ); ~student( ); student operator = ( student s ); } //错误2改为; student::student( ) { cout Constructor; //错误3 改为cout Constructor; pName = NULL; cout 默认 endl; } student::student( char *pname ) { cout Constructor; pName = new char[strlen(pname)+1]; if ( pName ) strcpy( pName, pname ); cout pName endl; } student::student( student s ) //错误4 改为student::student( student s ) { coutCopy Constructor; if( s.pName ) { int len = strlen(s.pName); pName = new char(len+1); //错误5 改为pName = new charlen+1]; if ( pName ) strcpy( pName, s.pName ); cout pName endl; } else pName = NULL; } student::~student() { cout Destructor; if ( pName ) cout pName endl; delete PName; //错误6改为 delete PName; } student Student::operator = ( student s ) //错误7 改为student tudent::operator = ( student s ) { cout Copy Assign operator; delete[] pName; if(s.pName) { len = strlen(s.pName); //错误8 改为len = strlen(s.pName); pName = new char[len]; //错误9改为pName = new char[len]; if( pName ) strcpy( pName, s.pName ); cout pName endl; } else pName=NULL; return *this; } int main(void) { student s1(范英明), s2(沈俊); student s3(s1); student *s4 = new student(s2); delete s3; //错误10 改为 delete s; return 0; } 二、编程题(50分) 【注意】源程序以“学号f2.cpp”命名,存入自己学号文件夹。 【题目】 给产品销售价定价,请编写产品类Product。确定产品的销售价的公式为: 产品销售价 = 原材料价格*1.5 + 加工费*2.0 要求: 类Product的数据成员包括ProductName(表示产品名称,为字符串型)、MatName(表示原材料名,为字符串型)、MatPrice0(表示原材料进价,为整型)、ServicePrice(表示加

文档评论(0)

chenchena + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档