好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

《高级语言程序设计》期末总复习.doc

10页
  • 卖家[上传人]:正**
  • 文档编号:41340760
  • 上传时间:2018-05-29
  • 文档格式:DOC
  • 文档大小:81.50KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 《《高级语言程序设计高级语言程序设计》》期末总复习期末总复习考试范围:考试范围:1教材的 1~12 章,第章,第 12 章综合程序不考,链表只考最基本知识章综合程序不考,链表只考最基本知识请注意下列内容肯定不考请注意下列内容肯定不考((1))1..2 和和 1.3 机器语言的局限性、机器语言程序设计机器语言的局限性、机器语言程序设计((2))3..5 位运算符位运算符((3))4..5..3 goto 语句(语句(4))5.2.3 一维数组名的双重含义(一维数组名的双重含义(5))5.3.7 野指针和野指针和 void 指针指针((6))6..5 动态空间管理动态空间管理((7))6..7 函数指针函数指针((8))7..5 const 常类型常类型((9))10..8 二维动态空间的申请与释放二维动态空间的申请与释放((10))10..10 以二级指针为形参的以二级指针为形参的 main 函数函数((11))11..4 文件的随机访问文件的随机访问课程的全部内容可分为五大模块:课程的全部内容可分为五大模块:((1))基础知识基础知识((2))三种基本结构及流程控制三种基本结构及流程控制((3))函数函数((4))数据类型数据类型((5))文件文件下面按这五大模块分别作回顾下面按这五大模块分别作回顾模块一:基础知识部分模块一:基础知识部分需要掌握的知识要点:需要掌握的知识要点:((1))C 语言程序的组成:函数是语言程序的组成:函数是 C 程序的基本单位,一个程序有且只有一个程序的基本单位,一个程序有且只有一个 main( )函数,这是程序的函数,这是程序的入口函数入口函数((2)从)从 C 的源程序到可执行的文件的全过程:编辑、编译、链接最后才能运行,各阶段生成的文件扩展的源程序到可执行的文件的全过程:编辑、编译、链接最后才能运行,各阶段生成的文件扩展名分别为:名分别为:.c、、.obj、、.exe,头文件的扩展名:头文件的扩展名:.h((3)函数的组成:函数首部和函数体)函数的组成:函数首部和函数体 ((4)编译预处理有三种:文件包含、宏、条件编译:预处理命令行都必须以)编译预处理有三种:文件包含、宏、条件编译:预处理命令行都必须以“#”号开始号开始宏定义宏定义#define 宏名宏名 串串C 程序中定义一个符号常量是借助于宏定义实现的,例如:程序中定义一个符号常量是借助于宏定义实现的,例如: #define NUM 35 注意:不在行末加注意:不在行末加分号,因为在对源程序编译过程中(不是运行时)进行宏替换时,将宏所代表的字符串原样替换进去,有分号,因为在对源程序编译过程中(不是运行时)进行宏替换时,将宏所代表的字符串原样替换进去,有时加了分号是要出错的,例如:时加了分号是要出错的,例如: int arr[NUM] 。

      宏替换因为只在编译时进行,所以不占运行时间,只宏替换因为只在编译时进行,所以不占运行时间,只占编译时间占编译时间带参数的宏可以完成一些简单函数的功能,例如:带参数的宏可以完成一些简单函数的功能,例如:#define MUL(x,y) x*y主函数中如果有变量定义如下主函数中如果有变量定义如下::int a=2,b=3,c;用形如用形如::c= MUL(a,b);实现求实现求 a、、b 的乘积但是的乘积但是请大家思考请大家思考,,如果用如果用c= MUL(a+2,b+5),则变量,则变量 c 的值为?的值为?因此,一般将宏中的参数在所定义的串中打上括号,如:因此,一般将宏中的参数在所定义的串中打上括号,如:#define MUL(x,y) ((x))*((y)再求)再求 c= MUL(a+2,b+5)((5))C 程序中的六种符号:关键字、标识符、运算符、分隔符、其它符号、数据(包括常量和变量)程序中的六种符号:关键字、标识符、运算符、分隔符、其它符号、数据(包括常量和变量)熟记所有常见关键字,关键字中最多的是流程控制语句中的关键字,如:熟记所有常见关键字,关键字中最多的是流程控制语句中的关键字,如:for、、while、、do、、if、、else、、switch、、case、、default、、break、、continue、、goto、、return 等,还有一大等,还有一大类是变量类型及存储类别的,如:类是变量类型及存储类别的,如:int、、short、、long、、signed、、unsigned、、char、、double、、float、、enum、、union、、struct、、typedef、、static、、register、、auto、、extern,还有一些如:还有一些如:void 、、sizeof 等;等;能正确定义标识符(在程序中,符号常量名、变量名、函数名都是用户自定义标识符)能正确定义标识符(在程序中,符号常量名、变量名、函数名都是用户自定义标识符) ,自定义标识符的,自定义标识符的正确与否可从以下几方面判断:正确与否可从以下几方面判断:①①是否以字母或下划线开头;是否以字母或下划线开头;②②是否是只有字母、数字、下划线的序列是否是只有字母、数字、下划线的序列③③是否选用了关键字是否选用了关键字掌握所有的运算符及其优先级、结合方向及特殊的运算规则:掌握所有的运算符及其优先级、结合方向及特殊的运算规则:34 种运算符的优先级关系大致为:种运算符的优先级关系大致为: [ ]、、( )、、->、、.---一元运算符一元运算符---乘除类算术运算符乘除类算术运算符---加加减类算术运算符减类算术运算符---移位运算符移位运算符---有大小关系的关系运算符有大小关系的关系运算符---等与不等的关系运算符等与不等的关系运算符---位位运算符运算符---逻辑与逻辑与---逻辑或逻辑或---条件运算符条件运算符---各种赋值运算符各种赋值运算符---逗号运算符。

      逗号运算符结合方向:一元运算符、条件运算符、赋值运算符三种为自右向左结合,其它均为自左向右结合结合方向:一元运算符、条件运算符、赋值运算符三种为自右向左结合,其它均为自左向右结合能改变变量值的运算符:赋值、能改变变量值的运算符:赋值、++、、- -,注意前后,注意前后++、、- -的区别的区别具有特殊运算规则的运算符:逻辑与具有特殊运算规则的运算符:逻辑与c=c-35;putchar(c);的输出结果是;的输出结果是____2、下列哪一个不是合法的常量、下列哪一个不是合法的常量A、、027 B、、2.5e2.5 C、、 0xfdaL D、、10.e+0变量:在程序运行过程中其值可变的量,需要先定义后使用变量:在程序运行过程中其值可变的量,需要先定义后使用每一个变量都具有:变量名、变量的当前值、变量的地址、变量的存储属性,指针变量中存的是地址,其每一个变量都具有:变量名、变量的当前值、变量的地址、变量的存储属性,指针变量中存的是地址,其余变量中存放的是值余变量中存放的是值在所有函数之外定义的变量称为全局变量,其作用域为定义点开始到程序结束(去掉含同名局部量的作用在所有函数之外定义的变量称为全局变量,其作用域为定义点开始到程序结束(去掉含同名局部量的作用区域)区域) ;在函数内部定义的变量称为局部变量(形式参数也是局部变量);在函数内部定义的变量称为局部变量(形式参数也是局部变量) ,局部变量分,局部变量分 auto(默认)和(默认)和static 两种,前者是在函数被调用时分配空间,每次函数执行完毕后将不再存在,但是两种,前者是在函数被调用时分配空间,每次函数执行完毕后将不再存在,但是 static 型的局部型的局部变量在函数第一次被调用时进行分配空间,只初始化一次,每次函数执行完毕后将继续存在,但是只在本变量在函数第一次被调用时进行分配空间,只初始化一次,每次函数执行完毕后将继续存在,但是只在本函数中才起作用,因此这种变量的读程序题一定要注意!函数中才起作用,因此这种变量的读程序题一定要注意!模块二:三种基本结构及流程控制模块二:三种基本结构及流程控制C 程序的三种基本结构是顺序结构、选择结构、循环结构。

      这三种结构分别需要借助于特定的语句控制实程序的三种基本结构是顺序结构、选择结构、循环结构这三种结构分别需要借助于特定的语句控制实现1)顺序结构:赋值语句和函数调用语句是控制该结构的主要语句函数调用语句中最常用的是:)顺序结构:赋值语句和函数调用语句是控制该结构的主要语句函数调用语句中最常用的是:scanf( )、、printf( )、、getchar( )、、putchar( )等用于控制输入输出的语句注意用等用于控制输入输出的语句注意用 scanf( )输入变量值输入变量值时要严格按照格式控制串的形式要求输入,用时要严格按照格式控制串的形式要求输入,用 printf( )输出时要进行相应的格式控制,需要熟记几种格输出时要进行相应的格式控制,需要熟记几种格式转换说明符:式转换说明符:%c、、%s、、%d、、%f、、%lf(当变量为(当变量为 double 类型时,在类型时,在 scanf 中必须用中必须用%lf,但输出时,但输出时用用%f 就可以了)就可以了) 练习:练习:1、已知、已知 a、、b、、c 为为 int 型变量,用于输入的语句为:型变量,用于输入的语句为:scanf(“a=%d,b=%d,c=%d“,,若想使,若想使a 的值为的值为 1,,b 的值为的值为 2、、c 的值为的值为 3,应当怎样输入?如果提供的输入方法为,应当怎样输入?如果提供的输入方法为 1,2,3,则对应,则对应的输入语句是什么?的输入语句是什么?2、、float v==1234.5678;,输出格式为:输出总宽度为;,输出格式为:输出总宽度为 10,精度为,精度为 3,则应使用语句,则应使用语句printf(_______);实现;若输出语句为:实现;若输出语句为:printf(“%.3f”,v);,输出的内容为:,输出的内容为:______((2)选择结构:)选择结构:用用 if...else、、switch 语句配合复合语句、语句配合复合语句、break 语句控制实现。

      语句控制实现If 语句有三种形式:语句有三种形式:单分支单分支 if、双分支、双分支 if、嵌套、嵌套 if,注意,注意 else 应与其前最靠近的未匹配过的应与其前最靠近的未匹配过的 if 相对应,而与对齐的形式无关,相对应,而与对齐的形式无关,每一个每一个 else 实际上都隐含了一个条件,要充分利用这些条件分析程序;实际上都隐含了一个条件,要充分利用这些条件分析程序;if 后的条件通常是关系表达式,后的条件通常是关系表达式,但是实际上可以是任何表达式,仅以该表达式是但是实际上可以是任何表达式,仅以该表达式是 0 或非或非 0 来判断条件的假和真注意:来判断条件的假和真注意:if ( )及及 else 后后面都只能控制一条语句,经常需要用到复合语句面都只能控制一条语句,经常需要用到复合语句switch 语句中特别要注意的是:(语句中特别要注意的是:(1))switch 后面的表达式类型应当为整型、字符型、枚举型,而不可以后面的表达式类型应当为整型、字符型、枚举型,而不可以是是 float 或或 double 型,因为表达式的取值必须是离散值型,因为表达式的取值必须是离散值2)找到与表达式匹配的常量后开始执行,直到遇到)找到与表达式匹配的常量后开始执行,直到遇到 break 或语句结束才会停止。

      因此每一个分支后如或语句结束才会停止因此每一个分支后如果没有及时用果没有及时用 break,则继续向下执行,这样,,则继续向下执行,这样,switch 结构可以选择多个分支执行结构可以选择多个分支执行((3)这些常量的顺序调整不影响程序的正确性,只要每个分支执行的功能固定就可以了这些常量的顺序调整不影响程序的正确性,。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.