版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、全国计算机等级考试二级全国计算机等级考试二级Email: 主讲:胡晓丽高频考点高频考点Company Logo考试方式考试方式机试:机试:120分钟,满分分钟,满分100分。分。(2)程序填空题()程序填空题(18分)分)(3)程序改错题()程序改错题(18分)分)(3)程序设计题()程序设计题(24分)分)(1)选择题()选择题(40分)分)Company Logo考试大纲考试大纲 基本要求基本要求1.熟悉熟悉 Visual C+ 6.0 集成开发环境。集成开发环境。2.掌握结构化程序设计的方法,具有良好的程掌握结构化程序设计的方法,具有良好的程序设计风格。序设计风格。3.掌握程序设计中简单
2、的数据结构和算法并能掌握程序设计中简单的数据结构和算法并能阅读简单的程序。阅读简单的程序。4.在在 Visual C+ 6.0 集成环境下,能够编集成环境下,能够编写简单的写简单的C程序,并具有基本的纠错和调试程序程序,并具有基本的纠错和调试程序的能力的能力Company Logo目录目录1.程序设计基本概念程序设计基本概念2.C程序设计的初步知识程序设计的初步知识3.顺序结构顺序结构4.选择结构选择结构5.循环结构循环结构6.字符型数据字符型数据7.函数函数8课时课时目录目录9.数组数组10.字符串字符串11.对函数的进一步讨论对函数的进一步讨论12.用户标识符的作用域和存储类用户标识符的作
3、用域和存储类13.编译预处理和动态存储分配编译预处理和动态存储分配14.结构体、共用体和用户定义类型结构体、共用体和用户定义类型15.位运算位运算16.文件文件8.地址和指针地址和指针2课时课时8课时课时1课时课时1课时课时Company Logo第第1章程序设计基本概念章程序设计基本概念Top1:各种:各种“程序程序”的概念的概念Top3:结构化程序设计:结构化程序设计Top2:算法的特性:算法的特性C程序的上机步骤程序的上机步骤Company Logo什么是程序?什么是程序?Top1:各种:各种“程序程序”的概念的概念人们把需要用计算机完成的工作写成一条条指令,并把这些指令存储在内存中,当
4、人们给出执行命令后,计算机就按指令顺序自动进行操作。这些可以连续执行的一条条指令的集合称为“程序”。Company Logo机器语言汇编语言高级语言面向过程面向对象程序设计语言的发展程序设计语言的发展Top1:各种:各种“程序程序”的概念的概念Company Logo程序的程序的“转换转换”机器语言机器语言汇编语言汇编语言高级语言高级语言C语言语言编译编译汇编汇编源程序源程序目标程序目标程序.OBJTop1:各种:各种“程序程序”的概念的概念可执行程序可执行程序.exe链接链接二进制语言二进制语言Company LogoTop1:各种:各种“程序程序”的概念的概念v真题分析真题分析v(2013
5、年年3月)月)DCompany LogoTop1:各种:各种“程序程序”的概念的概念v真题分析真题分析v(2007年年4月)下列叙述中错误的是月)下列叙述中错误的是vA、计算机不能直接执行用、计算机不能直接执行用C语言编写的源程序语言编写的源程序vB、C程序经编译后,生成后缀为程序经编译后,生成后缀为.Obj的文件是一的文件是一个二进制文件个二进制文件vC、后缀为、后缀为.Obj的文件,经连接程序生成后缀的文件,经连接程序生成后缀为为.Exe的文件是一个二进制文件的文件是一个二进制文件vD、后缀为、后缀为.Obj和和.Exe的二进制文件都可以直接运的二进制文件都可以直接运行行DCompany
6、LogoTop1:各种:各种“程序程序”的概念的概念v真题分析真题分析v(2006年年4月)以下叙述中错误的是月)以下叙述中错误的是vA、C语言源程序经编译后生成后缀为语言源程序经编译后生成后缀为.OBJ的目的目标程序标程序vB、C程序经过编译、连接步骤之后才能形成一个程序经过编译、连接步骤之后才能形成一个真正可以执行的二进制机器指令文件真正可以执行的二进制机器指令文件vC、用、用C语言编写的程序称为源程序,它以语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中代码形式存放在一个文本文件中vD、C语言中的每条可执行语句和非执行语句最终语言中的每条可执行语句和非执行语句最终都将
7、转换成二进制的机器指令都将转换成二进制的机器指令D只有二进制语句才最终被转换只有二进制语句才最终被转换成二进制机器指令成二进制机器指令Company LogoTop1:各种:各种“程序程序”的概念的概念v真题分析真题分析v(2007年年9月)月)C语言源程序的后缀是语言源程序的后缀是vA、.exevB、.cvC、.objvD、.cpBCompany LogoTop2:算法的特性:算法的特性什么是算法?什么是算法?算法是指为解决某个特定问题而采取的确定且有限的步骤。?Company Logo算法应具有以下五个特点:算法应具有以下五个特点:1有穷性:一有穷性:一个算法包含个算法包含的步骤是有的步骤
8、是有限的。即在限的。即在若干个步骤若干个步骤后结束,并后结束,并且每一步都且每一步都在合理时间在合理时间内完成内完成2确定性:算法确定性:算法中每一条指令中每一条指令必须有确切的必须有确切的含义,不能有含义,不能有二义性,对于二义性,对于相同的输入必相同的输入必能得出相同的能得出相同的执行结果。执行结果。3可行性:算法可行性:算法中指定的操作,中指定的操作,都可以通过已都可以通过已经验证可以实经验证可以实现的基本运算现的基本运算执行有限次后执行有限次后实现。实现。5有一个或多个有一个或多个输出:算法的输出:算法的目的是为了求目的是为了求解。这些解。这些“解解”只有通过输出只有通过输出得到。得到
9、。4有零个或多个有零个或多个输入:算法都输入:算法都是用来处理数是用来处理数据对象的,通据对象的,通常情况下这些常情况下这些数据对象需要数据对象需要通过输入来得通过输入来得到。到。Top2:算法的特性:算法的特性Company Logo如何评价算法?如何评价算法?时间复杂度时间复杂度1空间复杂度空间复杂度2对算法的要求有:必须是正确的,必须能高效率执行,即占用内存空间少,所需运行时间短。于是,对算法的评价可以从两个方面进行:Top2:算法的特性:算法的特性Company LogoTop2:算法的特性:算法的特性v真题分析真题分析v(2013年年3月)月)ACompany LogoTop2:算法
10、的特性:算法的特性v真题分析真题分析v(2007年年4月)算法中,对需要执行的每一步骤月)算法中,对需要执行的每一步骤操作,必须给出清楚、严格的规定,这属于算法操作,必须给出清楚、严格的规定,这属于算法的是的是vA、正当性、正当性vB、可行性、可行性vC、确定性、确定性vD、有穷性、有穷性CCompany LogoTop2:算法的特性:算法的特性v真题分析真题分析v(2006年年4月)以下叙述中错误的是月)以下叙述中错误的是vA、算法正确的程序最终一定会结束、算法正确的程序最终一定会结束vB、算法正确的程序可以有零个输出、算法正确的程序可以有零个输出vC、算法正确的程序可以有零个输入、算法正确
11、的程序可以有零个输入vD、算法正确的程序对于相同的输入一定有相同、算法正确的程序对于相同的输入一定有相同的结果的结果B算法必须有一个或多个输出算法必须有一个或多个输出Company LogoTop3:结构化程序设计和模块化结构:结构化程序设计和模块化结构执行时按顺序逐条执行,没有分支,没有转移。可由赋值语句、输入/输出语句等构成。顺序结构顺序结构根据不同的条件执行不同分支中的语句。可由if语句、switch语句等构成。选择结构选择结构根据各自的条件使一组语句重复执行多次或一次也不执行。可由for语句、while语句等构成。循环结构循环结构Company Logo什么是模块化结构?什么是模块化结
12、构?将复杂任务分解成若干个子任务,每个子任务又可分解成多个小子任务,每个小子任务只需完成一个简单的功能。在程序设计时用一个小模块实现这些功能。称这样的程序设计方法为“模块化”方法,由一个个功能模块构成的程序结构为模块化结构。Top3:结构化程序设计和模块化结构:结构化程序设计和模块化结构Company LogoTop3:结构化程序设计和模块化结构:结构化程序设计和模块化结构v真题分析真题分析v(2007年年4月)以下叙述中错误的是月)以下叙述中错误的是vA、C语言是一种结构化的程序设计语言语言是一种结构化的程序设计语言vB、结构化程序由顺序、分支、循环三种基本结构、结构化程序由顺序、分支、循环
13、三种基本结构组成组成vC、使用三种基本结构构成的程序只能解决简单问、使用三种基本结构构成的程序只能解决简单问题题vD、结构化程序设计提倡模块化的设计方法、结构化程序设计提倡模块化的设计方法CCompany Logo开始开始结束结束编辑编辑编译编译连接连接运行运行运行结果运行结果可执行文件可执行文件 (.exe)源程序文件源程序文件 (.c) 目标文件目标文件 (.obj)图图 C程序上机调试过程程序上机调试过程此两种代码此两种代码不能执行不能执行C程序的上机步骤程序的上机步骤Company Logo第第2章章C程序设计的初步知识程序设计的初步知识Top4:C程序的结构和格式程序的结构和格式To
14、p5:标识符的命名规则:标识符的命名规则Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则Top7:基本类型数据的相互转换:基本类型数据的相互转换Top8:常见算术运算符的使用:常见算术运算符的使用Top9:算术运算符的优先级顺序:算术运算符的优先级顺序Top12:自加自减运算符:自加自减运算符Top10:赋值表达式的求值规则:赋值表达式的求值规则Top11:逗号表达式的求值规则:逗号表达式的求值规则Company Logo例例2.1 2.1 第一个程序第一个程序 Hello,World! Hello,World!/* example1.1 The first C Progr
15、am*/#include main() printf(“Hello,World!”);注释编译预处理函数语句输出:Hello,World!Top4:C语言程序的构成和格式语言程序的构成和格式Company Logo 格式特点格式特点 习惯用小写字母,大小写敏感习惯用小写字母,大小写敏感 不使用行号,无程序行概念不使用行号,无程序行概念 可使用空行和空格可使用空行和空格 常用锯齿形书写格式常用锯齿形书写格式main( ) . . . . . . .main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;jb _above $123M.D.
16、John3days#33char$123ab如何命名标识符?如何命名标识符?Company LogoTop5:标识符的命名规则:标识符的命名规则v真题分析真题分析v(2013年年3月)月)ACompany LogoTop5:标识符的命名规则:标识符的命名规则v真题分析真题分析v(2013年年3月)月)DCompany LogoTop5:标识符的命名规则:标识符的命名规则v真题分析真题分析v(2007年年9月)可在月)可在C程序中用做用户标识符的程序中用做用户标识符的一组标识符是一组标识符是ATop5:标识符的命名规则:标识符的命名规则v真题分析真题分析v(2009年年4月)以下选项中合法的标识
17、符是月)以下选项中合法的标识符是vA)1_1vB)1-1vC)_11vD)1_ _Company LogoCCompany Logo 一般用大写字母 是宏定义预处理命令,不是C语句 直接常量: 整型常量 实型常量 字符常量 字符串常量如 #define PRICE 30 常量常量 定义:程序运行时其值不能改变的量(即常数)定义:程序运行时其值不能改变的量(即常数) 分类分类: : 符号常量符号常量: :用标识符代表常量用标识符代表常量 定义格式:定义格式: #define #define 符号常量符号常量 常量常量例 符号常量举例#define PRICE 30main() int num,t
18、otal; num=10; total=num*PRICE; printf(total=%d,total);运行结果:total=300Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则Company Logo 整型常量的类型 根据其值所在范围确定其数据类型 在整常量后加字母l或L,认为它是long int 型常量&整型常量(整常数)整型常量(整常数)&三种形式:三种形式:&十进制整数:由数字十进制整数:由数字0909和正负号表示和正负号表示. .如如 123,-456,0 123,-456,0&八进制整数:由数字八进制整数:由数字0 0开头开
19、头, ,后跟数字后跟数字0707表示表示. .如如0123,0110123,011&十六进制整数:由十六进制整数:由0 x0 x开头开头, ,后跟后跟09,af,AF09,af,AF表示表示. . 如如0 x123,0Xff0 x123,0XffTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则32767327680012 016 0 x10 0X23FD0568 o45 ox12t -0X12只能是正数只能是正数Company Logo&实型常量(实数或浮点数)实型常量(实数或浮点数)&表示形式:表示形式:&十进制数形式:(必须有小数点)十进
20、制数形式:(必须有小数点) 如如0.123, .123, 0.123, .123, 123.0, 0.0, 123.123.0, 0.0, 123.&指数形式:(指数形式:(e e或或E E之前必须有数字;指数必须为整之前必须有数字;指数必须为整数)如数)如12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-3.5 3.5 实型常量的类型 默认double型 在实型常量后加字母f或F,认为它是float 型Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则X在内存中,实数一律是以指
21、数形式存储的在内存中,实数一律是以指数形式存储的1计算机中存储整数不会出现误差,存储实型数往往存入误差。计算机中存储整数不会出现误差,存储实型数往往存入误差。2Company Logo44&字符常量字符常量&定义定义: :用单引号括起来的单个普通字符或转义字符用单引号括起来的单个普通字符或转义字符. . 字符常量的值:该字符的ASCII码值例:A-101-x41-65如 A65, a97, 048 , n10如 a A ? n 101 转义字符:反斜线后面跟一个字符或一个代码值表示Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则 字符常量与字符串常量不同&a
22、mp;字符串常量字符串常量&定义:用双引号定义:用双引号(“”)(“”)括起来的字符序列括起来的字符序列&存储:每个字符串尾自动加一个存储:每个字符串尾自动加一个 0 0 作为字符作为字符串结束标志串结束标志h e l l o 0例 字符串“hello”在内存中a a 0例 a“a”例 空串 “”0例: char ch; ch=“A”; 例: char ch; ch=A; Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则Company Logo 变量变量 概念:其值可以改变的量概念:其值可以改变的量 变量的定义变量的定义 变量初始化变量初始化:定义时赋初值定
23、义时赋初值 变量的使用:先定义,后使用变量的使用:先定义,后使用 变量定义位置:一般放在函数开头变量定义位置:一般放在函数开头 int x,y,z;x=y=z=1;Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则例: int a=2,b,c=4; float data=3.67; char ch=A; int x=y=z=1;Company Logo&整型变量&占字节数随机器不同而不同,一般占一个机器字&shortintlong&可用sizeof(类型标识符)测量&实型变量&float:占4字节,提供7位有效数字&do
24、uble:占8字节,提供1516位有效数字&字符型变量&字符变量存放字符ASCII码&char与int数据间可进行算术运算没有字符串变量,用字符数组存放Top6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则Company LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)BCompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)DCompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型
25、及其定义规则v真题分析真题分析v(2013年年3月)月)ACompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)ACompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)ACompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)DCompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3
26、月)月)DCompany LogoTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2013年年3月)月)DTop6:C语言基本数据类型及其定义规则语言基本数据类型及其定义规则v真题分析真题分析v(2005年年9月)以下程序运行后的输出结果是月)以下程序运行后的输出结果是v main( ) int x=0210; printf(%Xn,x);0210010八进制数八进制数001000000880二进制数二进制数88Company Logo 隐式转换 什么情况下发生 运算转换-不同类型数据混合运算时 赋值转换-把一个值赋给与其类型不同的变量时 输出转换-输
27、出时转换成指定的输出格式 函数调用转换-实参与形参类型不一致时转换 运算转换规则:不同类型数据运算时先自动转换成同一类型Top7:基本数据类型间的转换:基本数据类型间的转换Company Logo 显式转换(强制转换)显式转换(强制转换) 一般形式:(类型名)(表达式)一般形式:(类型名)(表达式) 例例 (int)(x+y) (int)(x+y) (int)x+y (int)x+y (double)(3/2) (double)(3/2) (int)3.6 (int)3.6 说明:强制转换得到所需类型的中间变量,说明:强制转换得到所需类型的中间变量,原变量类型不变原变量类型不变 Top7:基本
28、数据类型间的转换:基本数据类型间的转换Company Logov真题分析真题分析v(2006年年9月)以下选项中值为月)以下选项中值为1的表达式是的表达式是vA、 1-0vB、 1-0vC、 1-0vD、 0-0Top7:基本数据类型间的转换:基本数据类型间的转换1是整型,是整型,0、0、1都是字符型。都是字符型。0换成整型的换成整型的ASCII码值为码值为48,1为为490是转义字符,表示是转义字符,表示0或空。或空。BCompany LogoC运运算算符符算术运算符:(算术运算符:(+ - + - * * / % + - / % + -)关系运算符:(关系运算符:( = != = !=)逻
29、辑运算符:(!逻辑运算符:(! & | & |)位运算符位运算符 :(:( | & | &)赋值运算符:(赋值运算符:(= = 及其扩展)及其扩展)条件运算符:(条件运算符:(?:?:)逗号运算符:(逗号运算符:(, ,)指针运算符:(指针运算符:(* * & &)求字节数求字节数 :(:(sizeofsizeof)强制类型转换:(类型)强制类型转换:(类型)分量运算符:(分量运算符:(. -. -)下标运算符:(下标运算符:()其它其它 :(:(( ) -( ) -)Top8:常见算术运算符的使用:常见算术运算符的使用Company LogoT
30、op8:常见算术运算符的使用:常见算术运算符的使用v 知识点知识点1、基本的算术运算符有:、 (减法/取负) 、/、% (取余数)2、关于除法运算/C语言规定:两个整数相除,其商为整数,小数部分被舍弃。例 5/2 = -5/2.0 =例 5/2 = 2 -5/2.0 = -2.53、关于求余数运算 要求两侧的操作数均为整型数据,否则出错。例 5%2 = -5%2 = 1%10 = 5%1 = 5.5%2例 5%2 = 1 -5%2 = -1 1%10 = 1 5%1 = 0 5.5%2 ()Company LogoTop8:常见算术运算符的使用:常见算术运算符的使用v真题分析真题分析v(201
31、3年年3月)月)ACompany LogoTop8:常见算术运算符的使用:常见算术运算符的使用v真题分析真题分析v(2013年年3月)月)DCompany LogoTop8:常见算术运算符的使用:常见算术运算符的使用v真题分析真题分析v(2013年年3月)月)D*Company LogoTop8:常见算术运算符的使用:常见算术运算符的使用v真题分析真题分析v(2007年年4月)以下选项中,当月)以下选项中,当x为大于为大于1的奇的奇数时,数为数时,数为0的表达式为的表达式为vA、x%2=1vB、x/2vC、x%2!=0vD、x%2=0D%(求余运算符)的两边都必须是整型。(求余运算符)的两边都
32、必须是整型。大于大于1的奇数除以的奇数除以2,余数必为,余数必为1。表达式成立时,整个表达式逻辑值为表达式成立时,整个表达式逻辑值为1表达式不成立时,整个表达式逻辑值为表达式不成立时,整个表达式逻辑值为0。1、算术运算符的优先级、算术运算符的优先级()()/%单目双目高低Top9:算术运算符的优先级顺序:算术运算符的优先级顺序Company LogoTop9:算术运算符的优先级顺序:算术运算符的优先级顺序v真题分析真题分析v(2006年年4月)表达式月)表达式3.6-52+1.2+5%2 的值是的值是_vA、4.3vB、4.8vC、3.3vD、3.83.6-52+1.2+5%221.62.8
33、13.8DCompany Logo赋值运算赋值运算1赋值符号赋值符号“=”就是赋值运算符,它的作用是将一个表达式就是赋值运算符,它的作用是将一个表达式的值赋给一个变量。赋值运算符的一般形式为:的值赋给一个变量。赋值运算符的一般形式为: 如果表达式值的类型,与被赋值变量的类型不一致,但都是如果表达式值的类型,与被赋值变量的类型不一致,但都是数值型或字符型时,系统自动地将表达式的值转换成被赋值数值型或字符型时,系统自动地将表达式的值转换成被赋值变量的数据类型,然后再赋值给变量变量的数据类型,然后再赋值给变量.例 a=3; d=func(); c=d+2; b=a;Top10:赋值表达式的求值规则:
34、赋值表达式的求值规则变量变量 = 赋值表达式赋值表达式Company Logo几点说明:几点说明:(1)赋值运算符的优先级只高于逗号运算符,比其它的运算符优先级都)赋值运算符的优先级只高于逗号运算符,比其它的运算符优先级都低,且具有自右向左的结合性。低,且具有自右向左的结合性。如:如:a=2+7/3(2)赋值运算符左边只能是变量,不能是常量或是表达式。如)赋值运算符左边只能是变量,不能是常量或是表达式。如a+b=c就是错误的。就是错误的。(3)赋值运算符右边也可以是赋值表达式。如)赋值运算符右边也可以是赋值表达式。如a=b=7+1,而而a=7+1=b则是错误的。则是错误的。(4)”“视作运算符
35、,视作运算符,a=19是一个表达式,是一个表达式,C语言规定最左边变量语言规定最左边变量中所得到的新值就是赋值表达式的值。中所得到的新值就是赋值表达式的值。Top10:赋值表达式的求值规则:赋值表达式的求值规则Company Logo复合赋值表达式复合赋值表达式2复合赋值运算符是由赋值运算符之前再加一个双目运算符构成的。复合赋值运算符是由赋值运算符之前再加一个双目运算符构成的。复合赋值运算的一般格式为:复合赋值运算的一般格式为: 变量变量 双目运算符双目运算符 = 表达式表达式 复合赋值运算符复合赋值运算符等价于:变量等价于:变量 = 变量变量 双目运算符双目运算符 (表达式表达式)。当表达式
36、为简单表达式时,表达式外的一对圆括号才可缺省,否则可能当表达式为简单表达式时,表达式外的一对圆括号才可缺省,否则可能出错。出错。例:例: x += 3 x=x+3 y *= x + 6 y=y*(x+6)Top10:赋值表达式的求值规则:赋值表达式的求值规则Company Logo思考2: a=12; a+=a-=a*a思考3: int a=2; a%=4-1; a+=a*=a-=a*=3; /a=-264 等价于a=a+(a=a-(a*a)/a=0 等价于a=a+(a=a*(a=a-(a=a*3)思考思考1:已有变量已有变量a,其值为,其值为9,计算表达式,计算表达式a+=a-=a+a(1)
37、a+a=9+9,表达式的值为表达式的值为18,但是,但是a的值不变,仍为的值不变,仍为9(2)a=a-18 ,表达式的值为,表达式的值为9,a的值变为的值变为9。(3)a=a+a,表达式的值为,表达式的值为-18,a的值为的值为18Top10:赋值表达式的求值规则:赋值表达式的求值规则Top10:赋值表达式的求值规则:赋值表达式的求值规则v真题分析真题分析v(2013年年3月)月)BCompany LogoTop10:赋值表达式的求值规则:赋值表达式的求值规则v真题分析真题分析v(2006年年4月)以下叙述中错误的是月)以下叙述中错误的是vA、C程序中的程序中的#include和和#defin
38、e均不是均不是C语语句句vB、除逗号运算符外,赋值运算符的优先级最低、除逗号运算符外,赋值运算符的优先级最低vC、C程序中,程序中,j+; 是赋值语句是赋值语句vD、C程序中,程序中,+、-、*、/、%是算术运算符,是算术运算符,可用于整型和实型数的运算。可用于整型和实型数的运算。DCompany LogoTop10:赋值表达式的求值规则:赋值表达式的求值规则v真题分析真题分析v(2005年年9月)下列能正确定义且赋初值的语句月)下列能正确定义且赋初值的语句是是vA、 int nl=n2=10;vB、char c=32;vC、float f=f+1.1;vD、 double x=12.3E2.
39、5;C语言规定,变量必须先定义,后使用。语言规定,变量必须先定义,后使用。A、C错误。错误。A如果写成:如果写成:int n1,n2;对待对待n1=n2=10;则正确;则正确C如果写成:如果写成:float f; f=f+1.1; 则正确则正确选项选项D中,中,E后面必须为整数,不能是实数。后面必须为整数,不能是实数。BCompany LogoTop11 逗号表达式的运算规则逗号表达式的运算规则 形式:表达式1,表达式2,表达式n 结合性:从左向右 优先级:所有运算符中,逗号运算符优先级最低 逗号表达式的值:等于表达式n的值 用途:常用于循环for语句中例 a=3*5,a*4 a=3*5,a*
40、4,a+5例 x=(a=3,6*3) x=a=3,6*a/a=15,表达式值60/a=15,表达式值20/赋值表达式,表达式值18,x=18/逗号表达式,表达式值18,x=3Company LogoTop11 逗号表达式的运算规则逗号表达式的运算规则v真题分析真题分析v(2013年年3月)月)CTop11 逗号表达式的运算规则逗号表达式的运算规则v真题分析真题分析v(2013年年3月)月)DCompany LogoTop11 逗号表达式的运算规则逗号表达式的运算规则真题分析有以下程序真题分析有以下程序#include main() int x , y , z ; x=y=1 ; z=x+,y+
41、,+y ; printf(“%d,%d,%dn”,x,y,z) ;程序运行后的输出结果是程序运行后的输出结果是A、2,3,3B、2,2,1C、2,3,2D、2,3,1Company LogoTop11 逗号表达式的运算规则逗号表达式的运算规则v真题分析真题分析v(2005年年9月)有以下程序,月)有以下程序,vmain( )v char a1=M,a2=m;vprintf(“%cn”,(a1,a2);v则下列说法正确的是则下列说法正确的是vA、程序输出大写字母、程序输出大写字母MvB、程序输出小写字母、程序输出小写字母mvC、格式说明符不足,编译出错、格式说明符不足,编译出错vD、程序运行时产
42、生出错信息、程序运行时产生出错信息BCompany LogoTop12自加、自减运算符自加、自减运算符自加运算符、自减运算符自加运算符、自减运算符1i+(或或i-)表示在使用该表达式值之后将表示在使用该表达式值之后将i值加值加1(或减(或减1)。)。+i(或或-i)表示在使用该表达式值之前将表示在使用该表达式值之前将i值加值加1(或减(或减1)Company Logo例自增、自减运算符的用法与运算规则示例。 main() int a=100; printf(“a+=%dn”,a+);printf(“+a=%dn”,+a);printf(“a-=%dn”,a-);printf(“-a=%dn”,
43、-a);/*输出a=100,a的值变为101*/*输出 a=102,a的值变为102*/*输出a=102,a的值变为101*/*输出a=100,a的值变为100*/Top12自加、自减运算符自加、自减运算符Company Logo考点:考点:Top12自加、自减运算符自加、自减运算符1、自增、自减运算符只能用于变量,不能用于常量和表达式。5+、-(a+b)等都是非法的。2、自增、自减运算符和其它运算符混合使用时,其结合性为:至右向左。3、自增、自减运算符,无论作为前缀(+a,-a)还是后缀( a +, a -)运算符,对于变量本身来说自增1或自减1都具有相同的效果,但对表达式来说却有着不同的值
44、。Top12自加、自减运算符自加、自减运算符v真题分析真题分析v(2013年年3月)月)CTop12自加、自减运算符自加、自减运算符v真题分析真题分析v(2013年年3月)月)DCompany LogoTop12自加、自减运算符自加、自减运算符v真题分析真题分析v(2006年年9月)有以下程序,程序运行后的输出月)有以下程序,程序运行后的输出结果为结果为vmain( )v int x,y,z;vx=y=1;vz=x+ +,y+ +,+ +y;vprintf(%d,%d,%dn,x,y,z);vvA、2,3,3B、2,3,2vC、2,3,1D、2,2,1CCompany LogoTop12自加、
45、自减运算符自加、自减运算符v真题分析真题分析v(2005年年4月)下列程序的输出结果是月)下列程序的输出结果是vmain( )v int m=12, n=34;vprintf(%d %d, m+ +,+ +n);vprintf(%d %dn,n+ +,+ +m);vvA、 12 35 35 14B、 12 35 35 13vC、 12 34 35 14 D、 12 34 35 13ACompany Logo第第3章顺序结构章顺序结构Top13:赋值表达式与赋值语句:赋值表达式与赋值语句Top14:数据的输出:数据的输出Top15:数据的输入:数据的输入Company LogoTop13:赋值表
46、达式与赋值语句:赋值表达式与赋值语句赋值语句:在赋值表达式的尾部加上一个赋值语句:在赋值表达式的尾部加上一个“;”, 又称为表达式语句。又称为表达式语句。例:例:a=b+c ;-i;i+;a=b=c;a=b,b=c;Company LogoTop13:赋值表达式与赋值语句:赋值表达式与赋值语句v 考点考点v 赋值语句必须在最后出现分号,分号是语句中必赋值语句必须在最后出现分号,分号是语句中必不可少的部分。不可少的部分。v 任何赋值表达式都可以加上分号而成为赋值语句,任何赋值表达式都可以加上分号而成为赋值语句,C语言规定赋值号左边不能为常量或表达式。语言规定赋值号左边不能为常量或表达式。Comp
47、any LogoTop13:赋值表达式与赋值语句:赋值表达式与赋值语句v真题分析真题分析v(2004年年4月)若以下选项中的变量已经正确定月)若以下选项中的变量已经正确定义,则正确的赋值语句是义,则正确的赋值语句是vA、x1=26.8%3;vB、1+2=x2;vC、x3=0 x12;vD、x4=1+2=3;CCompany Logo格式: putchar( c )参数: c为字符常量、变量或表达式功能:把字符c输出到显示器上返值:正常,为显示的代码值;出错,为EOF(-1) 字符输出函数字符输出函数Top14:数据的输出:数据的输出Company Logo#include main() int
48、 c; char a; c=65; a=B; putchar(c); putchar(n); putchar(a);运行结果:A B例例Top14:数据的输出:数据的输出Company Logo格式:printf(“格式控制串”,输出表)功能:按指定格式向显示器输出数据返值:正常,返回输出字节数;出错,返回EOF(-1) 格式输出函数格式输出函数 输出表:要输出的数据(可以没有,多个时以“,”分隔) 格式控制串:包含两种信息 格式说明: %修饰符格式字符 ,用于指定输出格式 普通字符或转义序列:原样输出 格式字符Top14:数据的输出:数据的输出Company LogoTop14:数据的输出:
49、数据的输出d,ix,Xoucse,Efg%格式字符:格式字符:十六进制无符号整数十六进制无符号整数不带符号十进制整数不带符号十进制整数十进制整数十进制整数指数形式浮点小数指数形式浮点小数单一字符单一字符字符串字符串八进制无符号整数八进制无符号整数小数形式浮点小数小数形式浮点小数e和和f中较短一种中较短一种百分号本身百分号本身int a=567;printf ( “%d”,a);int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=567;printf(“%u”,a);char a=65;printf(“%c”,a);printf(“%s”
50、,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);567ff101567AABC5.677890e+02567.789000567.789%说明:格式字符要用小写格式字符与输出项个数应相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式输出Company Logov附加格式说明符(修饰符)附加格式说明符(修饰符).n对实数,指定小数点后位数(四舍五入)对字符串,指定实际输出位数修饰符功 能m输出数
51、据域宽,数据长度m,左补空格;否则按实际输出输出数据在域内左对齐(缺省右对齐)-指定在有符号数的正数前显示正号(+)+输出数值时指定左面不使用的空位置自动填00在八进制和十六进制数前显示前导0,0 x#在d,o,x,u前,指定输出精度为long型在e,f,g前,指定输出精度为double型lTop14:数据的输出:数据的输出Company LogoTop14:数据的输出:数据的输出v 考点考点v 格式字符、长度修饰符和附加格式字符以及它们格式字符、长度修饰符和附加格式字符以及它们各自的功能。各自的功能。v 在格式控制字符串中,格式说明与输出项从左到在格式控制字符串中,格式说明与输出项从左到右在
52、类型上必须一一对应匹配。右在类型上必须一一对应匹配。v 在格式控制串中,格式说明与输出项的个数应相在格式控制串中,格式说明与输出项的个数应相同,若格式说明明少于输出项,则多余的输出项同,若格式说明明少于输出项,则多余的输出项不输出,相反,对于多余的格式将输出不定值。不输出,相反,对于多余的格式将输出不定值。v 在格式控制串中,可以包含任意的合法字符(包在格式控制串中,可以包含任意的合法字符(包括转义字符)。括转义字符)。Company LogoTop14:数据的输出:数据的输出v真题分析真题分析v(2013年年3月)月)ACompany LogoTop14:数据的输出:数据的输出v真题分析真题
53、分析v(2006年年4月)若变量月)若变量a,b 已定义为已定义为int 类型类型并赋值并赋值21 和和55,要求用,要求用printf 函数以函数以a=21,b=55 的形式输出,请写出完整的的输出语句的形式输出,请写出完整的的输出语句 _printf( “ a=%d,b=%d ” ,a,b);Company LogoTop14:数据的输出:数据的输出v真题分析真题分析v(2004年年9月)有以下程序,程序运行后的输出月)有以下程序,程序运行后的输出结果是结果是vmain()vvint m=0256,n=256;vprintf(“%o %on”,m,n);vvA、02560400B、0256
54、256vC、256 400D、400 400CCompany LogoTop14:数据的输出:数据的输出v真题分析真题分析v(2004年年4月)有以下程序,执行后的结果是月)有以下程序,执行后的结果是vmain()vvint x=102,y=012;vprintf(“%2d,%2dn”,x,y);vvA、10,01B、02,12vC、102,10 D、02,10C格式控制符%2d中的2表示输出数据的最小宽度为2,如果指定的宽度不够,并不影响数据的完整输出。Company Logo格式:getchar( )功能:从键盘读一字符返值:正常,返回读取的代码值;出错,返回EOF(-1) 字符输入函数字
55、符输入函数 例 #include main() int c; printf(Enter a character:); c=getchar(); printf(%c-hex%xn,c,c);运行结果:Enter a character:AA-hex41Top15 数据输入数据输入Company Logo 格式输入函数格式输入函数格式: scanf(“格式控制串”,地址表)功能:按指定格式从键盘读入数据,存入地址表指定的 存储单元中,并按回车键结束返值:正常,返回输入数据个数 地址表:变量的地址,常用取地址运算符& 格式字符:d,i,o,x,u,c,s,f,e例 scanf(“%d”,&a
56、mp;a); 输入:10 则 a=10例 scanf(“%x”,&a); 输入:11 则 a=17Top15 数据输入数据输入Company Logo附加格式说明符(修饰符)附加格式说明符(修饰符)l修饰符功 能hm*用于d,o,x前,指定输入为short型整数用于d,o,x前,指定输入为long型整数用于e,f前,指定输入为double型实数指定输入数据宽度,遇空格或不可转换字符则结束抑制符,指定输入项读入后不赋给变量例 scanf(“%4d%2d%2d”,&yy,&mm,&dd); 输入 19991015 则1999yy, 10 mm, 15 dd例 sca
57、nf(“%3d%*4d%f”,&k,&f); 输入 12345678765.43 则123k, 8765.43f例 scanf(“%2d %*3d %2d”,&a,&b); 输入 12 345 67 则12a, 67b例 scanf(“%3c%2c”,&c1,&c2); 输入 abcde 则ac1, d c2Top15 数据输入数据输入Company Logo 输入分隔符的指定 一般以空格、TAB或回车键作为分隔符 其它字符做分隔符:格式串中两个格式符间字符例 scanf(“%d%o%x”,&a,&b,&c); print
58、f(“a=%d,b=%d,c=%dn”,a,b,c); 输入 123 123 123 输出 a=123,b=83,c=291例 scanf(“%d:%d:%d”,&h,&m,&s); 输入 12:30:45 则12 h, 30 m, 45 s例 scanf(“%d,%d”,&a,&b) 输入 3,4 则3a, 4 b例 scanf(“a=%d,b=%d,c=%d”,&a,&b,&c); 输入 a=12,b=24,c=36 Top15 数据输入数据输入Company Logo 说明: 用“%c”格式符时,空格和转义字符作为有效字符输
59、入如 scanf(“%c%c%c”,&c1,&c2,&c3); 若输入a b c 则ac1, c2, b c3输入数据时,遇以下情况认为该数据结束:遇空格、TAB、或回车遇宽度结束遇非法输入如 scanf(“%d%c%f”,&a,&b,&c); 若输入1234a123o.26 则 1234 a, a b, 123 c输入函数留下的“垃圾”:例 int x; char ch; scanf(“%d”,&x); ch=getchar(); printf(“x=%d,ch=%dn”,x,ch);执行:123输出:x=123,ch=10例 int
60、x; char ch; scanf(“%d”,&x); scanf(“%c”,&ch); printf(“x=%d,ch=%dn”,x,ch);执行:123输出:x=123,ch=10解决方法:(1)用getchar()清除(2)用函数fflush(stdin)清除全部剩余内容 (3) 用格式串中空格或“%*c”来“吃掉”例 int x; char ch; scanf(“%d”,&x); scanf(“ %c”,&ch);或 scanf(“%*c%c”,&ch); Top15 数据输入数据输入Company LogoTop15 数据输入数据输入v考点考点v熟知各种格式字符的功能熟知各种格式字符的功能vscanf函数中的输入项必须是函数中的输入项必须是“地址量地址量”v输入数据时,各个数据间可以用空格符、回车符或输入数据时,各个数据间可以用空格符、回车符或Tab 键作为分隔符键作为分隔符v除了除了3中所述分隔符外,还可以自己指定其它字符作为中所述分隔符外,还可以自己指定其它字符作为分隔符,但在输入时应输入与这些字符相同的字符。分隔符,但在输入时应输入与这些字符相同的字符。v输入数据时,遇到以下情况时该数据被认为表示结束:输入数据时,遇到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 守正创新筑根基深耕课堂启新程-XX学校“136高效课堂”改革实践汇报
- 2026年福州市台江区中小学编制教师招聘考试模拟试题及答案详解
- 2026年泸州市龙马潭区中小学编制教师招聘笔试备考题库及答案详解
- 2026年内蒙古自治区通辽市中小学编制教师招聘考试备考试题及答案详解
- 2026年伊春市红星区中小学编制教师招聘考试参考试题及答案详解
- 2026年北海市海城区中小学编制教师招聘笔试备考题库及答案详解
- 2026年遂宁市船山区事业编单位人员招聘笔试备考试题及答案详解
- 2026年甘肃省武威市中小学编制教师招聘笔试备考试题及答案详解
- 2026年宁波市北仑区中小学编制教师招聘笔试参考题库及答案详解
- 2026年荆门市东宝区中小学编制教师招聘考试备考试题及答案详解
- DGJ 08-114-2016 临时性建(构)筑物应用技术规程
- 《水泥制品工艺技术规程 第5部分:环形混凝土电杆》
- 第十一章、工程技术管理与质量管理措施
- 换届舆情培训课件
- 樊昌信通信原理第10章-信源编码(7版)课件
- 2022年四川省成都市辅警协警笔试笔试
- 常州市房屋租赁合同(常州市2021版)
- GB/T 7113.4-2011绝缘软管第4部分:丙烯酸酯玻璃纤维软管
- GB/T 12009.3-2009塑料多亚甲基多苯基异氰酸酯第3部分:黏度的测定
- FZ/T 70010-2006针织物平方米干燥重量的测定
- 新标准大学英语综合教程2 单词
评论
0/150
提交评论