C语言的基本知识.ppt_第1页
C语言的基本知识.ppt_第2页
C语言的基本知识.ppt_第3页
C语言的基本知识.ppt_第4页
C语言的基本知识.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言的基本知识 辅助训练 C语言提要 C语言的语法C语言的基本运算及流程控制语句控制系统中常用的C语言函数TC2 0环境的使用C程序的编写要求 C语言的语法 C语言的特点 程序以函数为单元 并且有且仅有一个主函数main 变量的声明和定义必须在函数头部 语句必须以 结束 注释 C语言允许直接访问物理地址 可以直接对硬件进行操作 能进行位 bit 操作 C语言的语法 C语言的数据类型 整型 int short long 数据在内存中以2进制形式存放 字符型 char浮点型 float double指针 char int float 一维整形数组 inta 10 数组是有序数据的集合 数组中的每一个元素都属于同一个数据类型结构体 struct公用体 union无符号数 unsigned unsignedint unsignedchar C语言的基本运算 算术运算 C语言的基本运算 算术赋值运算 注意 5 2 2 5 2 0 2 5 C语言的基本运算 位运算 位运算的举例 位与运算 规则 两个运算量中相应位都是1 则该位的结果为1 否则为0 例 01010101 01011010 01010000 与 x 0 x55 01010101 y 0 x5a 01011010 x y 0 x50 01010000 位运算的举例 位或运算 规则 两个运算量中相应位只要有一个是1 则该位的结果为1 否则为0 例 01010101 01011010 01011111 或 x 0 x55 01010101 y 0 x5a 01011010 x y 0 x5f 01011111 位运算的举例 位反运算 规则 一个运算量的每一位都取反 即将1变为0 0变为1 例 01010101 10101010 反 x 0 x55 01010101 x 0 xaa 10101010 位运算的举例 移位运算 规则 对整型操作数中的每一位向右或向左移动 变量一端被移出的位被舍弃 另一端空出的位则以0填补 例 01010101 00000101 移位 舍弃0101 x 0 x55 01010101 x 4 0 x05 在计算机系统中常常采用移位运算以快速实现乘法和除法的运算 每左移1位等效于乘以2 每右移1位等效于除以2 位运算的应用举例 方法1 先右移n位 再与 0 x01 进行与运算bit byte n 00001110 1 思考 如何从一个字节byte中取出第n位 C语言的基本运算 关系运算 C语言的基本运算 逻辑运算 C语言的流程控制语句 1 if 表达式 语句1else语句2while 表达式 语句do语句while 表达式 for i 0 i N i 语句 C语言的流程控制语句 选择语句if 表达式 语句1else语句2 C语言的流程控制语句 循环语句while 表达式 循环体语句do语句循环体语句while 表达式 C语言的流程控制语句 续 for i 0 i N i 循环体语句 C语言的流程控制语句 2 switch 表达式 case常量表达式1 语句1 break case常量表达式2 语句2 break case常量表达式n 语句n break default 语句n 1 多分支选择语句 当表达式的值与某一个case后面的常量表达式的值相等时就执行此case后面的语句 若所有的case中的常量表达式的值都没有与表达式的值匹配的 就执行defaut后面的语句 辅助控制语句 Break语句多分支选择语句switch语句 在执行一个case分支后 使流程跳出switch结构 即终止switch语句的执行 可以用一个break语句来达到此目的 实际上break语句用来从循环体内跳出循环体 即提前结束循环接着执行循环下面的语句 break语句的一般形式为 Break Break语句不能用于循环语句和switch语句之外的任何其它语句中 辅助控制语句 Continue语句一般形式为 Continue 其作用为结束本次循环 即跳过循环体中下面尚未执行的语句 接着进行下一次是否执行循环的判定 continue语句和Break语句的区别是 continue语句只结束本次循环 而不是终止整个循环的执行 而Break语句则是结束整个循环过程 不再判断执行循环的条件是否成立 C语言的流程控制语句 转移语句break continue intn for n 10 n 100 n if n 3 0 continue printf 5d n return goto 表达式 表达式 N Y Y break continue N N Y Y N break语句退出循环 continue结束本次循环 表达式1 表达式2 d 十进制整数5 输出字段的宽度 辅助控制语句 Goto语句 goto语句为无条件转向语句 它的一般形式为 goto语句标号 语句标号用标识符表示它的定名规则与变量名相同 即由字母 数字及下划线组成 第一个字符必须为字母或下划线 辅助控制语句 Return语句return语句将被调用函数中的一个确定值带回主调函数中去 如果需要从被调用函数带回一个函数值 供主调函数使用 被调用函数中必须包含一个return语句如果不需用被调用函数带回函数值可以不要return语句 一个函数中可以有一个以上的return语句执行到哪一个return语句 哪一个语句起作用 return语句后面的括弧也可以不要 常用的C语言函数 1 标准输入输出 scanf 格式控制字符串 地址列表 例 scanf d 写端口 format 按10进制整形输出 地址运算符 变量名 n换行 将当前位置移到下一行开头 bioskey intcmd 它在Bios h头文件中进行了说明 该函数实际上调用了BIOS的INT16H中断 参数用来确定BIOSKEY 如何操作 键盘控制 C语言中几个常用的函数 2 键盘输入 kbhit 检查当前按下的键 bioskey 0 返回键盘输入并清空 while kbhit 如果没有按下任意键继续 延时 delay millisecond 延时若干毫秒 Sleep second 延时若干秒 TurboC2 0环境 管理文件和目录 装入或保存程序等 进入TurboC的编辑程序 输入和修改源程序 管理多文件工程 设置编译程序和连接程序的各种选择项 设置各种调试选择项 设置断点 在调试阶段以便监视所需的变量 编译 连接和运行装入TurboC环境的当前程序 编译和连接装入TurboC环境的当前程序 TurboC2 0环境 File 管理文件和目录 装入或保存程序等 Edit 进入TurboC的编辑程序 输入和修改源程序 Run 编译 连接和运行装入TurboC环境的当前程序 Compile 编译和连接装入TurboC环境的当前程序 Project 管理多文件工程 Options 设置编译程序和连接程序的各种选择项 Debug 设置各种调试选择项 Break Watch 设置断点 在调试阶段以便监视所需要观察的变量 TurboC2 0环境 Break Watch Watch指屏幕的监视窗口 位于屏幕的编辑窗口的下部 可以从这个监视窗口中看到你所指定的某些变量在程序执行过程中的变化 AddWatch 允许键入变量名或表达式 在调试程序时 通过窗口监视该变量或表达式的变化情况 DeleteWatch 在监视窗口中删除变量或表达式 EditWatch 允许修改监视窗口中的变量或表达式 TurboC2 0环境的使用 菜单栏 Alt FF10几个常用的命令打开 F3保存 F2编译连接生成EXE F9 运行 Ctrl F9 用Alt F5切换到用户窗口 调试 单步 F8不可进入函数体 取消ctrl F2单步 F7可进入被调函数体断点 Ctrl F8观察变量 Ctrl F7 TurboC2 0环境的使用 全屏 窗口模式切换 Alt EnterALT X退出Ctrl break跳出编辑程序编写程序 打开记事本进行编辑 保存文件名后缀为TXT 之后在TC中打开调试 编译时出现 Unabletoopeninputfile xxxxx 不能打开输入文件 xxxxx 例cos OBJ 解决办法 1 点右键另存2 设路径3 或者点属性 取消只读文件 编译时出现 Unabletoopeninputfile xxxxx 不能打开输入文件 xxxxx 例cos OBJ 解决办法 激活菜单到optionsderectoryE turboc2 0 includeE turboc2 0 libE turboc2 0save TurboC2 0环境 环境配置文件 C语言程序的编写和要求 需要解决的问题是什么 抓住主要问题把自然语言描述转换为计算机语言描述 伪代码如何解决 理清思路 画出流程图记事本上先编写代码 在TC环境中调试模块化编程 主函数中的语句尽量清晰明了 多用子函数来完成功能模块 程序编写提示 使用帮助 F1或Ctrl F1根据函数说明快速使用提高程序可读性 程序模块化简洁 明了 易读缩进编写多写注释程序调试 单步执行 加watch 观察变量 例1 main for k 0 k for j 0 j 例2 main for k 1 for j 1 复合语句配对的括弧要对齐 变量申明 全局变量与局部变量 作用域 intx x就是一个全局变量 main inty y就是一个局部变量 尽量少用全局变量 因为系统为其分配固定的永久存储空间 而系统为局部变量分配动态存储空间 IntI 全局变量 main intDI in 6 DO out 6 i 局部变量 DataInput 参数 ReadPort 参数 WritePort 参数 Control 参数 DataOutput 参数 程序规范 例 屏幕输入模块 I O端口输入模块 I O端口输出模块 控制模块 屏幕输出模块 训练内容 完成下列位操作程序代码 字节byte 位bits 8 把一个字节byte分离成8位 存于数组bits 8 voidbytetobits unsignedintbyte unsignedint bits 把存于数组bits 8 中的8位合

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论