复习.ppt_第1页
复习.ppt_第2页
复习.ppt_第3页
复习.ppt_第4页
复习.ppt_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

复习 现将2010 2011 2 2010级 C程序设计技术 课程期末复习要点发给您 请您根据要点组织您所任课的教学班进行期末复习 注意不要将本要点直接发给学生 复习时请学生自行做好笔记 不要允许学生对您所复习的内容进行拷贝 题型 一 单选题 每题 分 共20分 二 概念选择填空题 每小题2分 共10分 三 程序填空题 每空2分 共10分 四 阅读程序题 每题5分 共30分 五 根据算法写程序题 每小题10分 共10分 六 程序设计题 每小题10分 共20分 数据类型 所占字节长度 取值范围 表达式的书写方法 常量的书写方法 P7 12 1 语言的int类型长度为 字节 则unsignedint类型的数据范围为 A 2147483648 2147483647 B 32768 32767 C 0 255 D 0 65535 1 对10 3的合法C常量表示是 A 1 e 3 B 10 e 3 C 10e 3 D 1e 32 三角形面积公式 则写成C语言表达式不正确的是 A b sin x 2 a B 0 5 b sin x a C sin x 2 b a D b 2 sin x a 6 下列数据中 属于 字符串常量 的是 A abc B abc C abc D a 7 下列数据中属于长整型常量数据是 A65536B 2147483648C0XffffD0L8 若有代数式3ae bc 则不正确的C语言表达式是 A a b c e 3 B 3 a e b c C 3 a e b c D a e c b 3 典型运算符的使用 复合赋值等 P15 23 自增 自减 自增 自减运算符的前缀形式变量实施的运算是 先增 减值后引用 自增 自减运算符的后缀形式变量实施的运算是 先引用后增 减值 1 下面语句执行完后 b的值为 inta b 10 b 10 a A 10 B 19 C 20 D 212 includevoidmain chara 1 b 2 printf c b printf d n b a 3 定义 inta 3 执行语句a a a a 后 变量a的值是 A 3 B 0 C 9 D 12 右结合性运算符 右结合 从右向左 对应运算对象先与自己右边的运算符结合运算 例如 在表达式a b c中 数据对象b的两边具有同优先级的除等 运算符和乘等 运算符 此时需要考虑结合性问题 由于除等运算符和乘等运算符的结合性为右结合性 所以数据对象b先与自己右边的运算符结合 即先计算表达式b c sizeof从右至左 从右至左 从右至左 关系运算和逻辑运算 关系运算的结果关系运算的连接 逻辑运算符 对逻辑表达式从左到右扫描求解 在逻辑表达式的求解过程中 任何时候只要逻辑表达式的值已经可以确定 则求解过程不再进行 inta 1 b 2 c 0 a b a b c 1 为了表示关系x y z 应使用下列C语言表达式中的 A x y AND y z B x y y z C x y z D x y y z 2 判断char型变量ch为大写字母的正确表达式是A A A ch A ch ch 1 当c的值不为0时 在下列选项中能正确将c的值赋给变量a b的是 A a c A 错误 B 0 C 2 D 1 程序的控制结构 基本概念 使用 P47 83 正确理解各控制结构的执行过程理解breakcontinue语句作用理解switch的执行 执行C语句 for i 1 i 4 后 循环控制变量i的值是 3 B 4 C 5 D 1与while a 中的a所表示条件等价的是 A a 0 B a 1 C a 0 D a 1与while a 中的 a所表示条件等价的是 A a 0 B a 1 C a 0 D a 1 19 以下描述正确的是 A 一个break语句能用于退出多层循环B switch语句中不能出现continue语句C 可以用continue语句来终止本层循环D 在循环中break语句来终止本层循环 特别注意 运算符进入条件表达式 1 执行C语句 for i 1 i 4 后 循环控制变量i的值是 A 3 B 4 C 5 D 1 数组 一维数组和二维数组的定义方法 存储方法 简单应用 元素的应用所有元素的遍历 一维 一重循环 二维 双重循环 其它应用 数组的定义和数组元素的访问 1 设有下面的程序段 则该程序段的输出结果是 intarr 6 7 8 9 10 x 4 arr x 2 2 printf d d n arr x 6 arr x 2 A 4 6 B 4 8 C 4 10 D 8 62 以下能对二维数组a进行正确初始化的语句是 A inta 2 1 0 1 5 2 3 B inta 3 1 2 3 4 5 6 C inta 2 4 1 2 3 4 5 6 D inta 3 1 0 1 1 1 intarr 5 5 定义了一个二维数组 其数组元素arr 4 3 是存放在该数组开始 0为起始 的第 个字节开始的内存中 A 23 B 96 C 92 D 46若已定义 inta 9 p a 并在以后的语句中未改变p的值 不能表示a 1 地址的表达式是 A p 1B a 1C a D p 定义intarr 3 4 不能取得arr数组中第8个元素值的是 A arr 7 B arr 8 C arr 1 3 D arr 1 3 数组与指针的关系 C程序设计中 指针和数组有着十分密切的关系 对于指针的运算来说 只有与数组这类占有连续存储区域的数据结构联系起来才有确定的意义 数组与指针的关系 一维数组与指针 二维数组与指针 存储类别符 数据类型符 变量名 常量表达式 存储类别符 数据类型符 数组名 常量表达式 定义intarr 3 4 不能取得arr数组中第8个元素值的是 A arr 7 B arr 8 C arr 1 3 D arr 1 3 函数的定义 声明和调用 下面程序的功能是用递归方式完成求x的n次方 n 0 请填空完成程序 includevoidmain intn floatresult scanf d 宏代换 不带参 带参 在C程序的设计中 正确地理解宏定义的关键在于理解宏调用仅仅就是一个替换而不会进行任何的合并 计算等等操作 在阅读理解包含宏调用问题的C程序时一定要做到先将宏替换完成 然后操作宏替换完成后的表达式 下面通过例3 30讨论这个问题 例4 25宏调用替换问题的理解示例 Name ex04 25 cpp include defineN2 defineMN 2 defineMN2 Mvoidmain intx MN printf x d n x defineSQ1 x x x defineSQ2 x x x defineSQ3 x x x includevoidmain printf 2f 2f 2f 1 0 SQ1 1 0 1 0 1 0 SQ2 1 0 1 0 1 0 SQ3 1 0 1 0 返回指针函数和指向函数指针的定义和简单应用 指向函数的指针变量定义的一般形式是 存储类别符 数据类型名 指针变量名 形参表 函数的原型为 voidswap intx inty 指向函数的指针变量定义为 void fp intx inty 则将函数add mul的指针 入口地址 赋值给指针变量fptr的表达式为 fptr swap即函数调用表达式可以是swap a b 或者 fptr a b 二 重点复习的基本方法 1 整型数据的拆分以及特定数码的统计2 字符串的常见操作 在字符串中删除指定字符 统计字符串中的特定字符功能的实现 3 函数的指针参数 利用指针参数返回多个值 4 数组的定义 初始化 数组元素的引用 数组做函数的参数使用方法5 基本控制结构的使用 字符图形的输出 最大公约数最小公倍数 素数 穷举法 迭代法的简单实用 6 函数的递归调用7 全局变量和局部静态变量的简单使用8 数组 指针数组 二级指针变量的结合使用9 结构体变量做函数参数以及结构体变量的引用形式10 文件的简单应用 统计指定数据 写入和读出指定数据 查询特定的数据和文本行等 1 整型数据的拆分以及特定数码的统计 书6686例2 16编程序实现功能 将一个整数的各位数字颠倒后输出 Name ex02 16 cpp includevoidmain intn r printf Inputthen scanf d 1 整型数据的拆分以及特定数码的统计 实验书20 includevoidmain longn intcount 0 max 0 t scanf d 2 字符串的常见操作 统计字符串中的特定字符功能的实现 在字符串中删除指定字符书230 231 统计字符串中的特定字符功能的实现 书251页 includeintfind char char str intch intk num 0 for k 0 str k 0 k if str k ch num returnnum voidmain chars 100 intnum c printf nInputaString gets s printf nInputacharacter c getchar num find char s c printf nnum d num 3 函数的指针参数 利用指针参数返回多个值 includevoidmain voidswap int x int y inta 3 b 5 printf swap函数调用前 a d b d n a b swap 4 数组的定义 初始化 数组元素的引用 数组做函数的参数使用方法 书上太多了 不列举了 数组的简单应用 最大 小元素值 平均数 排序算法 删除指定的数组元素 最大 小元素值 p110 实验书 46 includevoidmain inti j row colum max inta 3 4 1 2 3 4 9 8 7 6 10 10 5 2 max a 0 0 for i 0 imax max a i j row i colum j printf max d row d colum d n max row colum 平均数 实验书47排序算法 书上101删除指定的数组元素 参照字符串的操作 元素前移 书230 基本控制结构的使用 字符图形的输出 最大公约数最小公倍数 素数 穷举法 迭代法的简单实用 字符图形的输出 书69页 includevoidmain charch A inti j for i 0 i 5 i 控制行数 for j 0 j 5 i j 输出每行的前导空格 printf for j 0 j i j 输出指定个数的指定字符 printf c ch i j printf n 换行 ABACBADCBAEDCBA 最大公约数最小公倍数 书75页136页素数书68页72页穷举法书76 79页迭代法79页 6 函数的递归调用 递归的实质是一种简化复杂问题求解的方法 它将问题逐步简化直至趋于已知条件 在简化的过程中必须保证问题的性质不发生变化 即在简化的过程中必须保证两点 一是问题简化后具有同样的形式 二是问题简化后必须趋于比原问题简单一些 具体使用递归技术时 必须能够将问题简化分解为递归方程 即问题的形式 和递归结束条件 即最简单的解 两个部分 7 全局变量和局部静态变量的简单使用 1 请仔细阅读以下程序 写出程序运行结果 includeintx 0 y 0 a 15 b 10 voidfun x a b y a b voidmain inta 7 b 5 x x a y y b fun printf x d y d n x y 8 数组 指针数组 二级指针变量的结合使用 书上太多了 不列举了 9 结构体变量做函数参数以及结构体变量的引用形式 includestructT intx char y structT p typedefstructTTT voidmain TTt 1 pascal NULL 3 basic NULL TT p t charc s s p y puts s p t s p y puts s c p y putchar c 结构体变量 结构体数组与指针的关系 通过指针操作的方法 includestructT inta int b s 4 p voidmain intn 1 i for i 0 ia p a 联合体类型 变量的定义 引用方法 Name ex08 18 cpp includevoidmain unionB intx charc 2 b b x 0 x4142 b c 0 a b c 1 b printf x c c n b x b c 0 b c 1 10 文件的简单应用 统计指定数据 写入和读出指定数据 查询特定的数据和文本行等 统计指定数据 include includevoidmain intargc char argv FILE fpt intcount 0 charch if argc 2 printf Filenameunknown n exit 0 if fpt fopen argv 1 r NULL printf Can topenfiledata txt n exit 0 while ch fgetc fpt EOF if ch a count fclose fpt printf File c contains dcharacters n a count 查询特定的数据和文本行等

温馨提示

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

评论

0/150

提交评论