最简单的c程序设计v.ppt_第1页
最简单的c程序设计v.ppt_第2页
最简单的c程序设计v.ppt_第3页
最简单的c程序设计v.ppt_第4页
最简单的c程序设计v.ppt_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

第3章最简单的C程序设计 3 1数据的表现形式及其运算3 2C语句3 3数据的输入输出3 4顺序程序设计举例 3 1数据的表现形式及其运算 3 1 1常量和变量3 1 2数据类型3 1 3整型数据3 1 4字符型数据3 1 5浮点型数据3 1 6怎样确定常量的类型3 1 7运算符和表达式 3 1 1常量和变量 1 常量 在程序运行过程中 其值不能被改变的量整型常量 如1000 12345 0 345实型常量十进制小数形式 如0 34 56 790 0指数形式 如1 234e3 代表12 34 103 3 1 1常量和变量 字符常量 单引号括起来的一个字符 如 a 字符常量的值是一个数字值 如字符常量 0 其ASCII为48 所以存储的实际值为48 字符常量可以象整数一样参与运算 3 1 1常量和变量 字符常量还有另外一种形式 转义字符形式 转义字符功能转义字符功能 a响铃 反斜杠字符 b退一格 单引号字符 f走纸换页 双引号字符 n换行 问号 r回车 ooo1 3位8进制数代表的字符 t横向跳格 xhh1 2位16进制数代表的字符 3 1 1常量和变量 双引号括起来的字符序列 如 Howareyou 0 等字符串在存储时末尾被自动加上字符 0 字符常量与只包含一个字符的字符串常量的区别 字符串常量 3 1 1常量和变量 用一个标识符代表一个常量 definePI3 14159main floatr s area scanf f 符号常量 3 1 1常量和变量 符号常量习惯用大写字母表示 如 PI NUM等使用符号常量的好处 含义清楚修改方便 3 1 1常量和变量 2 变量 在程序运行期间 变量的值是可以改变的变量名 标识符由字母 数字 下划线组成 第一个字符不能是数字不能使保留字不同系统对其长度有不同规定 建议为8先定义 后使用保证变量使用的正确性便于编译程序分配内存单元便于检查运算的合法性 3 1 1常量和变量 3 常变量 constinta 3 在该变量存在期间其值不能改变 3 1 2数据类型 所谓类型 就是对数据分配存储单元的安排 包括存储单元的长度 占多少字节 以及数据的存储形式不同的类型分配不同的长度和存储形式 3 1 2数据类型 C语言允许使用的数据类型 基本类型整型类型基本整型短整型长整型双长整型字符型布尔型 浮点类型单精度浮点型双精度浮点型复数浮点型 3 1 2数据类型 C语言允许使用的数据类型 基本类型枚举类型空类型派生类型指针类型数组类型结构体类型共用体类型函数类型 算术类型 纯量类型 3 1 3整型数据 1 整型数据的分类最基本的整型类型基本整型 int型 占2个或4个字节短整型 shortint VC 6 0中占2个字节长整型 longint VC 6 0中占4个字节双长整型 longlongint C99新增的 3 1 3整型数据 整型数据在内存中的存放形式以二进制形式存放 有符号数以 补码 存放正数的补码与原码相同负数的补码 原码逐位取反后 加12n 负数 n是数据存放所占二进制位数 是补码例 5和 5的存放形式 3 1 3整型数据 2 整型变量的符号属性整型变量的值的范围包括负数到正数 3 1 3整型数据 整型变量的定义所有的变量需先定义类型inta b c 指定a b c为整型变量 unsignedcount 指定lower为无符号整型变量 longs 有些变量可以预先设置初值 inta 0 b c 指定a b c为整型变量 a的初值为0 inta 0 b 0 c 0 指定a b c为整型变量 a b c的初值为0 3 1 3整型数据 整型变量的溢出由于超出整型变量的表示范围而会产生 溢出 例 int型变量a为32767 加上1后出现什么结果 3 1 3整型数据 自动转换无符号整型常量 在常量后加u或U 长整型常量 在常量后加l或L 3 1 4字符型数据 1 字符与字符代码大多数系统采用ASCII字符集字母 A Z a z数字 0 9专门符号 29个 等空格符 空格 水平制表符 换行等不能显示的字符 空 null 字符 以 0 表示 警告 以 a 表示 退格 以 b 表示 回车 以 r 表示 等 3 1 4字符型数据 字符 1 和整数1是不同的概念 字符 1 只是代表一个形状为 1 的符号 在需要时按原样输出 在内存中以ASCII码形式存储 占1个字节整数1是以整数存储方式 二进制补码方式 存储的 占2个或4个字节 3 1 4字符型数据 2 字符变量用类型符char定义字符变量charc 系统把 的ASCII代码63赋给变量cprintf d c n c c 输出结果是 63 3 1 5浮点型数据 浮点型数据是用来表示具有小数点的实数float型 单精度浮点型 数值以规范化的二进制数指数形式存放 3 1 5浮点型数据 如 3 14159的存储格式如下 3 14159 0 314159 101 变量在内存中的存放形式 数据精度 与 存储范围 的矛盾 注意 实型变量的分类变量的定义floatx y 指定x y为单精度实型变量 doublez 指定z为双精度实型变量 3 1 6怎样确定常量的类型 字符常量 由单撇号括起来的单个字符或转义字符整型常量 不带小数点的数值系统根据数值的大小确定int型还是long型等浮点型常量 凡以小数形式或指数形式出现的实数C编译系统把浮点型常量都按双精度处理如要编译系统将实数作为单精度来处理 可以数后加f或F 3 1 7运算符和表达式 1 基本的算术运算符 正号运算符 单目运算符 负号运算符 单目运算符 乘法运算符 除法运算符 求余运算符 加法运算符 减法运算符 注意 对于 运算符 两个整数相除得整数 正负数相除 向0取整 对于 运算符 运算对象必须是整数 2 自增 自减运算符 运算符的作用是使变量的值增1 i i i 1 运算符的作用是使变量的值减1 常见的用法有 i i 在使用i之前 先使i的值加 减 1i i 在使用i之后 使i的值加 减 1 已知i 5 1 j i j i 2 j i j i 5 6 6 6 注意 1 自增和自减运算符只能用于变量 表达式 x y 是不合法的 2 自增和自减运算符的结合方向是 自右向左 如表达式 i 等价于 i 3 i j是 i j还是i j 自左至右4 i 5 printf d d i i 结果 3 算术表达式和运算符的优先级与结合性 算术表达式用算术运算符和括号将运算对象连接起来的式子称为算术表达式 运算对象包括常量 变量 函数等运算符有优先级和结合性在求表达式的值时 要按照优先级的高低依次计算如果运算符两侧优先级相同 则按规定的结合方向进行 结合性 从左到右 负号运算符 加减运算符 我最高 我最低 运算的两个数中有一个数为float或double型 结果是double型 系统将float型数据都先转换为double型 然后进行运算 2 如果int型与float或double型数据进行运算 先把int型和float型数据转换为double型 然后进行运算 结果是double型 3 字符型数据与整型数据进行运算 就是把字符的ASCII代码与整型数据进行运算 4 不同类型数据间的混合运算 charch inti floatf doubled ch i f d f i 例 3 1 7运算符和表达式 5 强制类型转换运算符强制类型转换运算符的一般形式为 类型名 表达式 int x y 将x y的值转换成int型 float 5 3 将5 3的值转换成float型 有两种类型转换系统自动进行的类型转换强制类型转换 例如若x原为实型变量且值为2 6 在执行i int x后得到一个整数2 并把它赋给整型变量i 但x仍为实型 值为2 6 6 运算符 1 算术运算符 2 关系运算符 3 逻辑运算符 4 位运算符 5 赋值运算符 及其扩展赋值运算符 6 条件运算符 6 运算符 7 逗号运算符 8 指针运算符 和 9 求字节数运算符 sizeof 10 强制类型转换运算符 类型 11 成员运算符 12 下标运算符 13 其他 如函数调用运算符 3 2C语句 3 3 1C语句的作用和分类3 3 2最基本的语句 赋值语句 3 3 1C语句的作用和分类 源程序文件1 C程序 数据声明 源程序文件2 源程序文件n 预处理命令 数据声明 函数1 函数首部 函数n 函数体 执行语句 3 2 1C语句的作用和分类 语句分为以下5类 1 控制语句 if switch for while do while continue break return goto等 2 函数调用语句printf ThisisaCstatement 3 表达式语句a 3 4 空语句 5 复合语句 1 赋值运算符 简单的赋值就是把一个表达式的值赋给一个变量 例如 i 5 j 3 i j 1 3 2 2最基本的语句 赋值语句 2 复合的赋值运算符在赋值符 之前加上其他运算符 可以构成复合的运算符例如 i 2等价于i i 2a b 5等价于a a b 5 x 3等价于x x 3 3 赋值表达式由赋值运算符将一个变量和一个表达式连接起来的式子称为赋值表达式 形式 变量 赋值运算符 表达式 例如 x 3y x 3对赋值表达式求解的过程是 将赋值运算符右侧的表达式的值赋给左侧的变量 赋值表达式的值就是被赋值的变量的值 结合性 从右向左 4 赋值过程中的类型转换两侧类型不一致 但都是算术类型时 自动将右侧的类型转换为左侧类型后赋值 注意 一般形式的赋值表达式中的 表达式 也可以是一个赋值表达式 如 a b 8按照从右到左的结合性等价于a b 8 赋值表达式也可以包含复合的赋值运算符 设a的值为6 计算a a a a先进行a a的计算 结果为36再进行a 36的计算 相当于a a 36 30最后进行a 30的计算 相当于a a 30 60 4 赋值语句 由赋值表达式加上一个分号构成 作用是将一个确定的值赋给一个变量 格式 变量名 表达式 说明先计算 后赋值 赋值语句中的 是赋值号而不是数学意义上的等号 赋值号两侧的内容不能任意调换 看下面程序的运行结果 main inta 1 b 2 b a printf d d a b 如果把b a 换成a b 程序的结果如何 3 3数据的输入输出 3 4 1输入输出举例3 4 2有关数据输入输出的概念3 4 3用printf函数输出数据3 4 4用scanf函数输入数据3 4 5字符数据的输入输出 3 3 1输入输出举例 例3 5求 方程的根 a b c由键盘输入设 3 3 1输入输出举例 解题思路 首先要知道求方程式的根的方法 由数学知识已知 如果 0 则一元二次方程有两个实根 若记 include includeintmain doublea b c disc x1 x2 p q scanf lf lf lf 程序中调用数学函数sqrt 输入a b c的值 include includeintmain doublea b c disc x1 x2 p q scanf lf lf lf 输入的是双精度型实数 include includeintmain doublea b c disc x1 x2 p q scanf lf lf lf 要求输入3个实数 自动转成实数后赋给a b c 输入输出是以计算机主机来说的 C语言中的输入输出是通过函数来实现的 如printf函数和scanf函数 使用输入输出函数应将其声明所在的头文件 stdio h 包含到程序中 include stdio h 或 include 3 3 2有关数据输入输出的概念 3 3 3用printf函数输出数据 1 格式输出函数格式 printf 格式控制 输出表列 功能 printf函数可以将任意类型的多个数据输出到标准输出设备上 一般为显示器 普通字符 格式说明 转义字符 格式控制 由双引号括起来的字符串 由 和格式字符组成 它的作用是将输出的数据按照指定的格式输出 需要原样输出的字符 用于控制输出 printf Sum d d d n a b a b 普通字符 格式控制字符 转义字符 例子 如变量a 3 b 4 Sum 3 4 7I 格式字符含义d十进制形式输出带符号整数 正数输出不带符号 o八进制形式输出无符号整数 不输出前导0 X x十六进制形式输出无符号整数 不输出前导0 x u十进制形式输出无符号整数c输出一个字符s输出一个字符串f小数形式输出单 双精度实数 隐含输出6位小数 E e指数形式输出单 双精度实数 数字部分有6位小数 G g当指数小于 4或大于给定的精度时用 e格式 否则用 f格式 61 说明 e格式符 指定以指数形式输出实数 e VC 给出小数位数为 位指数部分占5列小数点前必须有而且只有1位非零数字printf e 123 456 输出 1 234560e 002 附加格式说明符格式字符含义字母l用于长整型 可加在格式符d o x u之前m 整数 数据最小宽度 n 整数 对实数 表示输出n位小数 对字符串 表示截取的字符个数 输出的数字或字符在域内向左靠 例3 2 includeintmain inta b floatx charc a 123 b 1 x 3 14 c A printf d 4d n a a printf d x o u n b b b b printf c d n c c printf f 6 1f n x x return0 1111 1111 1111 1111 1在内存中的存放 补码形式 123 123 运行结果 写出运行结果 3 140000 3 1 1 ffff 177777 65535 A 65 2 格式输入函数格式 scanf 格式控制 地址表列 功能 scanf函数可以从标准输入设备输入任意类型的多个数据 一般为键盘 注意 输入数不能规定精度 格式控制与printf函数中的含义相同 3 3 4用scanf函数输入数据 当输入一串数据时 系统如何区分每个数据呢 1 根据格式字符的含义分隔字符 scanf d c f 输入数据12345则a 123 b 45 3 用隐含的分隔符 在输入数据中用空格或换行符或制表符tab分隔数据 scanf d d d 如果输入3 4 5则a 3 b 5 第二个数据跳过不赋给任何变量 4 使用显示分隔符 在格式说明符中还可以有其它字符 在输入字符时应输入与这些字符相同的字符 scanf d d d 如果输入abc则字符 a 送给c1 空格送给c2 字符 b 送给c3 注意 1 输入时不能规定精度 如scanf 6 1f 是错误的 3 3 5字符数据的输入输出 字符输出函数格式 putchar c 功能 将c值所对应的字符输出到标准输出设备上 一般为显示器 c可以是整型或字符型 一次只能输出一个字符 也可以输出控制符 如putchar n 输出一个换行符 即光标移到下一行 例3 3 include stdio h intmain charch1 ch2 ch1 A ch2 B putchar ch1 putchar ch2 return0 运行程序 运行结果为ABputchar 函数也可以输出转义字符 如 putchar 101 即输出字符 A 字符输入函数格式 getchar 功能 从标准设备 一般是键盘 输入一个字符 字符输入函数没有参

温馨提示

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

评论

0/150

提交评论