全国计算机二级C语言程序设计课件

上传人:阳*** 文档编号:80260938 上传时间:2022-04-25 格式:PPT 页数:79 大小:1.12MB
收藏 版权申诉 举报 下载
全国计算机二级C语言程序设计课件_第1页
第1页 / 共79页
全国计算机二级C语言程序设计课件_第2页
第2页 / 共79页
全国计算机二级C语言程序设计课件_第3页
第3页 / 共79页
资源描述:

《全国计算机二级C语言程序设计课件》由会员分享,可在线阅读,更多相关《全国计算机二级C语言程序设计课件(79页珍藏版)》请在装配图网上搜索。

1、全国计算机二级C语言程序设计全国计算机二级全国计算机二级C语言程序设计语言程序设计考点复习考点复习全国计算机二级C语言程序设计 全国计算机二级考试全国计算机二级考试 考试方式考试方式 1.笔试:90分钟,满分100分,其中含公共基础知识部分的30分(选择10题20分,填空5题10分)。 2.上机:90分钟,满分100分 3.上机操作包括: (1)填空。(30分,3处填空)(2)改错。(30分,23处改错) (3)编程。(40分,一个自定义函数体)全国计算机二级C语言程序设计第1章 C语言程序设计基本概念一、一、C语言程序的结构语言程序的结构1.程序的构成,程序的构成,main函数和其他函数。函

2、数和其他函数。2.头文件,数据说明,函数的开始和结束标志以及程序中的注释。头文件,数据说明,函数的开始和结束标志以及程序中的注释。3.源程序的书写格式。源程序的书写格式。4.C语言的风格。语言的风格。大纲要求重点:大纲要求重点:考点考点1C语言程序语言程序考点点拨考点点拨:重点记忆程序的构成和书写重点记忆程序的构成和书写 程序是可以连续执行的指令的集合。目前当用的程序程序语言主要程序是可以连续执行的指令的集合。目前当用的程序程序语言主要是是“高级语言高级语言”,如,如Visual Basic、C+、Java和和C。其中。其中C语言具有语言具有高级语言和低级语高级语言和低级语言的双重优点。言的双

3、重优点。全国计算机二级C语言程序设计 C语言程序由函数构成。一个语言程序由函数构成。一个C语言源程序有且仅有一个语言源程序有且仅有一个main函数和函数和零个或多个其他函数。无论零个或多个其他函数。无论main函数的位置如何,它是程序执行的入口和函数的位置如何,它是程序执行的入口和出口中。出口中。 C语言程序书写自由,一行内可以写一条或多条语句,一条语句也可语言程序书写自由,一行内可以写一条或多条语句,一条语句也可以写在多行。以写在多行。C语言的注释有两种形式,分别为行尾注释语言的注释有两种形式,分别为行尾注释“/”和块式和块式注释注释“/* */”。注释只是给人看,对编译和运行不起作用。注释

4、只是给人看,对编译和运行不起作用。真题举例:真题举例:(11) 以下叙述正确的是( ) (2010.3) A) C语言程序是由过程和函数组成的 B) C语言函数可以嵌套调用,例如:fun(fun(x) C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可以作为单独文件形式存在B全国计算机二级C语言程序设计考点点拨考点点拨:C程序的编译连接和后缀程序的编译连接和后缀 C源程序文件源程序文件(后缀为后缀为.c)必须翻译为二进制必须翻译为二进制目标文件目标文件(后缀为后缀为.obj),此,此过程称为过程称为“编译编译”,负责此工作的程序称为,负责此工作的程序称为“编译器编译器

5、”或或“编译程序编译程序”;然后由连接程序把该二进制文件与然后由连接程序把该二进制文件与C语言的各种库函数连接起来,生成语言的各种库函数连接起来,生成可可执行文件执行文件(后缀为后缀为.exe),此过程称为,此过程称为“连接连接”;最后执行该可执行文件,;最后执行该可执行文件,实现程序功能。实现程序功能。考点考点2C语言程序编译连接过程语言程序编译连接过程真题举例:真题举例:(13)以下叙述中错误的是( ) (2010.9)A)C程序在运行过程中所有计算都以二进制方式进行B)C程序在运行过程中所有计算都以十进制方式进行C)所有C程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,

6、实型变量只能存放浮点数B全国计算机二级C语言程序设计考点点拨考点点拨:算法的五个特性算法的五个特性 算法是为解决某个特定问题而采取的确定且有限的步骤。算法的五个算法是为解决某个特定问题而采取的确定且有限的步骤。算法的五个特性是:特性是:有穷性、确定性、有效性、零个或多个输入、一个或多个输出有穷性、确定性、有效性、零个或多个输入、一个或多个输出。算法的表示方法有算法的表示方法有自然语言自然语言、流程图流程图、伪代码伪代码和和程序设计语言程序设计语言。考点考点3算法的特性算法的特性真题举例:真题举例:13、以下关于算法叙述错误的是( )。(2012.3) A算法可以用伪代码、流程图等多种形式来描述

7、 B一个正确的算法必须有输入 C一个正确的算法必须有输出 D用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码B全国计算机二级C语言程序设计考点点拨考点点拨:记住程序设计的任务记住程序设计的任务 程序设计指设计、编程、调试程序的方法和过程。程序设计通常分为程序设计指设计、编程、调试程序的方法和过程。程序设计通常分为问题建模问题建模、算法设计算法设计、编写代码编写代码和和编译调试编译调试四个阶段。四个阶段。考点考点4程序设计的任务程序设计的任务真题举例:真题举例:11、针对简单程序设计,以下叙述的实施步骤正确的是( )。(2012.3) A确定算法和数据结构、编码、调试、整理文档

8、B编码、确定算法和数据结构、调试、整理文档 C整理文档、确定算法和数据结构、编码、调试 D确定算法和数据结构、调试、编码、整理文档A全国计算机二级C语言程序设计考点点拨考点点拨:记忆结构化程序的三种结构组成记忆结构化程序的三种结构组成 结构化程序设计通常采用自顶向下、逐步细化、模块化设计、结构化结构化程序设计通常采用自顶向下、逐步细化、模块化设计、结构化编码的方法。结构化程序由三种基本结构组成:顺序结构、选择结构、循编码的方法。结构化程序由三种基本结构组成:顺序结构、选择结构、循环结构。环结构。考点考点5结构化程序和模块结构结构化程序和模块结构真题举例:真题举例:(11)以下关于结构化程序设计

9、的叙述中正确的是 ( )。(2010.9)A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto语句会很便捷C)在C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题C全国计算机二级C语言程序设计第2章 数据类型、运算符和表达式二、数据类型及其运算二、数据类型及其运算 1.C的数据类型的数据类型(基本类型,构造类型,指针类型,无值类型基本类型,构造类型,指针类型,无值类型)及其定义方法。及其定义方法。 2.C运算符的种类、运算优先级和结合性。运算符的种类、运算优先级和结合性。 3.不同类型数据间的转换与运算。不同类型数据间的转换与运

10、算。 4.C表达式类型表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式逗号表达式)和求值规则。和求值规则。大纲要求重点:大纲要求重点:考点点拨考点点拨:标识符的命名规则标识符的命名规则 标识符的命名规则有:标识符的命名规则有:(1)由字母、数字、下划线三类字符组成由字母、数字、下划线三类字符组成;(2)必须必须以字母或下划线打头以字母或下划线打头;(3)区分大小写区分大小写;(4)不能和关键字相同不能和关键字相同;(5)尽量见名知尽量见名知义义考点考点1标识符及命名规则标识符及命名规则全国计算机二级C

11、语言程序设计真题举例:真题举例:(13) 以下C语言用户标示符中,不合法的是( )(2010.3)A)_1 B)AaBc C)a_b D)abD考点点拨考点点拨:记十进制、八进制、十六进制整型常量的表示记十进制、八进制、十六进制整型常量的表示 C语言中整型常量的表示方法有:语言中整型常量的表示方法有:十进制十进制(以非零数字打头以非零数字打头)、八进制、八进制(以以数字数字0打头后跟八进制数符打头后跟八进制数符)、十六进制、十六进制(以以0X或或0 x打头后跟十六进制数符打头后跟十六进制数符)。 C语言中整型数据有三大类:语言中整型数据有三大类:短整型短整型(short,2B) 、基本整型、基

12、本整型(int,4B) 、长、长整型整型(long,4B),此为有符号类型,可表示正、负数;在三个关键字前加上此为有符号类型,可表示正、负数;在三个关键字前加上unsigned 则为无符号类型,所占字节数不变,但只能表示正数。则为无符号类型,所占字节数不变,但只能表示正数。 整型数据在内存中以整型数据在内存中以二进制补码二进制补码存放,若超出其表示范围,会产生溢出。存放,若超出其表示范围,会产生溢出。考点考点2整型常量、变量的表示及取值范围整型常量、变量的表示及取值范围考点点拨考点点拨:记实型常量的表示记实型常量的表示 实型常量的表示方法有两种:实型常量的表示方法有两种:小数形式和指数形式小数

13、形式和指数形式。 实型数据主要使用两种类型:实型数据主要使用两种类型:单精度单精度(float , 4B)、双精度、双精度(double, 8B ),注意不同类型的有效数字位数区别。,注意不同类型的有效数字位数区别。 实型数据在内存中以实型数据在内存中以指数形式指数形式存放,实型常量存放,实型常量默认为默认为double型,可以型,可以在常量后加在常量后加f或或F将其按将其按float型处理。型处理。考点考点3实型常量、变量的表示及取值范围实型常量、变量的表示及取值范围全国计算机二级C语言程序设计考点点拨考点点拨:记字符常量及转义字符常量的定义记字符常量及转义字符常量的定义 普通字符常量是用一

14、对单引号括起来的一个字符表示的常量。字符常普通字符常量是用一对单引号括起来的一个字符表示的常量。字符常量的值是该字符的量的值是该字符的ASCII码值,如码值,如A的值是的值是65,0字符的值是字符的值是48等,等,在内存中占在内存中占1B空间。空间。 转义字符常量指在单引号内由反斜线打头,后跟特定字符表示的常量。转义字符常量指在单引号内由反斜线打头,后跟特定字符表示的常量。需要记的转义字符有三类:需要记的转义字符有三类: (1)控制字符:控制字符:n、 r、b、 t (2)特殊字符:特殊字符: 、 、” (3)转义进制:转义进制: bbb(13位八进制数符位八进制数符)、 xhh(12位十六进

15、制位十六进制数符数符) 字符串常量是用一对双引号括起来的零个或多个字符序列,其中包含字符串常量是用一对双引号括起来的零个或多个字符序列,其中包含的字符可以是普通字符或转义字符,系统自动在字符串末尾增加一个不可的字符可以是普通字符或转义字符,系统自动在字符串末尾增加一个不可显示字符显示字符0(空字符空字符)作为字符串结束标记,字符串所占的内存空间为所作为字符串结束标记,字符串所占的内存空间为所含字符数含字符数+1。考点考点4字符型常量、变量及转义字符常量字符型常量、变量及转义字符常量全国计算机二级C语言程序设计真题举例:真题举例:(15)以下选项中能表示合法常量的是( )(2010.9)A )整

16、数:1,200B)实数:1.5E2.0 C )字符斜杠: D)字符串:“007” (13)以下选项中不能用作C程序合法常量的是( )(2011.3)A)1,234 B)123 C)123 D)x7G (14)以下选项中可用作C程序合法实数的是A( )(2011.3)A).1e0 B)3.0e0.2C)E9 D)9.12EDAA考点点拨考点点拨:记字符数据的运算方法记字符数据的运算方法 C语言规定,将所有的字符型数据都作为整型来处理。因此,字符常量语言规定,将所有的字符型数据都作为整型来处理。因此,字符常量和转义字符常量可以参与任何整数运算。如和转义字符常量可以参与任何整数运算。如A+32得得a

17、,5-0得得5。常考英文字母大、小写之间的转换,数字字符与整数值之间的相互转换。常考英文字母大、小写之间的转换,数字字符与整数值之间的相互转换。字符数据还可以进行关系运算和逻辑运算。字符数据还可以进行关系运算和逻辑运算。考点考点5字符数据的运算字符数据的运算真题举例:真题举例:(21)以下不能输出字符A的语句是(注:字符A的ASCIl码值为65,字符a的ASCIl码值为97)( )(2011.9)A)printf(cn,a-32); B)printf(dn,A);C)printf(“cn”,65); D)print-f(cn,B-1);B全国计算机二级C语言程序设计考点点拨考点点拨:记字符变量

18、的定义及赋值记字符变量的定义及赋值 C语言中用关键字语言中用关键字char定义字符型变量,在内存中分配定义字符型变量,在内存中分配1B空间,用来存空间,用来存放字符常量的放字符常量的ASCII码值。该值可以作为整型数据来参与运算。码值。该值可以作为整型数据来参与运算。考点考点6字符型变量字符型变量真题举例:真题举例:(22)有以下定义语句,编译时会出现编译错误的是( )。(2009.9) A)chara=a; B)chara=n; C)chara=aa; D)chara=x2d; C考点点拨考点点拨:运算符的分类、常用运算符的优先级和结合性运算符的分类、常用运算符的优先级和结合性 运算符按功能

19、分有运算符按功能分有13类类(P56),按所需操作数目分可分为:单目运算符,按所需操作数目分可分为:单目运算符(右结合,优先级右结合,优先级2)、双目运算符、双目运算符(除赋值为右结合外,其余为左结合除赋值为右结合外,其余为左结合)、三、三目运算符目运算符(条件运算符,右结合条件运算符,右结合)。各运算符的优先级和结合性见教材。各运算符的优先级和结合性见教材P378。考点考点7运算符的种类、优先级和结合性运算符的种类、优先级和结合性全国计算机二级C语言程序设计考点点拨考点点拨:系统自动转换成同一类型的方向和结果的类型系统自动转换成同一类型的方向和结果的类型 不同数据类型混合运算时系统自动转换的

20、规则见下图,其中水平箭头为不同数据类型混合运算时系统自动转换的规则见下图,其中水平箭头为必然转换,垂直箭头为从低向高方向转换。运算结果类型为转换后的类型。必然转换,垂直箭头为从低向高方向转换。运算结果类型为转换后的类型。考点考点8不同类型数据间的混合运算不同类型数据间的混合运算doubledoublefloatfloatunsigned longunsigned longlonglongintintchar, shortchar, short高高低低真题举例:真题举例:(14)若有定义语句:int a=10;double b=3.14;,则表达式A+a+b值的类型是( )。(2011.9) A

21、)char B)int C)double D)floatC全国计算机二级C语言程序设计考点点拨考点点拨:重点记算术运算符各自的运算特点重点记算术运算符各自的运算特点 基本算术运算符基本算术运算符+、-、*、/、%均为双目运算符。其中均为双目运算符。其中%(求余数求余数)运算符运算符要求两侧的操作数必须为整型;要求两侧的操作数必须为整型;/(除除)运算符两侧若均为整数,则结果为除运算符两侧若均为整数,则结果为除以后的整数部分,否则为实型。以后的整数部分,否则为实型。考点考点9算术运算符与表达式算术运算符与表达式真题举例:真题举例:(14)有以下定义:int a; long b; double x

22、,y;则以下选项中正确的表达式是( )。(2010.9)A) a%(int)(x-y)B)a=x!=y; C)(a*y)%b D)y=x+y=xA考点点拨考点点拨:重点记赋值表达式及复合赋值表达式的特点重点记赋值表达式及复合赋值表达式的特点 赋值表达式左侧必须是简单变量,不能是常量或表达式赋值表达式左侧必须是简单变量,不能是常量或表达式(包括赋值表达包括赋值表达式式),右边可以是常量、变量或表达式,右边可以是常量、变量或表达式(包括赋值表达式包括赋值表达式)。赋值运算符及复。赋值运算符及复合赋值运算符右结合,优先级倒数第二级。当赋值表达式右边表达式值的合赋值运算符右结合,优先级倒数第二级。当赋

23、值表达式右边表达式值的类型与左边变量的类型不一致时,系统会自动将该值转换成左边变量的类类型与左边变量的类型不一致时,系统会自动将该值转换成左边变量的类型后再赋值。转换规则则教材型后再赋值。转换规则则教材P62。考点考点10赋值运算符与表达式赋值运算符与表达式全国计算机二级C语言程序设计真题举例:真题举例:(16)表达式a+=a-=a=9的值是( )(2010.9)A)9 B)_9 C)18D)0 (15 ) 若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是( )(2011.3)A)a=(b=4)=3; B)a=b=c+1;C)a=(b=4)+c; D)a=1+(b=

24、c=4); (15) 若有定义语句:int x=12,y=8,z;,在其后执行语句z=0.9+x/y;,则z的值为( )。(2011.9) A)1.9 B)1 C)2 D)2.4DAB考点点拨考点点拨:理解前置运算和后置运算的不同意义理解前置运算和后置运算的不同意义 自增自增(+) 、自减、自减(-)均为单目运算符,右结合,操作数可以是整型变量或均为单目运算符,右结合,操作数可以是整型变量或实型变量,但不能是常量或表达式。前置运算实型变量,但不能是常量或表达式。前置运算(如如+i、-)是先增减后运算,是先增减后运算,后置运算后置运算(如如i+、i-)是先运算后增减。是先运算后增减。考点考点11

25、自增、自减运算及表达式自增、自减运算及表达式真题举例:真题举例:(18)有以下程序main() int x=011; printf(%dn,+x);程序运行后的输出结果是( )(2011.3)A)12 B)11 C)10 D)9C全国计算机二级C语言程序设计考点点拨考点点拨:记逗号运算符的优先级、结合性及求值规则记逗号运算符的优先级、结合性及求值规则 逗号表达式是用逗号运算符逗号表达式是用逗号运算符(,)将两个或两个以上的表达式顺序连接起将两个或两个以上的表达式顺序连接起来的表达式,左结合,逗号运算符优先级最低。从左到右顺序求解各表达来的表达式,左结合,逗号运算符优先级最低。从左到右顺序求解各

26、表达式,也称为顺序求值表达式,结果为最右边表达式的值。注意区分逗号分式,也称为顺序求值表达式,结果为最右边表达式的值。注意区分逗号分隔符和逗号运算符。隔符和逗号运算符。考点考点12逗号运算及表达式逗号运算及表达式真题举例:真题举例:(6)执行以下程序后的输出结果是 。(2007.4)main() int a=10; a=(3*5,a+4); printf(“a=%dn”,a);a=14全国计算机二级C语言程序设计考点点拨考点点拨:理解强制类型转换、自动类型转换理解强制类型转换、自动类型转换 (1)强制类型转换。格式为:强制类型转换。格式为:(类型类型) (表达式表达式),将表达式值的类型强制转

27、,将表达式值的类型强制转换成指定的类型,对表达式中原有变量的类型无影响。换成指定的类型,对表达式中原有变量的类型无影响。 (2)自动类型转换。自动类型转换。 a.赋值运算中的自动转换。赋值运算中的自动转换。 b.混合运算中的自动转换。混合运算中的自动转换。考点考点13类型转换类型转换真题举例:真题举例:(14)表达式:(int)(double)9/2)-(9)%2的值是 ( )。(2009.9) A)0 B)3 C)4 D)5B全国计算机二级C语言程序设计考点点拨考点点拨:掌握关系运算符及表达式的求值掌握关系运算符及表达式的求值 关系运算符有:关系运算符有: = k2)&(k2=k2k1)后,

28、k1和k2的值分别为( )。(2011.9) A)0和1 B)0和20 C)10和1 D)10和20AB考点点拨考点点拨:理解条件表达式的求值方法理解条件表达式的求值方法 条件运算符条件运算符( ? : )是是C语言里唯一的三目运算符,优先级倒数第三,右语言里唯一的三目运算符,优先级倒数第三,右结合。其一般形式是:结合。其一般形式是:表达式表达式1 ? 表达式表达式2 : 表达式表达式3。先求解表达式。先求解表达式1,取,取其逻辑值,若为真,求解表达其逻辑值,若为真,求解表达2作为整个表达式的值;若为假,求解表达式作为整个表达式的值;若为假,求解表达式3的值作为整个表达式的值。各表达式可以为任

29、意类型的合法表达式。的值作为整个表达式的值。各表达式可以为任意类型的合法表达式。考点考点16条件运算符及表达式条件运算符及表达式真题举例:真题举例:19、有如下嵌套的if语句 if(ab) if(ac) k=a; else k=c; else if(bc) k=b; else k=c;以下选项中与上述if语句等价的语句是( ) 。(2010.3)A、k=(ab)?a:b;k=(bc)?b:c; B、k=(ab)?(bc)?a:b):(bc)?b:c);C、k=(ab)?(ac)?a:c):(bc)?b:c); D、k=(ab)?a:b;k=(ac)?a;cC全国计算机二级C语言程序设计考点点拨

30、考点点拨:理解位运算符及其求值规则和优先级顺序理解位运算符及其求值规则和优先级顺序 位运算符有:位运算符有: (同优先级同优先级) & | (按优先级从高到低排列按优先级从高到低排列)。 位运算的操作数必须是整型或字符型,计算时先将操作数转换成二进制,位运算的操作数必须是整型或字符型,计算时先将操作数转换成二进制,然后再低位对齐按运算规则进行计算。然后再低位对齐按运算规则进行计算。考点考点17位运算符及表达式位运算符及表达式真题举例:真题举例:(39)有以下程序#include main() int a=2,b=2,c=2; printf(”%dn”,a|b&c);程序运行后的结果是( )。

31、(2010.3) A)0 B)1 C)2 D)3C全国计算机二级C语言程序设计第3章 顺序结构三、基本语句三、基本语句1.表达式语句,空语句,复合语句。表达式语句,空语句,复合语句。2.输入输出函数的调用,正确输入数据并正确设计输出格式。输入输出函数的调用,正确输入数据并正确设计输出格式。大纲要求重点:大纲要求重点:考点点拨考点点拨:理解理解C语句的概念及分类语句的概念及分类 见教材见教材P57.图图3.14可知:可知:C语句是函数体里的基本构成单位。语句的作语句是函数体里的基本构成单位。语句的作用是向计算机系统发出操作指令,要求执行相应的操作。一个用是向计算机系统发出操作指令,要求执行相应的

32、操作。一个C语句经过编语句经过编译后产生若干条机器指令。译后产生若干条机器指令。C语句可以分成语句可以分成5大类:大类: (1)控制语句控制语句; (2)函数调函数调用语句用语句;(3)表达式语句表达式语句;(4)空语句空语句;(5)复合语句复合语句;考点考点1C语句的分类语句的分类全国计算机二级C语言程序设计考点点拨考点点拨:掌握字符数据的输入输出函数的用法掌握字符数据的输入输出函数的用法 putchar函数用于向显示器输出一个字符。一般格式是:函数用于向显示器输出一个字符。一般格式是:putchar(c);其其中中c可以是字符型或整型常量、变量或表达式,结果是向显示器输出其值对可以是字符型

33、或整型常量、变量或表达式,结果是向显示器输出其值对应的应的ASCII码字符。码字符。 getchar函数用于从键盘输入缓冲区读取一个字符。一般格式是:函数用于从键盘输入缓冲区读取一个字符。一般格式是:getchar()。一般用法:。一般用法:ch=getchar(); 将从键盘输入的一个字符值赋给变量将从键盘输入的一个字符值赋给变量ch。从键盘输入的空格、回车等控制字符也作为有效字符读取。从键盘输入的空格、回车等控制字符也作为有效字符读取。考点考点2putchar函数和函数和getchar函数函数真题举例:真题举例:(10)下列程序运行时,若输入1abcedf2df 输出结果为 。#inclu

34、de main() char a=0,ch; while(ch=getchar()!=n) if (a%2!=0&(ch=a&ch=z) ch=ch-a +A; a+;putchar(ch); printf(“n”);1AbCdEf2dF全国计算机二级C语言程序设计考点点拨考点点拨:掌握格式化输出、输入函数的用法及注意事项掌握格式化输出、输入函数的用法及注意事项 printf(“格式控制字符串格式控制字符串”,输出表列输出表列); scanf(“格式控制字符串格式控制字符串”,输入地址表列输入地址表列);l“格式控制字符串格式控制字符串”中允许有两类字符:中允许有两类字符:u普通字符。在普通字

35、符。在printf函数中会原样输出,在函数中会原样输出,在scanf函数中要求原样输入。函数中要求原样输入。u格式字符。由格式字符。由“%+格式字符格式字符”,用于指定输出、输入项的格式。,用于指定输出、输入项的格式。常用格常用格式字符有式字符有(教材教材P74:表表3.6、表、表3.7;P76:表表3.8、表、表3.9):整数类型整数类型十进制有符号类型:十进制有符号类型:%d %md %-md %ld %mld %-mld十进制无符号类型:十进制无符号类型:%u八进制无符号类型:八进制无符号类型:%o十六进制无符号类型:十六进制无符号类型:%x %X实数类型实数类型小数格式:小数格式:%f

36、 %.nf %m.nf %-m.nf指数格式:指数格式:%e %E简洁格式:简洁格式:%g %G (根据输出数据大小自动选择小数或指数根据输出数据大小自动选择小数或指数格式,且不输出无意义的零格式,且不输出无意义的零)字符类型字符类型字符格式:字符格式:%c %mc字符串格式:字符串格式:%s %.ns %m.ns 考点考点3printf函数和函数和scanf函数函数全国计算机二级C语言程序设计考点点拨考点点拨:掌握格式化输出、输入函数的用法及注意事项掌握格式化输出、输入函数的用法及注意事项lprintf函数中的函数中的“输出表列输出表列”可以没有。若有,可以是常量、变量或可以没有。若有,可以

37、是常量、变量或表达式,将其值按对应的格式输出;若有多项,以逗号分开。其他说明表达式,将其值按对应的格式输出;若有多项,以逗号分开。其他说明见教材见教材P75。lscanf函数中的函数中的“地址表列地址表列”必须为变量的地址,多个地址之间以逗必须为变量的地址,多个地址之间以逗号分开。注意的问题见教材号分开。注意的问题见教材P7677。真题举例:真题举例:(15)程序段:int x=12; double y=3.141593; printf(“%d%8.6f”, x, y);的输出结果是( )。(2009.3) A)123.141593 B)12 3.141593 C)12, 3.141593 D

38、)123.1415930(16)若有定义语句:double x, y,*px,*py; 执行了px=&x; py=&y;之后,正确的输入语句是( )。(2009.3) A)scanf(“%f%f”,x,y); B)scanf(“%f%f”,&x,&y); C)scanf(“%lf%le”,px,py); D)scanf(“%lf%lf”,x,y);CA考点考点3printf函数和函数和scanf函数函数全国计算机二级C语言程序设计第4章 选择结构四、选择结构程序设计四、选择结构程序设计1.用用if语句实现选择结构。语句实现选择结构。2.用用switch语句实现多分支选择结构。语句实现多分支选择

39、结构。3.选择结构的嵌套。选择结构的嵌套。大纲要求重点:大纲要求重点:考点点拨考点点拨:掌握三种掌握三种if语句的执行过程语句的执行过程 if语句的功能是判断所给的条件,选择执行其中一个操作。语句的功能是判断所给的条件,选择执行其中一个操作。if语句的一般语句的一般形式形式 if(表达式表达式) 语句语句1 else 语句语句2 常用三种形式是单分支、双分支和多分支常用三种形式是单分支、双分支和多分支(祥见教材祥见教材P89) 。l 表达式可以是任意类型的表达式,取其值的逻辑值表达式可以是任意类型的表达式,取其值的逻辑值(非零为真,零为假非零为真,零为假)l if或或else只能控制其后的一条

40、语句,该语句可以是五大类语句中的任意只能控制其后的一条语句,该语句可以是五大类语句中的任意一种。一种。考点考点1if语句的三种形式及执行过程语句的三种形式及执行过程全国计算机二级C语言程序设计真题举例:真题举例:(18)有以下程序 #includemain() int a=1,b=0; if(!a) b+; else if(a=0) if(a) b+=2; else b+=3; printf(”%dn”,b);程序运行后的输出结果是 ( )。(2010.9)A)0B)1C)2D)3(18)有以下程序 #include main() int x; scanf(“%d”,&x); if (x=3)

41、 ; else if(x!=10) printf(“ %dn”,x); 程序运行时,输入的值在哪个范围才会有输出结果( )。(2009.3) A)不等于10的整数 B)大于3且不等10的整数 C)大于3或等于10的整数 D)小于3的整数CA全国计算机二级C语言程序设计考点点拨考点点拨:掌握嵌套掌握嵌套if语句的执行,及语句的执行,及else与与if的配对的配对 嵌套嵌套if指一般格式中指一般格式中if或或else的控制语句又是的控制语句又是if语句。注意语句。注意if可以单独使用,可以单独使用,而而else必须和必须和if配对使用,且配对使用,且else总是和它上面的最近的未曾配对的总是和它上

42、面的最近的未曾配对的if进行配进行配对,从而在配对的对,从而在配对的if后的条件为假时执行该后的条件为假时执行该else之后的语句。之后的语句。考点考点2嵌套的嵌套的if语句语句真题举例:真题举例:(27)有以下程序#include main() int x=1,y=0; if(!x) y+; else if(x=0) if (x) y+=2; else y+=3; printf(%dn,y);程序运行后的输出结果是( )。 (2011.3)A)3 B)2 C)1 D) 0D全国计算机二级C语言程序设计考点点拨考点点拨:switch语句的格式及其执行、跳转的过程语句的格式及其执行、跳转的过程

43、switch语句又称开关语句,一般用于实现多分支选择。语句又称开关语句,一般用于实现多分支选择。switch语句的一语句的一般形式及执行见教材般形式及执行见教材P103。注意:。注意:uswitch后的表达式值的类型一般为整型或字符型后的表达式值的类型一般为整型或字符型ucase子句后的常量必须为简单的整型或字符型常量子句后的常量必须为简单的整型或字符型常量u当执行完一个分支的执行语句后没有遇到当执行完一个分支的执行语句后没有遇到break,将继续执行下一分支的,将继续执行下一分支的执行语句执行语句uswitch语句可以嵌套,语句可以嵌套,break在在switch中的作用是跳出所在的中的作用

44、是跳出所在的switch语句语句考点考点3switch语句的形式及用法语句的形式及用法真题举例:真题举例:18、以下选项中与if(a=1) a=b;else a+;语句功能不同的switch语句是:( )(2010.3)A、switch(a) B、switch(a=1) case 1:a=b;break; case 0 : a=b;break; default : a+; case 1 : a+; C、switch(a) D、switch(a=1) default : a+;break; case 1:a=b;break; case 1:a=b; case 0: a+; B全国计算机二级C语言

45、程序设计第5章 循环结构五、循环结构程序设计五、循环结构程序设计1.for循环结构。循环结构。2.while和和do-while循环结构。循环结构。3.continue语句和语句和break语句。语句。4.循环的嵌套。循环的嵌套。大纲要求重点:大纲要求重点:考点点拨考点点拨:理解理解while循环的执行过程及应用循环的执行过程及应用 while语句构成的循环称为语句构成的循环称为“当型当型”循环,其一般形式是:循环,其一般形式是: while(表达式表达式) 语句语句 表达式可以是表达式可以是C语言中任意类型的合法表达式,取其值的逻辑值。语句也语言中任意类型的合法表达式,取其值的逻辑值。语句也

46、可以是五大类语句任意之一,但只能控制其后的一条语句。循环体有可能一可以是五大类语句任意之一,但只能控制其后的一条语句。循环体有可能一次也不执行。次也不执行。考点考点1while语句的形式及执行过程语句的形式及执行过程全国计算机二级C语言程序设计真题举例:真题举例:(20)有以下程序#include main() int a=1,b=2; while(a6)b+=a;a+=2;b=10; printf(”d,dn”,a,b);程序运行后的输出结果是( )。(2010.9)A)5,11B)7,1C)7,11D)6,1(26)有以下程序段#include main() while( getchar(

47、)!=n) ; 以下叙述中正确的是( )。(2011.3)A) 此while语句将无限循环B) getchar()不可以出现在while语句的条件表达式中C) 当执行此while语句时,只有按回车键程序才能继续执行D) 当执行此while语句时,按任意键程序就能继续执行BC全国计算机二级C语言程序设计考点点拨考点点拨:理解理解dowhile循环的执行过程及应用循环的执行过程及应用 dowhile语句构成的循环称为语句构成的循环称为“直到型直到型”循环,其一般形式是:循环,其一般形式是: do 语句语句 while(表达式表达式); 其特点是先执行循环体再判断循环条件,循环体至少执行一次。注意其

48、特点是先执行循环体再判断循环条件,循环体至少执行一次。注意while之后的分号不能少。之后的分号不能少。考点考点2dowhile语句的形式及执行过程语句的形式及执行过程真题举例:真题举例:(9)以下程序运行后的输出结果是【9】 。 #include main() inta=1,b=7; do b=b/2; a+=b; while(b1); printf(%dn,a); 5全国计算机二级C语言程序设计考点点拨考点点拨:理解理解for循环的执行过程及应用循环的执行过程及应用 for语句的一般形式是:语句的一般形式是: for(表达式表达式1;表达式表达式2;表达式表达式3) 语句语句 for中的三

49、个表达式可以是任意合法的中的三个表达式可以是任意合法的C语言表达式,表达式语言表达式,表达式1在进入循环在进入循环的进修执行一次,一般是给循环变量赋初值;表达式的进修执行一次,一般是给循环变量赋初值;表达式2取其逻辑值作为循环取其逻辑值作为循环条件;表达式条件;表达式3在执行循环体后才执行,一般是使循环条件趋于假的运算。在执行循环体后才执行,一般是使循环条件趋于假的运算。三个表达式均可以省略,但分号不能省。三个表达式均可以省略,但分号不能省。考点考点3for语句的形式及执行过程语句的形式及执行过程真题举例:真题举例:(21)有以下程序 #includes main() int a=1,b=2;

50、 for(;a8;a+) b+=a; a+=2; printf (”%d,%dn”,a,b); 程序运行后的输出结果是 ( )。(2010.3) A)9,18 B)8,11 C)7,11 D)10,14D全国计算机二级C语言程序设计考点点拨考点点拨:理解循环嵌套的几种形式及执行过程理解循环嵌套的几种形式及执行过程 循环体内又完整地包含了另一个循环,称循环嵌套。前三种循环语句可以循环体内又完整地包含了另一个循环,称循环嵌套。前三种循环语句可以相互嵌套,可多层嵌套。嵌套循环在执行时外循环执行一次内循环要执行一相互嵌套,可多层嵌套。嵌套循环在执行时外循环执行一次内循环要执行一遍。书写上一般采用缩进形

51、式,使程序层次分明,可读性强。遍。书写上一般采用缩进形式,使程序层次分明,可读性强。考点考点4循环嵌套的形式及执行过程循环嵌套的形式及执行过程真题举例:真题举例:(20)以下程序段中的变量已正确定义 for( i=0; i4; i+,i+) for( k=l; k3; k+);printf(“*”); 程序段的输出结果是( )。(2009.3) A)* B)* C)* D)*D全国计算机二级C语言程序设计考点点拨考点点拨:掌握掌握break和和continue语句在循环体中的应用语句在循环体中的应用 break语句的作用是退出所在的循环体,在循环体中使用可增加循环的出语句的作用是退出所在的循环

52、体,在循环体中使用可增加循环的出口,使循环更灵活口,使循环更灵活 。break只能用于只能用于switch或循环语句中。或循环语句中。 continue语句的作用是结束本层本次的循环,转去执行下一次的循环处语句的作用是结束本层本次的循环,转去执行下一次的循环处理。理。continue语句只能用于循环体中。语句只能用于循环体中。考点考点5break语句和语句和continue语句语句全国计算机二级C语言程序设计第6章 数组六、数组的定义和引用六、数组的定义和引用1.一维数组和二维数组的定义、初始化和数组元素的引用。一维数组和二维数组的定义、初始化和数组元素的引用。2.字符串与字符数组。字符串与字

53、符数组。大纲要求重点:大纲要求重点:考点点拨考点点拨:掌握一维数组的定义方式及初始化的定义形式掌握一维数组的定义方式及初始化的定义形式l一维数组的定义方式:一维数组的定义方式: 数据类型数据类型 数组名数组名常量表达式常量表达式; 常量表达式规定了数组元素的个数常量表达式规定了数组元素的个数(或长度或长度),整个数组,整个数组所占字节数所占字节数=类型类型长度长度数组长度数组长度;常量表达式中可以包括整型常量和符号常量;在给全部元;常量表达式中可以包括整型常量和符号常量;在给全部元素赋初值时可以省略定义时的数组长度说明。素赋初值时可以省略定义时的数组长度说明。l一维数组初始化的一般形式:一维数

54、组初始化的一般形式: 数据类型数据类型 数组名数组名常量表达式常量表达式=值值0,值值1,值值2,; 初值的个数不能超过数组的长度初值的个数不能超过数组的长度; 可以只给部分元素赋初值,未赋初值元可以只给部分元素赋初值,未赋初值元素默认值为素默认值为0; 考点考点1一维数组的定义和初始化一维数组的定义和初始化全国计算机二级C语言程序设计真题举例:真题举例:(28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )(2010.9)A)int a5=0;B)int b=0,0,0,0,0;C)int c2+3;D)int i=5,di;D考点点拨考点点拨:掌握一维数组元素的引用形式掌握

55、一维数组元素的引用形式l一维数组元素的引用形式:一维数组元素的引用形式: 数组名数组名下标表达式下标表达式 下标表达式可以是整型的常量、变量或表达式。数组名代表数组内存空下标表达式可以是整型的常量、变量或表达式。数组名代表数组内存空间的起始地址,不能企图用数组名引用全部数组元素。间的起始地址,不能企图用数组名引用全部数组元素。C语言规定,数组的语言规定,数组的下标从下标从0开始,因其开始,因其下标的有效范围为下标的有效范围为0 长度长度-1。C系统不会对数组的下标进行越系统不会对数组的下标进行越界检查。在程序中一般用单重界检查。在程序中一般用单重for循环控制元素下标引用所有元素。循环控制元素

56、下标引用所有元素。考点考点2一维数组元素的引用一维数组元素的引用真题举例:真题举例:(29)有以下程序 #include main() int a5=1,2,3,4,5, b5=0,2,1,3,0,i,s=0; for(i=0;i5;i+) s=s+abi; printf(%dn,s); 程序运行后的输出结果是 ( )。(2010.3) A) 6 B) 10 C) 11 D)15C全国计算机二级C语言程序设计考点点拨考点点拨:掌握二维数组的定义方式及初始化的定义形式掌握二维数组的定义方式及初始化的定义形式l二维数组的定义方式:二维数组的定义方式: 数据类型数据类型 数组名数组名常量表达式常量表

57、达式1 常量表达式常量表达式2 ; 二维数组一般用于存储矩阵,常量表达式二维数组一般用于存储矩阵,常量表达式1为矩阵行数,常量表达式为矩阵行数,常量表达式2为为矩阵列数。二维数组元素在内存中是按行存放的,各元素在内存中所占的字矩阵列数。二维数组元素在内存中是按行存放的,各元素在内存中所占的字节数节数=行数行数列数列数类型长度类型长度l二维数组初始化的方法有:二维数组初始化的方法有:u按行赋初值按行赋初值u按元素排列顺序赋初值按元素排列顺序赋初值u部分元素赋值部分元素赋值u全部元素赋值可省略常量表达式全部元素赋值可省略常量表达式1的说明,省略的长度由初始值个数确定的说明,省略的长度由初始值个数确

58、定考点考点3二维数组的定义和初始化二维数组的定义和初始化真题举例:真题举例:(26)以下定义数组的语句中错误的是( )。(2011.9) A) int num=1,2,3,4,5,6; B) int num3=1,2,3,4,5,6; C) int num24=1,2,3,4,5,6; D) int num4=1,2,3,4,5,6;C全国计算机二级C语言程序设计考点点拨考点点拨:掌握二维数组元素的引用形式掌握二维数组元素的引用形式l二维数组元素的引用形式:二维数组元素的引用形式: 数组名数组名下标表达式下标表达式1下标表达式下标表达式2 各维下标均从各维下标均从0开始,且为整数类型,不得越界

59、。在程序中一般用双重开始,且为整数类型,不得越界。在程序中一般用双重for循环控制两维下标访问元素。若外循环控制行下标、内循环控制列下标则循环控制两维下标访问元素。若外循环控制行下标、内循环控制列下标则按行序访问元素;若外循环控制列下标、内循环控制行下标则按列序访问元按行序访问元素;若外循环控制列下标、内循环控制行下标则按列序访问元素。素。考点考点4二维数组元素的引用二维数组元素的引用真题举例:真题举例:(11) 有以下程序#include main() int a33=1,2,3,4,5,6,7,8,9; int b3=0,i; for(i=0;i3;i+) bi=ai2+a2i; for(

60、i=0;i3;i+) printf(”%d”,bi); printf(”n”);程序运行后的结果是 。(2010.3)101418全国计算机二级C语言程序设计考点点拨考点点拨:掌握字符数组的定义及初始化形式掌握字符数组的定义及初始化形式l在在C语言中只有字符变量,没有字符串变量,通常用字符数组来存储字符串。一维语言中只有字符变量,没有字符串变量,通常用字符数组来存储字符串。一维数组存储一个字符串,二维数组中的一行存储一个字符串。字符数组的定义:数组存储一个字符串,二维数组中的一行存储一个字符串。字符数组的定义:u char s180,s2580; u 字符数组的存储同数值数组,区别在于每个元素

61、都是一个字符变量,只分配字符数组的存储同数值数组,区别在于每个元素都是一个字符变量,只分配一个字节存储空间,可以存储一个字符的一个字节存储空间,可以存储一个字符的ASCII码值。码值。l字符数组的初始化有两种形式:字符数组的初始化有两种形式:u 逐个字符赋初值逐个字符赋初值,如:如:char s180=a,b,c,d,e;未赋初值元素默认未赋初值元素默认0值值u 用字符串赋初值用字符串赋初值,如:如:char s180=“abcde”,s2 =“abcde”; 数组数组s1占占80B,数组数组s2占占6B(注意系统自动在字符串末尾加结束标记注意系统自动在字符串末尾加结束标记0)。l二维字符数组

62、赋初值:二维字符数组赋初值: char ss480=“abc”,”abcde”,”xyz”,”1234”;,一个字,一个字符串占一行。二维数组的定义中第一维大小决定了字符串的个数,第二维大小决定了符串占一行。二维数组的定义中第一维大小决定了字符串的个数,第二维大小决定了各字符串的最大长度。各字符串的最大长度。考点考点5字符数组的定义及初始化字符数组的定义及初始化真题举例:真题举例:(23)有以下程序 #include#includemain() char x”STRING”; x0=0; x10; x20; printf( ”%d %dn”, sizeof(x), strlen(x);程序运行

63、后的输出结果是( )。(2010.9)A)6 1B)7 0C)6 3D)7 1B全国计算机二级C语言程序设计考点点拨考点点拨:掌握字符数组掌握字符数组(字符串字符串)的输入输出方法的输入输出方法l字符数组字符数组(字符串字符串)的输入的输入/输出一般有以下三种方法:输出一般有以下三种方法:u%c字符格式字符格式:在:在printf或或scanf函数中使用,其函数中使用,其I/O对象是单个元素,一般结合对象是单个元素,一般结合循环使用。循环使用。u%s字符串格式字符串格式:在:在printf或或scanf函数中使用,其函数中使用,其I/O对象是数组名所代表的地对象是数组名所代表的地址址(一维数组

64、名字代表它的存储空间的首地址,二维数组名带第一维下标代表所一维数组名字代表它的存储空间的首地址,二维数组名带第一维下标代表所在行的首地址在行的首地址),可以整体输入,可以整体输入/输出字符串。输出字符串。在在scanf函数中接收以空格或回车函数中接收以空格或回车结束的字符串结束的字符串。u字符串处理函数字符串处理函数gets或或puts:gets接收以回车结束的字符串接收以回车结束的字符串;puts输出一个输出一个以以0结束的字符串,且回车换行。其参数均为字符数组的名字。结束的字符串,且回车换行。其参数均为字符数组的名字。考点考点6字符数组字符数组(字符串字符串)的输入和输出的输入和输出真题举

65、例:真题举例:(34)有以下程序(二维字符数组) #include main() char ch 35=AAAA“,BBB“,CC); printf (sn,ch1); 程序运行后的输出结果是( )。(2011.9) A)AAAA B)CC C)BBBCC D)BBBD全国计算机二级C语言程序设计考点点拨考点点拨:掌握各常用的字符串处理函数的应用掌握各常用的字符串处理函数的应用l常用的字符串处理函数有常用的字符串处理函数有(需包含需包含string.h头文件头文件):(教材教材P162-164)ustrcpy(s1,s2)字符串拷贝函数字符串拷贝函数:将:将s2中的内容复制到字符数组中的内容复

66、制到字符数组s1中去中去ustrncpy(s1,s2,n)拷贝子串函数拷贝子串函数:将:将s2中的前中的前n个字符拷贝到个字符拷贝到s1中中ustrcat(s1,s2)字符串连接函数字符串连接函数:将:将s2连接在连接在s1的末尾的末尾ustrcmp(s1,s2)字符串比较函数字符串比较函数:从左到右逐个字符比较两个字符串的大小:从左到右逐个字符比较两个字符串的大小ustrlen(str)求字符函数串长度求字符函数串长度:求字符数组:求字符数组str中第一个中第一个0字符之前的字符字符之前的字符个数个数考点考点7字符串处理函数字符串处理函数真题举例:真题举例:(31)下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST要求的是( )(2010.9)A) if(strcmp(s2,s1)=0) ST;B) if(*sl=s2) ST;C) if(strcpy(sl ,s2)=1) ST;D) if(sl-s2=0) ST;A全国计算机二级C语言程序设计第7章 函数七、函数七、函数1.库函数的正确调用。库函数的正确调用。2.函数的定义方法。函数的定义方法。3.函数的类型和返回值。函

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!