已阅读5页,还剩75页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计 C语言考试大纲及所占考试比例 第一章C语言概述 1 1 1什么是程序 常见的软件 Word Excel 暴风影音等 由一系列详细的指令组成 它们用某种计算机语言写成 如C VC Java C 等 能准确的告诉计算机怎么处理文字或数据 程序员必须给出计算机要执行的详细指令序列 即程序 程序就是完成某种功能的指令序列 1 1程序和程序设计 1 1 2程序设计一个简单的程序设计一般包含以下几个部分 确定数据结构 确定算法 编码 调试程序 整理并写出文档 1 2 程序运行过程 1 2 1几个基本概念 源程序 用高级语言或汇编语言编写的程序称为源程序 以ASCII码形式存储 C源程序的扩展名为 C CPP 目标程序 源程序经过 编译程序 翻译所得到的二进制代码称为目标程序 目标程序的扩展名为 OBJ 可执行程序 目标程序与库函数连接 形成完整的可在操作系统下独立执行的程序 可执行程序的扩展名为 EXE includevoidmain printf ThisisaCprogram n 1 2C程序的运行过程 C语言中的指令 哎呀 我理解不了 编译程序 解释程序 可以 我现在可以理解了 C语言由编译 解释程序转换为机器代码 这种机器代码计算机可以理解 编译和执行C程序 C语言函数库 编译 连接 源程序 是用户创建的文件 以 c 为文件扩展名保存 目标文件 是编译器的输出结果 这类文件的常见扩展名为 obj 01形式 头文件 含有函数的声明和预处理语句 用于帮助访问外部定义的函数 头文件的扩展名为 h 可执行文件 是连接器的输出结果 可执行文件的扩展名为 exe 1 2 2C程序上机步骤 一 编辑 将源程序输入计算机内存中 修改源程序 将改正后的源程序保存为磁盘文件 以ASCII码形式输入和存储 扩展名为 C或 CPP 源程序 二 编译 先进行语法检查 并将无语法错误的源程序翻译成二进制形式的目标代码 扩展名为 OBJ 目标程序 三 链接 将各模块的二进制目标代码与系统标准模块连接 得到一个可执行文件 扩展名为 EXE 可执行程序 四 执行 执行经过编译和连接的可执行目标文件 1 2 3VC 6 0上机步骤 1 启动VC 6 0 启动 开始菜单 程序 VisualC 6 0 工作窗口 编辑窗口 工作空间窗口 输出窗口 2 在编辑状态下输入或修改源文件 编辑新文件编辑新文件 文件 新建 文件 C SourceFile 保存文件 文件 保存或Ctrl S 编辑已存在的文件打开文件 文件 打开或Ctrl O或直接双击文件另存文件 文件 另存为 编译时的提示信息将显示在输出窗口 双击错误信息则转到相应出错处 修改完毕再重新编译 直到无任何错误后编译成功 显示 0error s 0warning s 注意 编译成功只能说明程序无语法错误 不一定代表算法正确或运行结果正确 3 编译源程序组建 编译或Ctrl F7编译时若弹出如下提示框 选择 是 4 运行源程序组建 执行或Ctrl F5 1 2算法 算法特性 有穷性 经过有限步骤解决问题 确定性 每个步骤所规定的操作必须是确定的 可行性 每一个步骤必须能够有效地执行 输入和输出特性 有零个或多个输入 有一个或多个输出 程序 数据结构 算法 算法概念算法是指为解决某个特定问题而采取的确定且有限的步骤 自然语言描述专门的算法表达工具进行算法描述 算法描述方法 流程图N S图PAD图伪代码 结构化程序设计由三大基本结构组成 顺序结构 选择结构和循环结构 1 顺序结构 第三章 语句1 语句2 语句3 1 3结构化程序设计 2 选择结构 判断表达式 满足 语句1 语句2 不满足 3 循环结构 判断表达式 循环体 满足 不满足 第四章内容 第五章内容 1 4 语言程序的基本结构 1 4 1简单 程序介绍 includevoidmain printf ThisisaCprogram n 编译预处理命令 函数 语言程序的两大部分 编译预处理命令 以 开头 一般放在程序的最前面 include表示文件包含 即将后面文件的内容包含到本程序中stdio h是包含了输入输出函数的头文件 函数 一个程序中可以有多个 必须有一个main函数 includevoidmain printf ThisisaCprogram n 函数 用于实现程序要求的功能包括函数首部和函数体两部分 函数首部 即函数的第一行 包括函数类型 函数名 参数 放在括号内 可以没有参数 函数体 即由 开始 到 结束的内容 函数首部 函数体 includevoidmain printf ThisisaCprogram n main是函数名 称为主函数 每个程序必须有且只能有一个main函数 程序总是从main函数开始执行 void用于说明函数值的类型 void表示函数空值 没有值 函数体由一对大括号括起来 范围以 开始 结束 printf是C语言的标准输出函数 表示把 内的字符串按原样输出到显示器上 除非遇到 或 n 是换行符 即输出完后回车换行 每个语句必须以分号 结束 ThisisaCprogram EG101 C 语言程序的基本结构 includevoidmain 例 输出下列图形 verygood includevoidmain printf n printf verygood n printf n 例2 includevoidmain 主函数 inta b sum 定义三个整型变量 a 2 b 3 为变量a b赋值 sum a b printf sumis d n sum 说明 表示注释部分 以 开始 以 结束 注释只是对程序的说明 仅起帮助阅读程序的作用 不影响程序的运行 可以放在程序的任意位置 注意不能嵌套注释 即 定义变量后 系统就为其分配相应大小的存储单元 用于存放其值 语言要求变量必须先定义 后使用 为赋值运算符 把 右边表达式的值赋值给左边的变量 sumis5 eg102 c 2 3 5 d 表示以 十进制整数 形式输出数据 输出时代以一个十进制整数值 该值由 后边对应的变量或表达式提供 更常用的形式 includevoidmain inta b sum scanf d d 说明 scanf是C语言的标准输入函数 的含义是得到后面变量的地址 即将输入的数按前面指定的格式给后面指定的变量 d 表示输入输出一个整数 eg102 c 可以是任意两个整数 即程序执行前不能确定a b的值 例3 求任意2个整数中的较大数 用函数实现比较大小 includevoidmain inta b c scanf d d 1 4 2程序的基本结构 include include define 预处理命令 voidmain 声明部分 定义本函数中用到的变量 执行部分 完成本函数功能的语句 其他函数 声明部分执行部分 1 一个 程序由一个或多个函数构成 程序中应至少包含一个main函数 函数是 语言的基本单位 函数式语言 2 一个 程序总是从main函数开始执行 而不论main函数在整个程序中的位置如何 一般说来 又随着main函数的结束而整个程序结束 3 被调用的函数可以是系统提供的库函数 也可以是用户根据需要自己编写的函数 4 语言本身没有输入输出语句 输入和输出操作由库函数scanf和printf等函数来完成 对输入输出实行函数化 5 每个语句和数据定义的最后必须有一个分号 分号是 语句的必要组成部分 函数的构成 一个函数由两部分构成 1 函数首部 即函数的第一行 包括函数名 函数类型 函数参数 形参 名 参数类型 intmax intx inty 注意 一个函数名后面必须跟 作为函数的标志 main 2 函数体 即函数首部下面 内的部分函数体内一般又分为两部分 变量定义 数据声明 部分 定义在本函数中用到的变量或数组的数据类型 执行部分 由若干语句组成 完成函数所规定的功能 intmax intx inty intz if x y z x elsez y return z 第二章数据类型及其运算 2 1标识符 标识符 在C语言中 有许多符号的命名 如变量名 函数名 数组名等 都必须遵守一定的规则 按此规则命名的符号称为标识符 1 标识符的命名规则 由字母 数字和下划线 组成 第一个字符必须是字母或下划线 不是是数字 区分字母的大小写 有效名称 principal cost price marks 3 lastname city 无效名称 123rate currency discount zipcode 2 标识符分类 关键字 c语言规定了一批标识符 他们在c语言中代表着固定的含义 不能另做它用 标识数据类型的关键字 intlongshortcharfloatdoublesignedunsignedstructunionenumvoidconst标识存储类型的关键字 autostaticregisterexterntypedef标识流程控制的关键字 ifelseswitchcasedefaultforwhiledobreakcontinuereturngoto标识运算符的关键字 sizeof 2 标识符分类 预定义标识符 一类具有特殊含义的标识符 用于标识库函数名和编译预处理命令 c语言语法允许用户把这类标识符另做它用 但是这些标识符将失去系统规定的原意 可以用但最好不用 编译预处理命令 defineincludeifdefifndefendif等 标准库函数 scanfprintfgetcharputchar等 用户标识符 由用户根据需要定义的标识符称为用户标识符 图2 1数据类型分类 短整型 short 整型 int 长整型 long 浮点型 实型 单精度型 float 双精度型 double 字符类型 char 基本类型 构造类型 数组类型结构体类型 struct 共用体类型 union 指针类型空类型 void 数据类型 2 2数据及数据类型 枚举型 2 3 常量 直接常量 十进制数 八进制数 十六进制数 符号常量 常量 字符常量 整型常量 以非0开始的数 如 220 560 369等 以0开始的数 如 06 0106 0677等 以0X或0 x开始的数 0X123 0 xab 0X4e 浮点型常量 十进制实数 小数形式指数形式 由数字 小数点以及必要时的正负号组成 如 29 56 56 33 0 056 056 0 0等 相当于科学计数法 将形如a 10b的数值表示成如下形式 aEb或aeb如 2 956E3 0 789e8 792e 6等 用两个英文单引号限定的一个字符 如 a 9 Z 等 占一个字节的存储空间 存放的是其ASCII码值 一个整数 另外 还有以 开头的转义字符常数 如 n 见表2 1 字符串常量 用英文双引号限定的一个字符序列 如 Helloworld a 占用一段连续存储单元 每个字符占一个字节 尾部加字符串结束标志符 0 如字符串 STUDY 的存储形式 定义格式 define符号常量名常量 举例 definePI3 14159 例2 1 常量是在程序运行过程中其值不能被改变的量 整型常量注意以下几点 1 在C程序中 只有十进制数可以是负数 而八进制和十六进制数只能是正数 2 在C语言中 在一个整型常量的后面加上字母L或l 表示长整型数 3 十进制转换为N进制的方法 除N取余倒排 4 N进制转换为十进制的方法 从右向左按权展开相加 实型常量注意以下几点 1 小数形式必须有小数点 12 12 2 指数形式 e的前后必须有数字 比且e的后面必须为整数 正数或负数 字符型常量注意以下几点 1 字符常量只能用单引号括起来 不能用双引号或其他括号 2 字符常量只能是单个字符 不能是字符串 3 字符型常量可以参与数值运算 此时用的是字符的ASCII码进行运算的 例如 5 105 10 4 ddd和 xhh中的ddd和hh分别为八进制和十六进制的ASCII代码 如 101和 X41都表示字母 A 字符型常量与字符串常量的区别 1 字符型常量是用单引号括起来的 字符串常量使用双引号括起来的 A A 2 字符常量只能是单个字符 字符串常量则可以含零个或多个字符 3 可以把一个字符常量赋值给一个字符变量 但不能把一个字符串常量赋给一个字符变量 注意 在C语言中没有相应的字符串变量 但可以用一个字符数组来存放一个字符串变量 4 字符型常量占一个字节的内存空间 字符串常量占的内存字节数等于字符串中字符个数加1 增加的一个字节用来存放字符串结束符 0 ASCII码为0 例如 a 在内存中占一个字节 a 在内存中占两个字节 表2 1转义字符表 这样实现 printf Idontlike 例如输出 Idon tlike 程序eg2 c include definePI3 14159 定义符号常量PI voidmain floatr 16 7 定义变量r并赋初值 floatl s 定义圆周长和圆面积的变量 l 2 PI r 计算圆周长 s PI r r 计算圆面积 printf L fS f n l s 输出圆周长 面积的计算结果 例2 1已知圆的半径 编写程序计算圆的周长和面积 使用符号常量的好处 含义清楚 在需要改变一个常量时能做到 一改全改 注意 1 符号常量在使用之前必须先定义 2 符号常量一般用大写 变量的特点 变量的值可以改变 变量具有特定的数据类型 根据数据类型为其分配存储单元 变量有相应的内存空间 变量的值存储在它所占的存储空间中 2 4 变量 变量是在程序运行过程中其值可以被改变的量 变量 变量名 存储单元 标识 值 人房间房间号具体的屋子 常量变量变量名存储单元 变量就是存储常量的量 变量的分类 分类 标识符 所占字节数 1 整型变量 2 实型变量 3 字符型变量 表2 2变量的分类 eg3 变量定义的一般格式为 数据类型标识符变量名表 说明 数据类型符用来说明变量的数据类型 它可以是 语言提供的任意一种类型 变量名表可以是一个变量 也可以是多个变量 多个变量之间用逗号分隔 3 程序中用到的变量 必须 先定义后使用 变量的值 变量赋值的一般格式为 变量名 表达式 变量的赋值一般有以下几种情况 在定义变量的同时为其赋值 也称为初始化 例如 intx 12 y 9 先定义变量后赋值 例如 intx y x 12 y 19 或x y 12 intx y 12 3 通过输入函数赋值 scanf d d 程序中 inti i 10 内存中每个字节有一个编号 地址 10 变量 变量的地址 变量名 变量值 programeg4 c includevoidmain charch1 A ch2 ch2 a printf c c n ch1 ch2 例2 2字符型变量应用举例 例2 3字符型变量与整数的关系举例 programeg4 c includevoidmain charch ch1 inti ch A ch1 ch 32 i ch printf c c c n ch ch1 i printf d d d n ch ch1 i 字符型变量与整型变量的关系 字符型变量的值可以赋给一个整型变量 字符型变量可以和整数混合运算 整数值可以以字符的形式输出 反之亦然 字符数据的存储将一个字符常量存放到一个字符变量中 是将该字符的相应的ASCII代码存放到存储单元中 运算符的基本特性 2 5 运算符和表达式 1 运算对象的数目 2 优先级 3 结合性 1 单目运算符 2 双目运算符 3 三目运算符 去掉一个最高级去掉一个最低级一 二 三和赋值算术 关系和逻辑移位插在算术后逻辑位插在逻辑前 自左向右自右向左 单目 三目和赋值 表达式 由运算符和操作数组成的有意义的式子 注意 1 操作数可以是常量 变量 表达式 函数等 2 任何一个表达式都有一个确定的值 Sum num1 num2 表达式 Z X 2 5 Y 算术运算 关系运算 逻辑运算 1 算术运算符 2 算术表达式 3 运算符优先级与结合性 同级别 高 同级别 低 举例 左结合性 1 关系运算符 2 关系表达式 3 关系运算符优先级与结合性 同级别 高 同级别 低 举例 左结合性 4 计算结果只有两种 真 1 或假 0 1 逻辑运算符 逻辑非 逻辑与 逻辑或 2 逻辑表达式 3 逻辑运算符优先级与结合性 级别由高到低 左结合 右结合 4 计算结果只有两种 真 1 或假 0 举例 其他运算 其他运算 1 自增 自减运算符 右结合性 2 赋值运算符 右结合性 3 条件运算符 右结合性 3 逗号运算符 左结合性 算术表达式 由算术运算符和操作数组成的有意义的式子 一般算术表达式 18 x y 3 a 2 28 b 特别注意 注意 乘号 不能省略 结果为2 结果为2 1 求余运算符 只应用于整数 判断一个整数是否是另一个整数的倍数以及分离一个多位数时 通常用求余运算 2 两整数相除 结果为整数 1 35 4 结果为0 结果为1 1 0 3或1 3 0结果才为实数0 3333 5 0 4或5 4 0结果才为实数1 25 26 82 3 例如 a b c dx y x 3 y 1 26 关系表达式 由关系运算符和操作数组成的有意义的式子 结果为0或1 关系运算符的优先级低于算术运算符 x 3 y 1 26 例2 4若x 5 y 8求表达式x 6 y y x 3的值 若有如下定义 charc d intm 2 n 5 求下列表达式的值 1 c 1 e 2 c A a D 3 m 2 n n 9 4 m 2 n 5 1 n 10 10101 如 a b a c xx 3 逻辑表达式 由逻辑运算符和操作数组成的有意义的式子 例2 6 若x 3 y 7 求逻辑表达式 1 x 2 9 y的值 表2 2逻辑运算真值表 例2 6 若x 3 y 7 求逻辑表达式 1 x 2 9 y的值 注意 逻辑表达式 操作数 任意数据 结果 非零 零 表示操作数为真 表示操作数为假 1 0 表示结果为真 表示结果为假 若有如下定义 charc d intm 2 n 5 floatx 0 0 y 5 7 求下列表达式的值 1 a y 110 例2 7 写出判断某年份是否为闰年的逻辑表达式 闰年的判断方法 当某一年份是400的倍数或者是4的倍数但不是100的倍数时 该年为闰年 自增自减运算 1 运算符 3 表达式 2 运算符优先级与结合性 右结合性 前缀表达式 a a 后缀表达式 a a 表达式 前缀表达式 后缀表达式 操作数 运算结果 进行增一或减一运算 操作数增1或减1之后的值 操作数 运算结果 进行增一或减一运算 操作数原来的值 相同点 操作数 变量 的值相同不同点 表达式的值不同 若k为int型变量且赋值为11 请写出运算k 后表达式的值 和变量k的值 若k为int型变量且赋值为11 请写出运算 k后表达式的值 和变量k的值 eg6 c includevoidmain inta b c a b c 1 a 逻辑运算的短路特性 在逻辑表达式的求值过程中 并不是所有的运算对象都参加运算 而是按照自左向右的计算机顺序 当某个运算对象的值计算出来后 可以确定整个表达式的值时 其余的运算对象将不参加运算 注意 自增自减表达式的操作数只能是变量 不能是常量或表达式 赋值运算 1 运算符 等 3 表达式 2 运算符优先级与结合性 右结合性 4 计算结果 赋值号左边变量的值 赋值表达式 由赋值运算符和操作数组成的式子 变量名 操作数 说明 1 赋值号的左边必须是变量名 右边可以是C语言中任何合法的操作数 2 赋值运算的功能是先求出右边操作数的值 然后把此值赋给赋值号左边的变量 3 赋值表达式的值为赋值后左边变量的值 4 复合赋值表达式的等价 a 3a a 3 a a 3 a a a 3 eg7 c includevoidmain inta 10 b 10 printf d n a a a a printf d n b b b b 条件运算 1 运算符 3 表达式 2 运算符优先级与结合性 右结合性 4 计算结果 条件表达式 由条件运算符和操作数组成的式子 操作数1 操作数2 操作数3 说明 条件表达式的求值过程 先计算操作数1的值 若为非0 则取操作数2的值作为整个表达式的值 否则取操作数3的值作为整个表达式的值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 具身智能+医院手术室多角色协同辅助方案可行性报告
- 燃气管道泄漏应急处置方案
- 医院物业患者服务方案可行性报告
- 具身智能+物流仓储自动化方案可行性报告
- 物业资产管理方案执行措施可行性报告
- 新媒体艺人宣传推广合同模板2025
- 广东捐卵合同法律风险2025
- 水利工程施工现场临时用电方案
- 2025北京市职业病防治院招聘学科骨干5人笔试考试参考试题及答案解析
- 免疫异常治疗方案
- CPK-数据自动生成器
- 出库单模板电子版
- 某证券公司财务信息系统建立方案
- MBEC项目管理标准手册
- GB/T 700-2006碳素结构钢
- GB/T 6144-1985合成切削液
- 人保财险首台套重大技术装备综合保险条款
- 产品质量法-产品质量法课件
- 《有效沟通与实用写作教程》课件-(11)
- 部编版四年级上册语文 期中检测卷(二)
- IEC61850入门ppt课件
评论
0/150
提交评论