同济大学c++C卷答案_第1页
同济大学c++C卷答案_第2页
同济大学c++C卷答案_第3页
同济大学c++C卷答案_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

同济大学课程考核试卷同济大学课程考核试卷 课号 课名 C 语言 考试考查 考查 此卷选为 期中考试 期终考试 重考 试卷 年级 专业 学号 姓名 得分 一 选择填空 30 分 1 1 按照标识符的要求 下列符号中不属于标识符 组成部分的是 D A 大小写字母B 数字 C 下划线D int x float y double z 则表达式 x c int z y 值的类型为 C A char B int C float D double 3 3 有下列定义 char s 10 p s1 xyz 以下语句中正确的是 B A s abcdefgh B p abcdefgh C s s1 D p cin p 4 4 以下数组定义中正确的是 C A int n 5 int a n B int b 3 1 2 3 C int c 3 4 0 D int d 2 4 6 8 5 5 已知 int a 5 b 3 当逻辑表达式语句 ab a a b 执行完毕后 a 和 b 的值分别为 D A 4 4 B 4 3 C 5 4 D 5 3 6 6 以下常量中不是字符型常量的是 B A 101 B a C D n 7 7 对于 int p 的描述 B 是正确的 A 定义一个指向某 int 型函数的指针变量 p B 函数 p 的声明 该函数的返回值是一个指向整 型数据的指针值 C 定义函数 p 函数 p 的返回值为 int 型数据 D 定义一个 int 型指针变量 p 指向 int 型数据 8 8 下列变量定义中 不正确的是 D A int a 0 b 1 B int a int p 以下执行语句中不能使数组 c 中元素 c 1 的值为 1 的是 C A c 1 1 B p c p 1 1 C c 1 D p c p 1 10 10 当被调函数的形参是数组 调用函数的实参 用数组名相对应 实现函数调用时 下列描述中 B 是错误的 A 实参数组把地址值传递给形参数组 使得两者 指向内存的同一片存储域 B 函数调用时系统将实参数组元素拷贝一个副本 给形参数组 C 若实参是一维数组名 其对应的一维形参数组 可以不必说明数组大小 只需在数组名后跟一对 说 明即可 但两者类型应保持一致 D 在被调函数中对形参数组的任何改变 会影响 实参数组所指内存存储单元中的内容 11 11 在下列关键字中 用以说明类中公有成员的 是 A A publicB private C protectedD friend 12 12 以下关于构造函数特征描述中 D 是不正确的 A 构造函数的函数名与类名相同 B 构造函数允许重载 C 构造函数可以设置缺省参数 D 构造函数必须指定其函数类型说明 13 13 下面关于对象概念的叙述中 A 是 错误的 A 对象就是结构体变量 B 对象代表正在创建的系统中的一个实体 C 对象是一个状态和操作 或方法 的封装体 D 对象之间的信息传递是通过发送消息进行的 14 14 在私有继承中 基类的公有成员将成为其派 生类的 C 成员 A 公有 B 保护 C 私有 D friend 15 15 设 Date 是一个日期类 date1 是该类的一个 对象 p 是指向 date1 的 Date 类指针 GetDate 是 Date 类的一个公有成员函数 则以下不正确的表 达式是 A A Date GetDate B date1 GetDate C p Date GetDate D p GetDate 二 写出下列各程序运行时的输出结果 50 分 1 1 include void main int i 10 j float a j 1 10 3 a i 3 0 cout j endl cout a endl 答 0 3 33333 2 2 include void main int i j i j 2 if i 1 if j 2 cout i i j endl else cout i i j endl cout i j endl 答 3 1 2 3 3 include void swap int x y y t void main int a 10 b 15 swap a b cout a a b b endl 答 a 15 b 15 4 4 include int x 1 void fun int p static int x 2 p x 1 x 2 void main int i for i 1 i 4 i fun cout x endl 答 1 3 5 5 15 include void f char p int n int i for i 0 i n i cout p i void main char s 0123456789ABCDEF f s 8 5 答 89ABC 6 6 include void main int x 5 do switch x 2 case 1 x break case 2 x break x cout x 0 答 3 1 1 7 7 include void f int p int n for int i 0 i n i p i i 1 void main int a 3 3 i j f a 0 9 for i 0 i 3 i for j 0 j 3 j cout a i j cout endl 答 1 2 3 4 5 6 7 8 9 8 8 include void main int a 3 4 1 2 3 4 5 6 7 8 9 10 11 12 int p1 3 a 0 a 1 a 2 int p2 4 a int p cout p 1 endl cout p1 1 2 endl cout p2 2 3 endl 答 2 7 12 9 9 include class TPoint public TPoint x 0 y 0 TPoint int i int j x i y j void Display private int x y void TPoint Display cout x y endl void main TPoint p1 4 5 p2 p3 1 8 p1 Display p2 Display p3 Display 答 4 5 0 0 1 8 10 10 include include class Staff private char name 32 float wage tax wAfterTax public void SetData char s float w strcpy name s wage w void Show cout name endl cout wage cout tax cout wAfterTax endl void TaxCalc void Staff TaxCalc float p if wage 1000 0 p 0 0 else if wage 2000 p 0 05 else if wage 5000 p 0 1 else p 0 15 tax p wage wAfterTax wage tax void main int i Staff st 3 p st 0 SetData Zhang 1800 st 1 SetData Wang 4000 st 2 SetData Zhao 6000 p st for i 0 iTaxCalc for i 0 iShow 答 Zhang 1800 90 1710 Wang 4000 400 3600 Zhao 6000 900 5100 三 编程 20 分 1 1 某班有某班有 3030 个学生 个学生 5 5 门功课 试根据门功课 试根据 sortsort 函函 数的原型声明 写出按学生课程总分由高到低进数的原型声明 写出按学生课程总分由高到低进 行排序的行排序的 sortsort 函数程序 函数程序 include include struct student int num char name 32 float score 5 float total 总分 void sort student p int n sort 函数的原型声明 其中 n 为学生数 void main student stu 30 int i j float sum for i 0 i stu i num gets stu i name sum 0 0 for j 0 j stu i score j sum stu i score j stu i total sum sort stu 30 for i 0 i 30 i cout stu i num endl cout stu i name endl for j 0 j 5 j cout stu i score j cout stu i total endl sort 函数程序写在下面空白处 void sort student p int n int i j k student temp for i 0 i n 1 i k i for j i 1 jtotaltotal k j if i k temp p i p i p k p k temp 2 2 根据根据 MyStrMyStr 类中成员函数类中成员函数 ReplaceReplace 函数的原型函数的原型 声明 写出将声明 写出将 MyStrMyStr 类对象类对象 s s 中所有出现字符中所有出现字符 c1c1 的地方均替换为字符的地方均替换为字符 c2c2 的的 ReplaceReplace 函数 函数 include include class MyStr private char str 80 public MyStr char s strcpy str s void Print cout s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论