非电类上机考试试卷C.docVIP

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

非电类上机考试试卷_C(2007年6月) 学号 姓名 成绩 (考试时间80分钟,卷面分数30分) 说明:首先在Z盘建立一个以自己的学号命名的文件夹,用于保存上交的考试文件。对以下问题编制程序,调试运行,输出结果。 一、字符串处理与文件读写程序 (15分) 【要求】 (1)建立2个字符型数组a[20]和b[20]。在数组a中存入字符串The quantity is 000056789,并输出至屏幕。 (2)编写函数void Invers(char *str),功能是将字符串str逆置(所有字符反序存放)。主函数将字符串a复制到数组b中,其中调用Invers函数将b串中的连续数字字符子串逆置(成为987650000),完成后将b输出至屏幕。 (3)定义一个文件流对象iof,以文本方式打开磁盘文件sfile.txt。依次将数组a和b中的数据写入文件。 (4)将文件sfile.txt中的内容读出,输出至屏幕。两字符串各占一行。 【提示】头文件包含语句为: #include iostream.h #include fstream.h 【注意】 将源程序以文件名CF1.cpp存入Z盘自己的文件夹中。文件sfile.txt也存入同一个文件夹。 二、面向对象编程:模拟公共汽车管理程序 (15分) 【要求】按以下描述和要求建立一个类BUS,执行主函数对其测试。 BUS 私有成员 int *bus ; //汽车数组,下标为汽车号,元素值为0表示无车; //元素值大于0表示车上的座位数(要求其值不大于60)。 char *work ; //工作状态数组,下标与bus数组对应,元素值为NULL //表示该车在库;元素值为’A’或’B’分别表示汽车正在 //运行A线或B线。 static int sum; //累计汽车座位数量 公有成员 BUS(int n=10); //构造函数,动态分配bus和flag数组空间, 长度 //为n。初始值分别为0或NULL(用循环依次赋 //初值)。 ~BUS( ); //析构函数,释放分配的内存 void addseat(int m, int n, char c); //将下标为m的bus填写座位数n, //并置对应的工作状态work为c(应检查n值是否大于60)。 int count( ); //统计全部汽车的座位数(将bus中的数据累加到//sum),同时统计正在工作的汽车数,将工作汽车数//返回。 int getsum( ); //返回座位总数sum void display(); //输出全部汽车的数据(下标号,座位数,运行线 //路或在库)。 在类定义外面对静态成员做定义性说明并赋初值为零:int BUS::sum=0; 主函数要求: 定义BUS类对象A (12)。 调用函数addseat为对象A的各辆车输入座位数和工作状态:如A. addseat (0, 30,‘A’); A. addseat (1, 20,‘A’); A. addseat (2, 35,‘B’); 调用函数display输出对象A的全部数据。 调用函数count对A统计全部汽车的座位数及工作汽车数并输出结果。 调用函数getsum得到座位总数,同时用条件语句对sum进行判断,如果座位总数少于200或工作汽车数少于8辆,则继续调用函数addseat为对象A的空闲车输入座位数和工作状态。然后再次调用函数count对A统计全部汽车的座位数,直到总数大于200或工作汽车数大于8辆时停止。(可用循环控制) 要求:写出所有成员函数的完整代码。 主函数参考代码: void main(){ BUS A(12); int i,m,n,x; char c; A.addseat (0, 30,A); A.addseat (1, 20,A); A.addseat (2, 35,B); A.display(); m=A.count(); cout正在工作的汽车数=mendl; cout全部汽车的座位数=getsum()endl; n=getsum( ); i=3; while(n200 || m8){ cout从键盘输入座位数x和运行线路标志c: ; cinx; cinc; A.addseat (i, x, c); m=A.count(); n=getsum( ); i++; } cout正在工作的汽车数=mendl; cout全部汽车的座位数=getsum()endl; } 【注

文档评论(0)

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

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

1亿VIP精品文档

相关文档