1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 本文由xueping1206贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT, 或下载源文件到本机查看。 第一章 C 语言基础知识 一全国计算机等级考试问答 ( National Computer Rank Examination) 全国计算机等级考试(简称 NCRE)是由教育部考试中心举办, 用于测试应试 人员计算机应用知识与能力的等级水平考试。 随着计算机技术在中国各个领域的 推广、 普及, 越来越多的人开始学习计算机知识, 许多用人部门已将具有一定的 计算机知识与能力作为考核和录用工作人员的标准之一。因此,
2、教育部决定举办 全国计算机等级考试, 其目的在于推进计算机知识的普及, 促进计算机技术的推 广应用, 以适应社会主义经济建设的需要, 为用人部门录用和考核工作人员服务。 当前, 全国计算机等级考试正日趋成为继高考后全国第二大考试, 特别是计算机 二级证书是计算机等级考试证书中用得最广泛的证书, 它已和英语四六级一样成 为社会用人单位对大学生的必备要求之一。 ( 一) 考试性质和目的 1、 什么是全国计算机等级考试? 全国计算机等级考试( National Computer Rank Examination, 简称 NCRE) , 是经 原国家教育委员会( 现教育部) 批准, 由教育部考试中心主
3、办, 面向社会, 用于 考查应试人员计算机应用知识与能力的全国性计算机水平考试体系。 2、 为什么要举办 NCRE? 计算机技术的应用在中国各个领域发展迅速, 为了适应知识经济和信息产业发展 的需要, 操作和应用计算机已成为人们必须掌握的一种基本技能。许多单位部门 已把掌握一定的计算机知识和应用技能作为干部录用、 职务晋升、 职称评定、 上 岗资格的重要依据之一。鉴于社会的客观需求, 经原国家教委批准, 原国家教委 考试中心于 1994 年面向社会推出了 NCRE, 其目的在于以考促学, 向社会推广 和普及计算机知识, 也为用人部门录用和考核工作人员时提供一个统一、 客观、 公正的标准。 (
4、二) 报考条件与报考对象 1、 谁能够报名参加考试? 考生不受年龄、 职业、 学历等背景的限制, 任何人均可根据自己学习和使用计算 机的实际情况, 选考不同等级的考试。考生一次只能报考一个等级( 含笔试和上 机考试) 的考试。如果一个级别中有不同类别, 考生只能选择其中一类。考生一 次考试只能在一个考点报名。考生能够不参加考前培训, 直接报名参加考试。 ( 三) 报名及考试时间安排 1、 NCRE 采取什么考试形式? 考试时间如何规定? 考试采用由全国统一命题, 统一考试时间, 纸笔考试和上机操作考试相结合的形 式。纸笔考试中题型以选择题、 填空题为主, 其中四级含有论述题。纸笔考试时 间:
5、二级 C90 分钟、 三级、 四级为 120 分钟( 四级只考笔试) 。上机操作考试时 间: 二级 C90 分钟、 三级 60 分钟, 一级实行无纸化的上机考试, 时间为 90 分 钟。 2、 NCRE 每年考几次? 各次考试是什么日期? NCRE 每年开考两次, 上半年开考一、 二、 三级, 下半年开考一、 二、 三、 四级。 上半年考试时间为 4 月第二个星期六上午( 笔试) , 下半年考试时间为 9 月倒数 第二个星期六上午( 笔试) , 上机考试从笔试的当天下午开始。上机考试期限为 五天, 由考点根据考生数量和设备情况具体安排。 3、 如何报名? 笔试和上机成绩只有单项合格有何规定?
6、每次考试报名的具体时间由各省( 自治区、 直辖市) 级承办机构规定。考生按照 有关规定到就近考点报名。 考生可携带身份证到就近考点报名。没有身份证的未成年人, 可凭户口本, 现役 军人凭军人身份证件报名。 上次考试的笔试和上机考试仅其中一项成绩合格的, 下次考试报名时应出具上次 考试成绩单, 成绩合格项能够免考, 只参加未经过项的考试。 ( 五) 考生报名缴 费 ( 四) 考试等级划分 1、 NCRE 等级如何构成? 主要考核什么能力? 全国计算机等级考试当前共设置四个等级: 一级: 考核微型计算机基础知识和使用办公软件及因特网( Internet) 的基本技 能。 年下半年考试科目: 一级
7、MS-OFFICE、 一级 WPS 、 一级 B 二级: 考核计算机基础知识和使用一种高级计算机语言或数据库管理软件编写程 序以及上机调试的基本技能。 年下半年考试科目: 编程类: Visual Basic、 C、 C+、 Java, 数据库类: FoxPro、 Access。基础知识包括如下内容: 数据结构与 算法、 程序设计方法、 软件工程、 数据库基础、 新增的考试科目: 二级 Delphi 语言程序设计( VF, VB 将近年停考) 。 三级: 分为”PC 技术”、 ”信息管理技术”、 ”数据库技术”和”网络技术”四个类 别。 技术”考核 PC 机硬件组成和 Windows 操作系统的
8、基础知识以及 PC 机使 ”PC 用、 管理、 维护和应用开发的基本技能; ”信息管理技术”考核计算机信息管理应 用基础知识及管理信息系统项目和办公自动化系统项目开发、 维护的基本技能; ” 数据库技术”考核数据库系统基础知识及数据库应用系统项目开发和维护的基本 技能; ”网络技术”考核计算机网络基础知识及计算机网络应用系统开发和管理的 基本技能。 四级: 四级网络工程师、 四级数据库工程师和四级软件测试工程师、 考核计算机 专业基本知识以及计算机应用项目的分析设计、 组织实施的基本技能。 2、 是否必须经过第一( 二、 三) 级, 才能报考第二( 三、 四) 级考试? 没有规定考生必须经过第
9、一( 二、 三) 级才能报考第二( 三、 四) 级, 考生可根据自己的 实际情况选考不同的等级, 但一次考试只能报考一个等级。 考生一次考试只能在一个考点报 名。 ( 五) 考试成绩的计算 1、 如何计算成绩? 是否有合格证书? 该考试笔试、 上机考试实行百分制计分, 笔试以百分制通知考生, 上机以等级分 数通知考生成绩。等级分数分为”不及格”、 ”及格”、 ”良好”、 ”优秀”四等。100-90 分为”优秀”, 89-80 分为”良好”, 79-60 分为”及格”, 59-0 分为”不及格”。 笔试和上机考试成绩均在”及格”以上者, 由教育部考试中心发合格证书。笔试和 上机考试成绩均为”优秀
10、”的, 合格证书上会注明”优秀”字样, 证书上没有良好, 按及格对待。 ( 六) 证书获得者应具备的能力 1、 证书获得者具备什么样的能力? 能够胜任什么工作? 一级证书表明持有人具有计算机的基础知识和初步应用能力, 掌握字、 表处理、 电子表格和演示文稿等办公自动化( Office 或 WPS) 软件的使用及因特网 ( Internet) 应用的基本技能, 具备从事机关、 企事业单位文秘和办公信息计算 机化工作的能力。 二级证书表明持有人具有计算机基础知识和基本应用能力, 能够使用计算机高级 语言编写程序和调试程序, 能够从事计算机程序的编制工作、 初级计算机教学培 训工作以及计算机企业的业
11、务和营销工作。 二、 虎贲教育计算机等级考试培训班问答 1、 全国计算机等级考试证书有有效期吗? 绝对没有, 等级考试证书是终身有效的, 详情能够访问等级考试官方网站 ( .cn 或 ) 。 ( 全国计算机等级考试教育部考试中心官方网站的回答原话是: ”等级考试的证 书是终身有效的, 等级考试的大纲会在每 2-3 年更新一次, 但更新并不影响以前 证书的效力, 因此有些人的等级考试证书 2 年左右就会失效的说法是不正确 的。) ” 2、 我没有参加一级考试, 能参加二级考试吗? 全国计算机等级考试分为一至四级, 考生能够任意选择考试等级, 不是非要先考 一级再考二级。一般来说, 一级主要适合社
12、会在职人员考试, 二级适合在校大学 生考试, 二级对大学生找工作也是最有用的。三级和四级能够作为进一步学习的 考试。 3、 有的专业会开设相关课程, 有必要参加培训吗? 二级考试所考核的内容基本属于基础知识, 早点学习能够早点打牢基础, 以便于 进一步学习计算机知识, 从而在以后的竞争中处于有利地位。学校虽然有些专业 的相关课程和计算机等级考试有一定的联系, 但都不具有针对性。而且新大纲推 出后, 不少内容只有计算机专业才开设有关联的课程, 但也不具备针对性。新大 纲推出后等级考试经过率再创新低, 参加专业培训势在必行。 4、 什么时候参加二级考试比较合算? 一般来说, 大一大二时学习和经过计
13、算机二级考试比较划算。大二时主要精力用 来考英语四六级, 大三时专业课比较紧张, 大四已经到了找工作的时候。相对来 说, 大一同学求知欲强、 时间精力充沛、 易于接受新东西, 是学习的黄金时段, 如果能较早的掌握必备的计算机知识, 如大一就过国家二级, 并掌握一些相关应 用知识, 这样就在竞争激烈且残酷的当今社会占尽先机, 无疑在今后的学习中将 以更为轻松的心态, 更为充沛的精力从事于你所钟爱的事业中。 5、 二级考试能够有多种语言选择, 为什么要选择 C 语言呢? C 语言被誉为最有”钱”途的语言, 具有广泛的用途, 受到社会的热烈追捧, 如 Linux、 Unix 操作系统均由 C 语言编
14、写, Windows 操作系统也有 90的代码由 C 语言编写。C 语言语法和 C+、 Java、 C#等类似, 能够方便进一步学习。在许多 计算机考试中, C 语言是必考内容, 甚至是唯一考核内容, 如计算机三级、 四级 的上机考核部分, 程序员、 高级程序员的下午试卷等。 6、 二级考试什么时候报名? 什么时候参加考试? 二级考试每年考两次, 分别在上半年的 4 月份顺数第二个周六和下半年的 9 月份 倒数第二个周六。一般上半年 4 月份考试的报名时间从前一年 11 月中旬到第二 年 1 月中旬均可。下半年 9 月份考试的报名时间一般从 5 月底到 7 月底。而一般 在报名考试之前相关知识
15、必须已经学得差不多了, 因此, 如果参加 4 月份的考试 必须在下半年 101 月份学习, 然后在寒假之后考前短暂的时间进行适当强化即 可参加考试。参加 9 月份的考试必须在上半年 36 月份学习, 然后在暑假之后 考前短暂的时间进行适当强化即可参加考试。 7、 参加培训是否会影响到我们的正常上课? 我们的授课时间均选在业余时间, 不会与学校的正常教学产生冲突。 8、 二级( C 语言) 考试的考试内容是什么? 根据新大纲的要求, 二级( C 语言) 考试分为理论考试和上机考试两部分, 必须 都经过考试才能算合格。考试内容分为 C 语言程序设计( 顺序结构、 选择结构、 循环结构、 函数、 指
16、针、 数组、 字符串、 编译预处理、 作用域、 结构体、 共用体、 文件等) 和公共基础( 数据结构、 程序设计、 软件工程和数据库) 。 9、 虎贲 IT 培训有何特色? 本中心和很多高校的网络中心、 计算机学院、 现代教育中心有合作关系, 立足于 在校大学生, 弥补学校教育的不足, 相辅相成。 除主要培训最有 ”钱” 途的语言 C 语言外, 还注重引导学员, 并向学员介绍国内外 IT 业发展的各种动态和发展 趋势、 社会上对 IT 人才各种需求信息等, 力争让学员经过培训后有明确的学习 目标, 并掌握一套行之有效的方法, 能举一反三, 独立的走自己的道路。 10、 我没有计算机基础, 能够
17、参加培训吗? 能够, 无需任何基础知识, 完全从零开始, 即使从来没有接触过计算机, 也能够 学好! 11、 大几参加培训比较好? 一般大学的规划是: ”大一经过计算机二级、 大二经过英语四六级、 大三专业课 及考研、 大四找工作及实践” , 因此, 一般大一最好, 特别是如果大一上学期参 加学习准备考试, 那么下学期 4 月份就能够参加考试了, 如果大一下学期准备考 试的话, 那么要等到大二 9 月份才能考试, 而大二已经开始准备英语四六级等其 她事宜了。因此大一上学期学习等级考试最好, 而且刚进大学, 时间精力充沛, 进取心强, 是学习的黄金时段。 二 教学重点, 难点分析 1. C 语言
18、概述 所占分值 0-1 分 0-1 分 1-2 分 1-2 分 考核几率 20% 30% 60% 80% 专家点评 简单识记 简单识记 简单, 属重点识记知识点 简单, 属重点识记知识点 知识点 C 语言概述 C 语言程序的构成 标识符 常量 变量 2-3 分 100% 难度适中, 重点理解重点掌握 注意: 从几年的试题分析看 C 语言的概述和程序的构成合起来考试已经 是一个惯例了。 2. 运算符与表示式 知识点 C 运算符简介 运算符的结合和优先级 所 占 分 考核几率 值 0-1 分 0-1 分 10% 60% 简单识记 简单识记 专家点评 强制类型转换运算符 逗号运算符和逗号表示式 基本
19、的算术运算符 算术表示式和运算符的 赋值运算符和赋值表示式 复合的赋值运算符 赋值运算中的类型转换 位运算符和位运算 0-1 分 0-1 分 1-2 分 1-2 分 2-4 分 1-2 分 0-1 分 0-1 分 30% 40% 100% 100% 100% 100% 80% 75% 80% 简单识记 简单, 属重点识记知识点 简单, 属重点识记知识点 难度适中, 重点理解重点掌握 难度适中, 重点理解重点掌握 简单, 重点掌握重点理解 偏难, 不是重点 偏难, 不是重点 偏难, 属重点识记知识点 优先级与结合、 自增自减运算符 2-3 分 三 教学讲点 1. C 语言的基本构成和格式 #in
20、clude ”stdio.h” main() int a,b,sum;/* 定义变量*/ a=10; /*把整数 10 赋值给变量 a*/ b=20; /*把整数 20 赋值给变量 b*/ sum=a+b; /*把两数之和赋值给变量 sum*/ printf(”a=%d,b=%d,sum=%dn”,a,b,sum);/*输出计算结果*/ (1).C 程序由函数组成, 一个程序必须且只能有一个主函数(main(),C 程序总是从 主函数开始执行, 在主函数中结束。 (2).定义函数时函数名后必须有一对小括号, 函数体必须放在一对花括号内, 在 函数体中, 函数体有两个部分: 定义部分和执行部分。
21、定义语句必须出现在执行 语句之前, 我们先定义了 a,b,sum,然后才给它们赋值。 (3).C 语言中每条语句都以分号”; ”结束, 分号时 C 语句的一部分。即使是程序 的最后一个语句也不例外。分号是语句结束的标志。 (4). 一行能够写多条语句, 一条语句也能够分在多行上写, 可是, 不能将一个整 体分开。 例如: i nt 是错误的, 而 int 正确。 (5). C 语言的注释必须放在”/*”和”*/”之间, ”/”和”*”之间不允许有空格。 ”/*”和”*/”之间不允许再插入”/*”或”*/” 。注释能够出现在程序中的任意 位置。注释部分不被执行。 (6).C 语言程序书写格式自由
22、, 语句能够从任一列开始书写, 一行内能够 写多个语句。可是过于”自由”的程序书写格式往往使人们很难读懂程 序, 初学者应该从一开始就养成好的习惯, 是程序便于阅读。 2. 标识符 ( 1) 标识符只能由字母、 数字和下划线组成。 ( 2) 标识符的第一个字符必须是字母或下划线。 ( 3) 标识符的大小写字母是有区别的, 如 abc 和 ABC 是两个完全不 同的标识符。 ( 3) 标识符的分类: 关键字: 关键字是具有特定的含义的、 专门用来说明 C 语言特定成分的 一类标识符。详细的查阅附录。 预定义标识符: 在 C 语言中它也有特定的含义。预定义标识符可 以用位”用户表标识符”使用, 只
23、是这将使这些标识符失去了原来 的意义。 用户标识符: 由用户根据需要定义的标识符被成为用户标识符。 用 户标示符用来给变量、 函数、 数组或者指针等命名。 3. C 语言的数据类型 3.1 数据能够分为常量和变量。常量是指在程序执行中不变的量, 常量 分为: 整型常数、 实型常数、 字符常量、 字符串常量。 整型数据: 进制间的转换 3.11.二、 八、 十六进制转为十进制 规则: ”按权相加” 3.12.十进制转为二、 八、 十六进制 规则: 整数部分: 基数除取余, 逆序排列 小数部分: 基数乘取整, 顺序排列 3.13.二进制转为八、 十六进制 规则: 三( 四) 合一, 按序相拼( 整
24、数部分, 从右向左取, 小数部分从左向右取, 位数不足补零) 。 3.14.八、 十六进制转为二进制 规则: 一分三( 四) , 按序相拼 3.2 整型数据在内存中的存放形式 1 字节8 位, 1Byte8bit 字长: 指 CPU 能同时处理的二进制位数。由 CPU 的型号而定。如: 16 位微机 的字长就是 16 位或 2 字节。 1GB=1024MB, 1MB=1024KB, 1KB=1024B : 是计算机中信息表示 B:表示字节, 字节是表示存储容量的最小单位。位( bit) 的最小单位。 3.21.正整数在内存中用”原码”形式存放。 ( 直接转换为二进制即可) 。 如: 5 0 0
25、 0 0 0 0 0 0 0 0 0 0 0 1 0 1 二字节能存放的最大数是:32767 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 对带符号数, 最高位是符号位, 用 0 表示正, 用 1 表示负。 3.22.负整数在内存中用”补码”形式存放。 取补码的步骤: (1)忽略负号, 求出原码。 。 (2)将原码按位取反( 0 、 1 互换) (3)在第二步的基础上加 1。 如: 取-5 的补码。 (1) 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 (2) 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 (3) 1 1 1 1 1 1 1
26、 1 1 1 1 1 1 0 1 1 将补码转换成相应的整数的步骤: (1)将补码按位取反加 1。 (2)将步骤 1 得到的二进制数转换成十进制数, 然后加上负号即可。 例如: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 按位取反加 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 转换成十进制: 121532768 加负号: -32768 几个特殊的带符号整数: 0000 -32768 1111 32767 1111 -1 3.23.无符号整数: 只有正整数, 没有负整数, 最高位不表示
27、符号位, 每一位均参 与转换。 二进制 带符号整数 无符号整数 1111 -1 65535 0000 -32768 32768 例 2-12:若有: int a=-1; unsigned b=65535;则 printf(”%d,%u,%d,%u”,a,a,b,b); 输出结果是: -1, 65535, -1, 65535 数据益出问题: 例 2-13:若有 int a=32767;则 a=a+1 的结果是: -32768 例 2-14:若有 unsigned b=65536;则 b 的值是: 0 分析: 32767: 11111 +1 000 将 000 按照带符号数转为十进制为-32768
28、 65535: 1111 +1 11111111 11111111 +1 1 00000000 00000000 65536 unsigned b=655536;而 b 属于无符号整型, 在内存中只占两字节, 因此只 能包括 16 位。 标准 C 没有具体要求规定各类型数据所占内存的字节数, 现以这次考试标 准 viusal c+6.0 为例, 说明各类型变量所占的位数。 类型 short int long 所占位 所 占 字 数 16 32 32 节数 2 4 4 2 unsigned int unsigned long float double 类型 所占位 所 占 字 节 数 32 32
29、 32 64 数 4 4 4 8 unsigned short 16 3.3 实型数据( 浮点数) 3.31.实型常量 (1)小数形式: 由数字和小数点组成, 必须有小数点, 小数点的某一侧能够没有 数字。如: .23 ,123.876 ,123. (2)指数形式: 用”e”或”E”后接一个整数, 表示以 10 为底的幂数。 注意: ”e”或”E”之前之后必须有数字, 且之后的数字必须是整数。她们和 前后的数字之间不能有空格。 例如: 例 2-15:下列合法的常量是( ) 。 A.-32169 B.0128 C.0XDEFG D.13E0.5 例 2-16:下列合法的实型常量是( ) 。 (A
30、) 0Xff (B)124E (C) 1.23E5.0 (D) 3.E2 (E) 1.25E+2 (F).23e+02 3.32.实型变量 单精度型 float 占 4 字节 双精度型 double 占 8 字节 长双精度 long double 占 16 字节( 较少用) 4. 表示式与运算符 4.1 算术运算符及其表示式: + - * / % %: ( 求余运算) 注意: (1)%两边必须是整型数据。12.0%3 表示式是错误的。 (2)求余( %) 的方法是: 忽略符号, 求出余数, 再将所得余数的符号定为与被除 数相同。 例如: 17%3 结果是: 2 17%-3 结果是: 2, -1
31、7%3 结果是: -2, -17%-3 结果是: -2 4.2 强制类型转换 强制类型表示式: ( 类型名) 表示式 注意: 类型名( 表示式) 这种形式是 C+的强制类型表示方式。 5.赋值运算符及其表示式 5.1.赋值运算符 = 格式: 变量名=表示式 功能: 将表示式的值赋给左边的变量。 注: (1)赋值运算符左边只能是一个变量, 不能是常量, 也不能是表示式。 a+b=3 4=3 是非法的表示式 a=6 a+(b=3) 都是合法的表示式 a=b=20 a=(b=10)/(c=2) 都是合法的表示式 (2)实型数据赋给整型变量时, 小数部分被舍去, 整型数据赋给实型变量时, 系 统自动将
32、整型数据转换为实型数据。 例如: float a; int b; 表示式 a=10%3 的值是 1.0 表示式 b=a=10%3 的值是 1 5.2.复合赋值运算符及其表示式: += -= *= /= %= &= |= = = = 例如: a+=3 相当于 a=a+3, a/=b+4 相当 a/=(b+4) 或 a=a/(b+4) 例:若 a=12,则执行表示式 a+=a-=a+a 后 a 的值是多少? 分析: a+=a-=(a+a) /*a 的值是 12*/ a+=a-=24 a+=a=a-24 a+=a=-12 a+=-12 a=a+(-12) a=-24 /*a 的值是 12*/ /*a
33、 的值是 12*/ /*a 的值是 12*/ /*a 的值是-12*/ /*a 的值是-12*/ /*a 的值是-24*/ 5.3.自增、 自减运算符及其表示式 + -注意: (1)只能用于变量, 不能用于常量和表示式。 如: 6+ ( a+b) - 都是错误的。 (2)当它们用于变量名前时, 表示式的值为变量的值加一或减一。当位于变量名 后时, 表示式的值为变量原来的值。不论位于变量名前还是变量名后, 只要进行 了自增、 自减运算, 变量的值都会在原来的基础上加 1 或减 1。 如: a=3 则 a+ 表示式的值是 3 运算之后变量的值是 4 a=3 则 +a 表示式的值是 4 之后变量的值
34、是 4 a=3 则 a- 表示式的值是 3 之后变量的值是 2 a=3 则 -a 表示式的值是 2 之后变量的值是 2 (3)口诀: j=i+;这个表示式是先引用后增值。即: 先把 i 的初始值给变量 j, 然后 i 再 自加 1。 j=+i;这歌表示式是先增值后引用。即: i 先自加 1, 然后再将我们自加后的 值赋值给变量 j。 可是记住它们是一起执行的, 就是说: 例如 j=i+先引用后增值实际上是一起 执行的, 它们之间不存在先后关系, 我们只是位了好记才用到了上面的方法。老 师在上课的时候先不要说, 可是你们必须知道。j=i-,j=-i 和上面 j=i+,j=+i 的 方法是一样。
35、5.4 逗号运算符及其表示式 1.格式: 表示式 1, 表示式 2, , 表示式 n 注意: 1.逗号表示式的值是整个逗号表示式中最后一个表示式的值。 2.求值顺序是从左到右依次求解。 例如: a( 3, b1) 的值是 1 运算结束后 a 的值是 1, b 的值是 1。 四相关试题 1. 年 4 月相关试题 ( 11) 以下叙述中正确的是 A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格, 要求一行内只能写一个语句 C)C程序书写格式自由, 一个语句能够写在多行上 D)用C语言编写的程序只能放在一个程序文件中 ( 12) 以下选项中不合法的标识符是 A)prin
36、t B)FOR C)&a D)_00 (13)以下选项中不属于字符常量的是 A) C B) C C)xCC0 D) 072 (14)设变量已正确定义并赋值, 以下正确的表示式是 A)x=y*5=x+z B)int(15.8%5) C)x=y+z+5,+y D)x=25%5.0 填空( 7) 设变量已正确定义为整型, 则表示式n=i=2,+i,i+的值为【7】 。 2. 9月相关试题 ( 11) C 语言源程序名的后缀是 A) .exe B) .C C) .obj D) .cp ( 12) 可在 C 程序中用作用户标识符的一组标识符是 A) and B) Date C) Hi D) case _
37、 y-m-d Dr.Tom Big1 ( 13) 以下选项中, 合法的一组 C 语言数值常量是 A) 028 B) 12. C) .177 D) 0x8A .5e-3 0Xa23 4e1.5 10,000 -0xf 4.5e0 0abc 3.e5 ( 14) 以下叙述中正确的是 A) C 语言程序将从源程序中第一个函数开始执行 B) 能够在程序中由用户指定任意一个函数作为主函数, 程序将从此开始执 行 C) C 语言规定必须用 main 作为主函数名, 程序将从此开始执行, 在此结束 D) main 可作为用户标识符, 用以命名任意一个函数作为主函数 ( 16) 以下关于 long、 int
38、和 short 类型数据占用内存大小的叙述中正确的是 A) 均占 4 个字节 B) 根据数据的大小来决定所占内存的 字节数 C) 由用户自己定义 D) 由 C 语言编译系统决定 ( 17) 若变量均已正确定义并赋值, 以下合法的 C 语言赋值语句是 A) x=y=5; B) x=n%2.5; C) x+n=i; D) x=5=4+1; 3. 4月相关考题 ( 12) 下列叙述中错误的是( D ) A) 计算机不能直接执行用 C 语言编写的源程序 B) C 程序经 C 编译程序编译后, 生成后缀为.obj 的文件是一个二进制文件 C) 后缀为.obj 的文件, 经连接程序生成后缀为.exe 的文
39、件是一个二进制文件 D) 后缀为.obj 和.exe 的二进制文件都能够直接运行 ( 13) 按照 C 语言规定的用户标识符命名规则, 不能出现在标识符中的是( B ) A) 大写字母 B) 连接符 C) 数字字符 D) 下划线 ( 14) 以下叙述中错误的是( C ) A) C 语言是一种结构化程序设计语言 B) 结构化程序有顺序、 分支、 循环三种基本结构组成 C) 使用三种基本结构构成的程序只能解决简单问题 D) 结构化程序设计提倡模块化的设计方法 ( 15) 对于一个正常运行的 C 程序, 以下叙述中正确的是( A) A) 程序的执行总是从 main 函数开始, 在 main 函数结束
40、 B) 程序的执行总是从程序的第一个函数开始, 在 main 函数结束 C) 程序的执行总是从 main 函数开始, 在程序的最后一个函数中结束 D) 程序的执行总是从程序的第一个函数开始, 在程序的最后一个函数中结束 ( 19) 有以下程序, 其中%u 表示按无符号整数输出( B ) main( ) unsigned int x=0xFFFF; /* x 的初值为十六进制数 */ printf( ”%un”,x) ; /*注意: x 是占两个字节*/ 程序运行后的输出结果是 A) -1 B) 65535 C) 32767 D) 0xFFFF 第二章 顺序结构 一教学重点、 难点 知识点 C
41、语句分类 字符输出函数 putchar() 字符输入函数 getchar() 格式输入函数 printf() 格式输出函数 scanf() 所 占 分 考核几率 专家点评 值 0-1 1-2 1-2 3-4 3-4 30% 70% 70% 100% 100% 简单识记 难度适中, 重点掌握 难度适中, 重点掌握 难度适中, 重点理解重点掌 握 难度适中, 重点理解重点掌 握 二教学内容 1.语句 C 语句共分为 5 类: 1.1 控制语句 1.2 函数调用语句: printf( ”this is a c statement”; ) 1.3 表示式语句 每一个合法的表示式后加上分号( ; ) 就
42、构成了表示式语句。 +a; i+j; 语句和表示式的区别: 表示式有唯一确定的值, 而语句没有值。 1.4 赋值语句 格式: 赋值表示式; i=1, j2 是逗号表示式 i=1; j2; 是两条赋值语句 i+; i-; +i; -i; 都是赋值语句 等价于 ii+1; 或 i=i-1; 1.5 空语句: 只有一个单独的分号构成的语句。如: ; 就是一条空语句。 1.6 复合语句: 用一对将若干语句括起来构成一条复合语句。 2.输入输出语句 在使用库函数时必须先用预编译命令#include 或 #include”头文件 名”将相应的头文件包含到源程序中。 如: #include 2.1.prin
43、tf( ) 函数 格式: printf( ”格式控制” , 输出列表) ; 功能: 按格式控制指定的格式输出数据。 注意: 格式控制包括以开头的”格式说明符”和原样输出的普通字符。 如: printf( ”ad, a+bd” , 30, 4+7) ; 输出结果是: a30,a+b11 (1)d 格式 d: 按实际长度输出十进制整数。 md: 输出占 m 列, 若小于 m 列, 左边补空格, 若大于 m 列, 按实际输出。 -md: 输出占 m 列, 若小于 m 列, 右边补空格, 若大于 m 列, 按实际输出。 ld: 输出长整型数据, 输入输出长整型数据时必须用该格式。 例如: printf
44、(”%d,%6d,%-6d,%ld”,386,1234,3456,12345L); 输出结果: 386, 1234,3456 ,12345 printf(”%2d”,12345); 输出结果: 12345 ( 2) u 格式 u: 以无符号十进制形式输出整数。 printf(”%u”,-1); 65535 ptintf(”%u”,-32768);32768 ( 3) o 格式 o: 以无符号八进制形式输出整数, 不输出前导符 0。 printf(”%d,%o”,-1,-1); -1,177777 (4)x 或 X 格式 x 或X 以无符号十六进制形式输出整数。不输出前导符 0x 或 0X, 小
45、写对小 写, 大写对大写。 printf(”%d,%x,%X,%x”,-1,-1,0xabc,0XAbc); -1,ffff,ABC,abc 注: 若要输出十六进制和八进制的前导符, 则要用o 和x、 X 格式。 printf(”%#o,%#x,%#X”,-1,-1,0xaBc); 0177777,0xffff,0XABC (5)c 格式 c 用来输出一个字符, 不输出单引号定界符。c 和d 能够相互转换。 printf(”%c,%d”,a,a); a,97 printf(”%c,%d”,100,100); d,100 (6)s 格式 用来输出一个字符串, 不输出双引号和字符串结束符。 s:
46、输出字符串的有效字符。 printf(”%s”,”china0yunnan”); china %ms:输出占 m 列, 若小于 m 列, 左边补空格, 大于 m 列, 按实际输出。 printf(”%5s,%-5s,%2s”,”swfc”,”swfc”,”swfc”); swfc,swfc ,swfc %m.ns:输出占 m 列, 只输出字符串的左 n 个字符到 m 列的右端。 如: printf(”%7.5s”,”yunnan”); yunna (7)f 格式: 按小数形式输出实型数据。 f: 默认输出 6 位小数。 如: printf(”%f,%f”,543.12,5.4312e+2);
47、543.1 0,543.1 0 %m.nf:输出占 m 列, 其中有 n 位小数。若超过 m 列, 确保 n 位小数后按实际输 出。注意四舍五入问题。 如: printf(”%7.3f,%-7.3f,%4.2f”,3.1415726,3.1415926,314.5926); 3.142,3.142 ,314.59 (8)e 格式 以指数形式输出一个实数。小数点前只有一位非零数, 5 位小数, 3 位指数。 如: printf(”%e,%e”,123.4,123.45e-7); 234000e+002,1.234500e-005 (9)g 格式 自动在f 和e 中选择较短的一种输出, 对于小数部分不输出无意义的 0。 如: printf(”%g,%g”,123.45,123.45e-2); 123.45,1.2345 printf(”%g”,.0); 23e+08 小结: (1)表示输出一个。 如: printf(”%d=%d”,10,10); %d=10 (2)除了 x, e, g 大小写均可外, 其它都只能小写。 如: printf(”%d=%D”,20,20); 20=%D (3)输出格式说明符所能操作的数据类型必须与输出项的类型一致。 如: printf(”%d”,1.23