C主要知识点复习01-lei

上传人:tia****nde 文档编号:36844749 上传时间:2018-04-03 格式:DOC 页数:30 大小:726.50KB
返回 下载 相关 举报
C主要知识点复习01-lei_第1页
第1页 / 共30页
C主要知识点复习01-lei_第2页
第2页 / 共30页
C主要知识点复习01-lei_第3页
第3页 / 共30页
C主要知识点复习01-lei_第4页
第4页 / 共30页
C主要知识点复习01-lei_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《C主要知识点复习01-lei》由会员分享,可在线阅读,更多相关《C主要知识点复习01-lei(30页珍藏版)》请在金锄头文库上搜索。

1、 主要知识点:主要知识点: 1.知识点:C 程序基础 C 语言是一种结构化程序设计语言。三种基本结构语言是一种结构化程序设计语言。三种基本结构:顺序、选择、循环。例例 1:以下关于结构化程序设计的叙述中正确的是:以下关于结构化程序设计的叙述中正确的是(C) A) 一个结构化程序必须同时由顺序、分支、循环三种结构组成 B) 结构化程序使用 goto 语句会很便捷 C) 在 C 语言中,程序的模块化是利用函数实现的 D) 由三种基本结构构成的程序只能解决小规模的问题 例 2:计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是(A) A)C 语言程序仅可以编译执行 B)C 语言

2、程序仅可以解释执行 C)C 语言程序既可以编译执行又可以解释执行 D)以上说法都不对 【解析】计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。 翻译的方式有两 种,一个是编译,一个是解释。C 语言程序仅可以编译。例例 3:以下叙述中错误的是:以下叙述中错误的是( D) A)C 语言的可执行程序是由一系列机器指令构成的 B)用 C 语言编写的源程序不能直接在计算机上运行 C)通过编译得到的二进制目标程序需要连接才可以运行 D)在没有安装 C 语言集成开发环境的机器上不能运行 C 源程序生成的.exe 文件 【解析】C 程序开

3、发过程:编辑(.c)编译(.obj)链接可执行文件(.exe)2.知识点:C 语言程序的构成 C 程序是由函数构成的,一个 C 程序有且仅有一个 main 函数。一个函数由两部分组成:函数的首部和函数体。函数体包括声明部分和执行部分。一个 C 程序 总是从 main 函数开始执行(即程序的入口) ,由 main 函数结束, (即程序的出口) 。例1:以下叙述正确的是(B) A)C语言程序是由过程和函数组成的 B)C语言函数可以嵌套调用,例如:fun(fun(x) C)C语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文件形式存在 例 2:以下叙述中错误的是 (C) A.

4、C 语言编写的函数源程序,其文件名后缀可以是 C B.C 语言编写的函数都可以作为一个独立的源程序文件 C. C 语言编写的每个函数都可以进行独立的编译并执行 D.一个 C 语言程序只能有一个主函数3.知识点:标识符 命名规则: 标识符中只能包含字母 (a-z,A-Z),数字(0-9),下划线(_)。 第一个字符必须是字母或下划线。 分类分类关键字(32 个) (有固定含义,不可改变)预定义标识符(有特殊含义,可以改变)用户自定义的标识符 格式合法,不能使用关键字,见名知意 例 1:以下 C 语言用户标识符中,不合法的是(D) A)_1 B)AaBc C)a_b D)a-b4.知识点:数据类型

5、 例 1:以下关于 C 语言数据类型使用的叙述中错误的是(D) A)若要准确无误差的表示自然数,应使用整数类型 B)若要保存带有多位小数的数据,应使用双精度类型 C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型 D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型 【解析】结构数据类型是根据已定义的一个或多个数据类型用构造的方法来定义的,一个结构类型的值可以分解成若干个“成员”或“元素” ,每个“成员”都是一 个基本数据类型或又是一个构造类型,C 项正确。C 语言没有逻辑类型,故 D 项错误。 例 2:定义无符号整数类为 UInt,下面可以作为类 UInt 实例化值的是(

6、B) A)-369 B)369 C)0.369 D)整数集合1,2,3,4,5 【解析】无符号整数类型为只有正整数和 0,所有选择 B。5.知识点:常量 整型常量 十进制整常数:没有前缀,其数码为 0-9。例如 65535,-568 八进制整常数:以 0 开头,其数码为 0-7。例如 015 十六进制整常数:以 0X 或 0x 开头,其数码为 0-9,A-F 或 a-f。例如 0x2A 长整型数:整型常数后缀为 L 或 l。例如 358000L 无符号数:整型常数后缀为 U 或 u。例如 158u 实型常量的形式 小数形式:必须有小数点,小数点前后不能同时没有数字。 指数形式:aEn(其中 a

7、 表示十进制数,E 阶码标志,n 阶码) 。E 前 E 后必须有数字,E 后必为整数,可以带符号。例如 2.1E-3、5E8 例 1: 以下选项中关于 C 语言常量的叙述错误的是:(D) A.所谓常量,是指在程序运行过程中,其值不能被改变的量 B.常量分为整型常量、实型常量、字符常量和字符串常量 C.常量可分为数值型常量和非数值型常量 D.经常被使用的变量可定义成常量 【解析】根据常量的基本概念,则不难判断 A、B、C 均正确。 例 1: 以下选项中,能用作数据常量的是(D) A)o115 B)0118 C)1.5e1.5 D)115L 【解析】八进制整常数以 0 开头,A 项错误;八进制整常

8、数的数码味 0-7,B 项错误;实型常量的指数形式 E 后必为整数,故 C 项错误;长整型数后缀为 L 或 l,故 D 项正确。 例 2: 以下选项中可用作 C 程序合法实数的是( A)A).1e0 B)3.0e0.2 C)E9 D)9.12E 【解析】实型指数表示方式“E 前 E 后比有数,E 后必须是整数” ,故选 A 字符常量:用单引号括起来的一个字符。包括普通字符常量和转义字符。 普通字符常量:如a 、 A 、 1 。 转义字符:由一对单引号引起来的以开头的若干字符的组合。如n表示回车换行、 表示反斜线符、 表示单引号符、 ” 表示双引号、 ddd表示八 进制数、 xhh表示十六进制数

9、。 例 3: 以下选项中能表示合法常量的是(C) A)整数:1,200 B)实数:1.5E2.0 C)字符斜杠: D)字符串:“007” 【解析】表示整常量不能用逗号分隔,A 项错误;实型常量的指数形式 E 后必为整数,故 B 项错误;007是转义字符,只能用单引号括起来,不能用双引号或 其他括号,故 D 项错误。例 4:(2010-03-26)以下选项中不能用作 C 程序合法常量的是( B)A)1,234 B)123 C)123 D)“x7G“【解析】A 中的, 在编译时会出错的,直接写成 1234 即可,B 是一个三位八进制数代表的字符,C 是一个数字常量,D 是一个字符串,其中x7 是一

10、个一位十六 进制数代表的字符,也即 D 中的字符串是两个字符,如果 sizeof 的话是 3,如果 strlen 的话是 2。6.知识点:变量 整型变量和实型变量 以考试标准 Viusal c+6.0 为例,说明各类型变量所占的位数和字节数。 short162unsigned int324 int324unsigned long 324 long 324float324 unsigned short162double648 例 1:有以下程序 #include main(0) int s,t,A=100;double B=6; s=sizeof(A); t=sizeof(B); printf(

11、“%d,%dn”,s,t); 在 VC6 平台上编译运行,程序运行后的输出结果是(C) A)2,4 B)4,4 C)4,8 D)10,6 【解析】在 VC6 平台上,int 型占 4 个字节,double 型占 8 个字节,故答案是 C。 字符变量:一个字符变量只能存放一个字符。字符串不能存放在字符变量中,只能用字符数组或指针存放字符串。 例 1: 有以下定义语句,编译时会出现编译错误的是(C)A)char a=a ; B)char a=n ; C)char a=aa ; D)char a=x2d ; 【解析】一个字符变量只能存放一个字符,A 项字符变量存放的是普通字符常量;B、D 项字符变量

12、存放的转义字符;字符常量只能是单个字符,不能是字符串, aa不是单个字符,故 C 项错误。7.知识点:ASCII 码 0的 ASCII 码值为 48;A的 ASCII 码值为 65;a的 ASCII 码值为 97。大写字母与小写字母的 ASCII 码值相差 32。 例 1:有以下程序 #include main() char c1,c2;c1=A+8-4; c2=A+8-5; printf(“%c,%dn”,c1,c2); 已知字母 A 的 ASCII 码为 65,程序运行后的输出结果是(A) A)E,68 B)D,69 C)E,D D)输出无定值 【解析】 A的 ASCII 码值为 65,

13、8的 ASCII 码值为 56, 4的 ASCII 码值为 52,65+56-52=69,对应于字符E 。 5的 ASCII 码值为 53,65+56-53=68,对应 于字符D 。字符变量 c1 以%c 格式输出,即E 。字符变量 c2 以%d 格式输出,即 68。故答案是 A。8.知识点:进制转换 十进制转换成二进制、八进制、十六进制:将十进制的数字除以 2(8、16) ,得到的商数继续除以 2,直到商为 0,然后将各次相除所得的余数从后往前排列。 二进制、八进制、十六进制转换成十进制:将二(八、十六)进制数的每一位数从高位到低位乘以 2 的 n-1 次幂,n 为该位所在的位数。 二进制与

14、八进制之间的转换:每个八进制数字转换成 3 位二进制数字。 二进制与十六进制之间的转换:每个十六进制数字转换成 4 位二进制数字。 例 1:以下程序运行后的输出结果是 2008 。 #include main() int a=200,b=010; printf(“%d%dn”,a,b) ; 【解析】八进制数 010 转换成十进制数为 8,按“%d%d”格式分别输出 a、b,即 2008。9.知识点:运算符的优先级 级别由大到小:(逻辑)非 算(术运算符) 关(系运算符) (逻辑)与 (逻辑)或 条(件运算符) 赋(值运算符)10.知识点:强制类型转换运算符 一般形式:(类型说明符) (表达式)

15、 功能:把表达式的运算结果强制转换成类型说明符所表示的类型 例 1:表达式(int)(double)(5/2)+2.5)的值是 4。 【解析】(int)(double)(5/2)+2.5)(int)(double)2)+2.5)(int)(2.000000+2.5)(int)(4.500000) 4。 例 2:以下程序运行后的输出结果是 ( ) 。 main() int a; a=(int)(double)(3/2)+0.5+(int)1.99*2); printf(“%dn“,a); 答案:3 【解析】(3/2)=1,(double)(3/2)+0.5=1.5,(int)1.99*2=2,所以(double)(3/2)+0.5+(int)1.99*2=3.5,故 a=3。11.知识点:算术运算符: +、*、/、% %:参与运算的量均为整型。 /:当除号左右两边都是整数的时候,商也要是整数,如果不是整数则舍弃小数部分。当参与运算量有一个为实型,则商为 double 型。 例 1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号