《单片机实践应用与技术》第1章.ppt

上传人:sh****n 文档编号:7225691 上传时间:2020-03-16 格式:PPT 页数:31 大小:327.31KB
返回 下载 相关 举报
《单片机实践应用与技术》第1章.ppt_第1页
第1页 / 共31页
《单片机实践应用与技术》第1章.ppt_第2页
第2页 / 共31页
《单片机实践应用与技术》第1章.ppt_第3页
第3页 / 共31页
点击查看更多>>
资源描述
1 第1章C语言基础 2 1 1C语言简介 C语言是结构化的语言C语言是模块化的语言语言简洁 紧凑 使用方便 灵活程序可移植性好数据结构丰富 具有现代化语言的各种数据结构C语言运算符丰富 代码效率高 3 源程序的结构特点 一个源程序不论由多少个文件组成 都有一个且只能有一个main函数 即主函数 源程序中可以有预处理命令 include命令仅为其中的一种 预处理命令通常应放在源程序的最前面 每一个说明 每一个语句都必须以分号结尾 但预处理命令 函数头和花括号 之后不能加分号 标识符 关键字之间必须至少加一个空格以示间隔 若已有明显的间隔符 也可不再加空格来间隔 4 书写程序时应遵循的规则 一个说明或一个语句占一行 用 括起来的部分 通常表示了程序的某一层次结构 一般与该结构语句的第一个字母对齐 并单独占一行 低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写 以便看起来更加清晰 增加程序的可读性 5 1 2数据类型 语言的数据类型系统有基本数据类型指针类型结构化数据类型的构造设施基本数据类型三种 整型 short int long 实型 float double longdouble 字符型 char 结构化数据类型的构造设施 数组 结构 联合和枚举 指针类型 指针类型直接赋予数据对象在内存中的地址的概念 6 1 2 1基本数据类型 常量变量整型数据字符型数据实型数据 7 1 3数据运算 语言有很丰富的运算符 总结如下 算术运算符 加 减 乘 除 求余 关系运算符 大于 大于等于 等于 不等 逻辑运算符 逻辑非 逻辑与 逻辑或 位运算符 按位取反 位与 位或 异或 右移 条件运算符 指向结构体成员运算符 结构体成员运算符 分量运算符 8 1 3数据运算 自增 自减 运算符 类型转换运算符 类型 10 指针 取地址运算符 指针运算符 取地址运算符 11 下标运算符 12 赋值运算符 13 逗号运算符 14 长度运算符 sizeof 15 负号运算符 16 括号运算符 9 算术运算 算术运算符 语言的算术运算符有以下 种 双目运算两数相加 如5 6 单目运算取正值 如 15 双目运算两数相减 如5 6 单目运算取负值 如 19 双目运算符 两数相乘 如5 6 双目运算符 两数相除 如15 6 双目运算符 取模或求余数 两个数必须都是整数 如15 6值为3 10 算术运算符的优先级和结合方向 圆括号高 单目运算符 取正 取负 双目运算符 乘 除 取模 双目运算符 加 减低 11 关系 逻辑及条件运算 关系运算 大于 大于或等于 逻辑运算 逻辑非 逻辑与 逻辑或 算术运算符 关系运算符 赋值运算符高低 12 关系 逻辑及条件运算 条件运算条件运算符构成的条件表达式的一般形式为 判定式 表达式 表达式 例如 floatf f1 f 1 0 1 5 2 f1 1 0 1 5 0 2 13 位运算 按位取反运算符 左移运算符 按位与运算符 按位异或运算符 按位或运算符 14 1 4基础语句 从程序流程的角度来看 程序可以分为三种基本结构 即顺序结构选择结构循环结构 15 1 4 1顺序结构 赋值语句一般形式 变量 表达式 右边的表达式可为赋值表达式例如 a b c d e 5 按照赋值运算符的右接合性 因此实际上等效于 e 5 d e c d b c a b 16 格式字符串 表示输出类型的格式字符格式字符意义d以十进制形式输出带符号整数 正数不输出符号 o以八进制形式输出无符号整数 不输出前缀O x以十六进制形式输出无符号整数 不输出前缀OX u以十进制形式输出无符号整数f以小数形式输出单 双精度实数e以指数形式输出单 双精度实数g以 f e中较短的输出宽度输出单 双精度实数c输出单个字符 17 1 4 2选择结构 两路选择结构多路选择结构if语句的一般形式为if 表达式 语句1else语句2例如 if a b printf MAX f n a elseprintf MAX f n b 18 IF语句应用举例 例1 1 输入三个整数 按值从大到小的顺序输出它们 设存储输入的三个整数的变量分别为x y z 若程序通过比较它们的值 并按值的各种可能分布情况 并按从大到小的顺序将它们输出 程序会因考虑各种可能出现的情况 显得非常繁杂 实际上为了实现问题要求 可以通过调整它们的值来实现 比如说 经程序对它们调整后 使它们满足关系x y z 然后依次输出它们的值 也能实现问题的要求 调整变量x y z的值 使它们满足x y z 可分三步来实现 先调整x和y 使x y 再调整x和z 使x z 至此 x有最大值 最后再调整y和z 使y z 这样就完成全部调整的要求 写成算法如下 输入x y z if x y if x z if y z 输出x y z 19 switch语句 语言提供switch语句用于描述多路选择情况 switch语句的一般形式为 switch 表达式 case常量表达式1 语句序列1case常量表达式2 语句序列2 case常量表达式n 语句序列ndefault 语句序列n 1 20 1 4 3循环结构 while语句do while语句for语句 21 while语句 while语句用来描述while型循环结构 它的一般形式为 while 表达式 语句while语句的执行过程是 1 计算while之后的表达式的值 2 测试表达式的值 当值为非0时 转步骤 3 如值为0 则结束while语句 3 执行while语句的循环体 并转步骤 1 从而构成循环 22 do while语句 do while语句的一般形式为do语句while 表达式 其中的语句是do while语句的循环体 do while语句的执行过程是 1 执行do while语句的循环体 2 求while之后的表达式的值 3 测试表达式的值 当值为非0时 转步骤 1 从而构成循环 如值为0 则结束while语句 23 for语句 for语句的一般形式为for 表达式1 表达式2 表达式3 语句4for语句的一般形式也可等价地用以下形式的while语句来表达 表达式1 while 表达式2 语句表达式3 24 举例 例1 2 编制一个程序 实现输入n个整数 输出其中的最大数 并指出其是第几个数 直接写出程序如下 includevoidmain intn i max x index printf 输入n n scanf d 25 1 5函数 函数定义的一般形式为 类型区分符函数名 形式参数说明表 说明和定义部分语句序列 例求两个数中最小值的函数min doublemin doublex doubley 返回double型值 有两个形参 两个形参x y都为double型的 函数返回x和y中的小者的值 returnx y x y 函数min 返回double型值 它有两个double型形参为x和y return语句的执行将结束函数的执行 26 1 6数组 一维数组的定义形式为类型说明符数组名 常量表达式 多维数组类型说明符数组名 常量表达式 常量表达式 27 1 6 3字符数组和字符串 字符数组的定义形式与其他数组的定义形式一样 char字符数组名 元素个数 例如 chars 5 28 1 7指针 指针的基本概念在计算机中 所有的数据都是存放在存储器中的 一般把存储器中的一个字节称为一个内存单元 不同的数据类型所占用的内存单元数不等 如整型量占2个单元 字符量占1个单元等 为每个内存单元编上号 根据一个内存单元的编号即可准确地找到该内存单元 内存单元的编号也叫做地址 既然根据内存单元的编号或地址就可以找到所需的内存单元 所以通常也把这个地址称为指针 为了避免混淆 我们中约定 指针 是指地址 是常量 指针变量 是指取值为地址的变量 定义指针的目的是为了通过指针去访问内存单元 29 1 8预处理 语言提供的预处理命令主要有宏定义 文件包含 条件编译和行控制 在源程序中 为区别预处理命令和一般的 代码 所有预处理命令行都以字符 和预处理命令开头 语言提供的预处理命令主要有宏定义 文件包含 条件编译和行控制 在源程序中 为区别预处理命令和一般的 代码 所有预处理命令行都以字符 和预处理命令开头 30 无参宏的宏名后不带参数 其定义的一般形式为 define标识符字符串带参宏定义的一般形式为 define宏名 形参表 31 条件编译 条件编译有三种形式 下面介绍一种 ifdef标识符程序段1 else程序段2 endif它的功能是 如果标识符已被 define命令定义过则对程序段1进行编译 否则对程序段2进行编译
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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