




免费预览已结束,剩余48页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C程序设计第三章简单的c程序 顺序结构 主讲教师 鲁萍西安建筑科技大学理学院 第三章简单的C程序设计 顺序 3 1顺序程序设计举例3 2数据的表现形式及其运算常量 变量整形 字符型 浮点型运算符及表达式3 3C语句 赋值语句3 4数据的输入和输出scanf和printfgetchar和putchar 小结 习题 顺序程序设计举例 includeintmain floatf c f 68 0 c 5 9 f 32 printf f f nc f n f c return0 A0301华氏温度 如68 转为摄氏温度 如20 输入f的值 输出c的值 F 68 000000C 0 000000 5 0 C 20 000000 顺序程序设计举例 definePI3 1416intmain floatr a b r 2 a 2 PI r b PI r r printf 半径 f n周长 f n面积 f n r a b return0 A0302例 根据圆半径 求圆周长和圆面积 输入半径r的值 输出a b的值 半径 2 000000周长 18 849600面积 28 274400 周长a 2 pi r 面积b pi r r scanf f 键盘输入 一 数据的概念在计算机科学中 数据是指能由程序处理的对象 日常生活中的数字 字符 图形图象及声音等 在计算机中均作为数据看待 二 数据的类型在高级语言中 每一个数据都属于一个特定的类型 不同类型的数据的表示 存储及操作不相同 3 2数据的表现形式及其运算 姓名Alice性别F年龄20英语80数学85平均82 5 字符串字符整型实型实型实型 3 2 1常量与变量 3 3 1常量和符号常量1 常量 在程序运行过程中 其值不能被改变的量 常量说明关键字 const 2 常量的分类 1 整型常量 如 1234 562 实型常量 如 123 233 字符常量 如 A a m 4 字符串常量 如 A China 5 转义字符 如 n t 123 xF9 6 符号常量 如 definePI3 1415926 defineN30 转义字符 例 在屏幕上输出一个笑脸 ASCII码值为2 includevoidmain printf c n 2 输出 笑脸 字符 增加一个转义字符的图 符号常量 概念 用一个标识符表示常量 define标识符常量表达式例 definePI3 1415926注意 1 标识符一般用大写2 不能给符号常量赋值例 PI 6 错误常用于 1 把有意义的常数定义为符号常量 2 在程序中多次出现的常数 定义为符号常量优点 含义清晰 一改全改 include definePI3 1416main floatr area printf pleaseenterr scanf f 符号常量的应用 例2 3录入50个学生的成绩 统计100 90 89 80 79 70 69 60 59 0个分数段学生的人数 并显示统计结果 统计结果记为count 自顶向下 1 录入50个学生的成绩2 统计个分数段学生的人数3 显示统计结果 defineN50 30 30 30 30 N N 3 2 2标示符与变量 1 变量变量 在程序执行过程中其值可以改变的存储单元 该存储单元的名字称为变量名 变量有不同的类型 存放不同类型的数据 注意 变量要先定义再使用定义变量 类型变量名表 inta b c a 3 b 8 c a b a 5 3 8 11 5 变量的命名规则 标示符用于命名程序中的实体对象 如变量 符号常量函数 数组等 1 标示符是以字母或下划线开头 由字母 数字及下划线等组成的字符序列 如 abc x1 AB67 NAME2 2 序列长度最大值依编译系统而定 3 区分大小写字母 如abc和Abc是不同的变量 4 不允许使用关键字作变量名 例 123dr 43auto5A 2 88 错误 123dr 43Auto 正确 C语言的数据类型图 在C语言中 数据类型用相应的关键字表示 3 2 3整型 类型存储大小取值范围int2字节 215 215 1 32768 32768short2字节 215 215 1 32768 32768long4字节 231 231 1longlong8字节 263 263 1 身份证号 学号 没有负数 符号位 数值位 115 C语言的unsigned和signed数 对整型和字符型1 signed 有符号数可以存放正数和负数2 unsigned 无符号数只能存放正数 实数没有unsigned和signed的区分 如 身份证号 学号等 取消符号位 与右边的各位一起用来表示数值本身 整型默认有符号型 3 2 3整型 unsignedint0 216 10 65535unsignedshortint0 216 10 65535unsignedlongint0 232 1 类型存储大小取值范围int16bit 215 215 1 32768 32768shortint16bit 215 215 1 32768 32768longint32bit 231 231 1 intmain charc1 c2 c1 a c2 98 printf c c n c1 c2 printf d d n c1 c2 return0 3 2 4字符型数据 a 98 97 1 可以是转义字符 n 2 存储 字符的ASCII码 3 输出 整数或字符 4 允许对字符进行算术运算 即对ASCII码值进行算术运算 A0303例 字符数据的算术运算 3 2 4字符型数据 intmain charc1 c2 c1 a c2 98 printf c c n c1 c2 printf d d n c1 c2 return0 运行结果 ab9798 a 98 97 字符ASCII码a97b98c99 c1 1 a 1 以字符方式输出 以整数方式输出 A0303例 字符数据的算术运算 课堂练习 给定一个小写字母 输出大写字母 includeintmain charc1 c2 c1 a c2 c1 32 printf c c2 return0 运行结果 Pleaseinputachar a 输入 A 输出 3 2 4字符型数据 3 2 5浮点型数据 实型变量分为三种 1 单精度 float 有效数字7位 2 双精度 double 有效数字16位 3 长双精度 longdouble 有效数字19位 3 4 2舍入误差 intmain floata b a 12345678900 0 b a 20 printf f n b return0 实际 12345678868 000000 期望 12345678920 0000000 错误原因 float有效数字7位 后面的数字无意义 如何得到正确计算结果 double A0304例 数据有效长度 数据在内存中的存储方式 1 内存单元的地址 内存单元的编号 与变量名对应 2 内存单元的内容 变量的值 例 对如下定义 inta b charc floatx 变量a b c x的内存分配情况 基本数据类型练习 1 以下正确的字符常量是 A A B 398 C A D xgh 2 以下正确的整数常量是 A 082B 0 xhfC 654D 9 03 以下是正确的实型常量是 A 9 0B 0 5eC 1 2e 2 6D e 24 设有chara a inti 2 printf c a i 的结果为 A c B d C r D g 5 以下转义字符用于换行的是 A r B t C n D 3 2 7运算符和表达式 1基本算数运算符 加 减法 取负 乘 除 模运算 即求余数 关于除法运算 的说明 a b a b都是整数 其商取整数 小数部分舍弃例 5 2 2结果取整商值 a 2 48 97 2的整商值 a b其一是实型 另一个自动转换为实型例如 5 2 2 5 5 2 2 5例如 1 2 0 1 2 0 5 关于求余数运算符 的说明 a b 求a除以b的余数 a b均为整型 或者单字符数据 运算结果为整数 结果为a除以b的余数 例 5 2 1 a 2 1 97 25 0 2错 自增 自减 运算实例 A0305例 自增自减运算符intmain inta b c d a 5 b 5 c a d b printf c d n c printf d d n d printf a d b d n a b return0 先将a值自加1 再将增加后的a值赋值给c先将b的值赋给d 然后b再自加1 输出结果 c 6d 5a 6 b 6 i i i 1 使i的值增 i i i 1 使i的值减 自增 自减 运算 2 用法与运算规则 1 前置运算 i i 即先增减 后运算先使i增 减 1 再以增 减后的值参与其它运算 2 后置运算 i i 即先运算 后增减变量先参与其它运算 然后再使变量的值增 减 自增 自减运算的几点说明 1 只能用于变量 不能用于常量和表达式 例1 5 a b 错误2 其结合方向是从右到左 注意前置 后置问题 例2 inta 5 b b a 运算结果 a 6b 5 a 后置运算 先引用变量的值 然后变量值加1 3 在表达式中 避免这种用法x x x 算术表达式 例 设有定义 floata 2 b 4 h 3 以下C语言表达式与代数式结果不同的是 A a b h 2B 1 2 a b hC a b h 1 2D h 2 a b 例 a 简单表达式 2 简单表达式 x y 2 1 复杂算术表达式 1 概念 用运算符和括号将运算对象 常量 变量和函数等 连接起来的 符合语法规则的式子 称为表达式 2 表达式求值 按运算符的优先级高低次序执行 算术表达式 常用函数 1 幂次方用函数pow 3 平方根用函数sqrt 表示使用以上数学函数需要 include例1 代数式3x3 x 2算术表达式 3 pow x 3 x 2例2代数式算术表达式 a 2 6 y 5 x 例 inti floatf doubled longe如何计算 10 a i f d e 3 7不同类型数据之间的转化 1 自动转化2 类型强制转化 混合运算的转化规则 转化规则 运算符两侧的操作数的数据类型不同 则系统 先转换 后运算 首先将数据自动转换成同一类型 然后在同一类型数据间进行运算 double float long unsigned int char short 1 表示必须的转换 char和short型必须转换成int型 float型必须转换成double型 2 表示不同类型的转换方向 3 7不同类型数据之间的转化 类型强制转化和自动转化实例 inti floatf doubled longe10 a i f d e计算机从左到右扫描1 10 a 10 97 107i fi f转为double运算107转为double i fe转为double上述类型转换为系统自动进行 double float long unsigned int char short 数据类型强制性转化 y 3x 3 5 A0306例 取整运算main floatx 3 5 inty y int x printf y d y printf x f x 强制转换 转化为为指定的数据类型 格式 要转换成的数据类型 被转换的表达式 强制转换类型得到的是一个所需类型的中间量 原表达式类型并不发生变化 将3 5转化为整型数赋值给y 但x本身的类型和其值未改变 1 类型名称必须用 括号括起来 2 强制转换类型得到的是一个所需类型的中间量 原表达式类型并不发生变化 3 当被转换的表达式是一个简单表达式 如简单变量 时 外面的一对圆括号可以缺省 数据类型强制性转化说明 double a float 5 2 float 5 2 double a float 5 2将5转换成实型再除以2 2 5 float 5 2 将5整除2的结果转换成实型2 0 算数运算符练习 1 1 设intx y 3 执行x y 之后 x y的值分别为 A 3 5B 4 5C 3 4D 4 42 设有intm i 5 执行m i之后 m i的值分别为 A 5 5B 5 6C 6 6D 6 53 表达式7 5的值为 A 1B 2 5C 2D 04 设有a 2 b 5 x 3 5 表达式 float a b 2 int x 2的结果值为 A 3B 5C 5 0D 7 5 floatx 3 5 y 3 6 则表达式 int x y 的结果值为 A 6B 4C 3D 76 floatx 3 5 y 3 6 则表达式 int x y的结果值为 A 7B 4C 3 6D 6 67 设有chara A inti a 2 printf d i 的结果为 A 65B 66C 32D 67 算数运算符练习 2 3 3C语言的语句 1 控制语句 1 选择结构控制语句 if else switch 2 循环结构控制语句 do while for while break continue 3 其它控制语句 goto return2 函数调用语句 由一次函数调用加一个分号构成 例如 printf ThisisaCfunctionstatement 3 表达式语句 表达式后加一个分号构成 例如 num 5 是一个赋值语句 4 空语句 仅由一个分号构成 不执行任何操作 例 5 复合语句 由大括号括起来的一组语句构成 例如 main 复合语句 3 2C语言的语句 注意 没有分号 赋值语句及赋值运算符 赋值运算符 变量 表达式将表达式的值赋给变量例1 t x 5p q r 9x y 1 z 2 P 9 x 1 注意 赋值运算符按自右而左的结合顺序 例 floatf f 23 计算机中f 23 00000 注意 将右边表达式类型转化为左边变量的类型 例 a 2 a a 2a 3 a a 3x y 7 x x y 7 a 5 6 a a 5 6 a 3 5 a a 3 5 复合赋值运算 运算时要把整个表达式当做一个整体 3 4数据输出 输入 1 C语言中本身不提供输入 输出语句 所有的输入 输出操作都是由函数来实现的 printf scanf putchar getchar2 使用输入输出库函数时 必须 include 3 4数据的输入输出 includeintmain floata b c disc x1 x2 p q printf 输入abc scanf lf lf lf A0307例 求ax2 bx c 0方程的根 设b2 4ac 0a b c由键盘输入 计算disc b2 4ac 计算根x1和x2 输入abc 输出x1 x2 计算p和q printf函数输出数据 功能 向屏幕输出一个或多个任意类型的数据 语法 printf 格式控制字符串 输出项表列 例 printf max d c printf Theareais f a printf c c n c1 c2 printf Pleaseinputachar 整形实型字符型多用于提示信息 printf sum d a b printf函数输出数据 1 常用格式符之一 d 按整型数的实际长度输出十进制数 f 输出实数 单 双精度 以小数形式输出 c 输出一个字符 s 输出一个字符串 A0308例 输出不同类型的数据 includevoidmain inti 2 charc H floatx 3 14 printf i d c c x f n i c x 输出结果i 2 c H x 3 140000 printf格式字符说明 f 不指定字段宽度 整数全部输出 并输出6位小数 m nf 指定输出共m列 其中小数n位 例 输出实数 includevoidmain floatx y x 111111 111 y 222222 222 printf f n x y 运行结果333333 328125 8 1f 运行结果333333 3 scanf函数输入数据 功能 从标准输入设备中读字符串 语法 scanf 控制字符串 参数1 参数2 1 输入的数据存放在参数列表中 参数必须是地址 变量 若控制字符串中包含普通字符 则输入时必须与其对应格式说明 用 d d 格式输入时 不能用逗号作为数据分割符 可以用回车和tab键 例 scanf d d 例452 inta b scanf d d 输入 100 200输出 a 100 b 200 1 输入变量前要加符号 2 输入函数格式要求严格3 类型必须匹配4 控制串中的普通字符必须原样一起输入 float f f f f 输入函数scanf 例452 inta b scanf d d 输入 100 200输出 a 100 b 200 用系统默认的分隔符 回车 tab键 空格 例如 scanf a d b d 输入a 2 b 3 A0309例 从键盘输入一个小写字母 输出大写字母 includeintmain chara b printf Pleaseinputachar sca
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025董事聘任合同书:新兴市场拓展与战略合作
- 2025版毛纱跨境电商销售合同
- 2025版水暖系统节能改造与评估合同模板
- 二零二五年度地皮开发项目合同示范
- 二零二五年度餐饮店面租赁合同附带知识产权保护协议
- 二零二五版参考建筑工程居间服务合同模板
- 二零二五年度储罐租赁及食品饮料储存服务合同
- 2025版办公家具选购与安装一体化服务合同
- 楼宇自控系统培训
- 二零二五年度新型智慧社区房地产广告合作协议
- 老年肌肉衰减综合征(肌少症)课件
- 超星尔雅《诗经》导读检测题答案
- 冷却系统橡胶软管设计基础规范
- 地源热泵埋管冬夏季换热平衡计算
- 湖北省职称评审专业目录表(工程系列)
- 常用呼吸机报警及故障的排除课件
- 中考《红星照耀中国》各篇章练习题及答案(1-12)
- 华中师范大学辅导员队伍建设实施办法
- 微生物的代谢调节 ppt课件
- 中外合作办学项目自评报告.doc
- 新生儿沐浴室医院感染管理制度
评论
0/150
提交评论