




已阅读5页,还剩64页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章最简单的C程序设计 顺序程序设计 4 1C语句概述 1 C语句C语句是用来完成一定操作任务的 一个函数的执行部分是由语句组成的 但声明部分的内容不能称为语句 因为它只是对变量进行定义 并不产生机器操作 4 1C语句概述 2 C语句的分类 1 控制语句C有9种控制语句 if else 条件语句 for 循环语句 while 循环语句 do while 循环语句 continue 结束本次循环语句 break 中止执行switch或循环语句 switch 多分支选择语句 goto 转向语句 return 从函数返回语句 4 1C语句概述 2 函数调用语句由一次函数调用加一个分号构成 如 printf good 3 表达式语句由一个表达式加上一个分号构成 最常见的是赋值语句 如 a 3为赋值表达式 a 3 为赋值语句 4 1C语句概述 注意 任何表达式都可以加上分号而成为语句 如 i x y 都是合法的语句 只是并不把运算结果赋给另一个变量 4 1C语句概述 4 复合语句用 括起来的多个语句 又称分程序 如 a b c c x y printf d d a c 注意 复合语句中最后一个语句的分号不能缺少 5 空语句只有一个分号的语句 它什么也不做 有时用来做被转向点 或循环语句中的循环体 用来表示循环体什么也不做 4 2赋值语句 赋值表达式可以包含在表达式中 但赋值语句则不可以 如 if a b 0 t a 不能写成if a b 0 t a 4 3数据输入输出在C语言中的实现 C语言中输入和输出操作是通过函数来实现的 C语言的函数库中有一批 标准输入输出函数 其中包括 putchar 输出字符 getchar 输入字符 printf 格式输出 scanf 格式输入 puts 输出字符串 gets 输入字符串 注意 以上这些都是函数名 而不是C语言的关键字 4 3数据输入输出在C语言中的实现 在使用库函数时 要用预编译命令 include 将有关的 头文件 包括到用户源文件中 头文件 的后缀为 h 是head的缩写 include命令都是放在程序的开头 因此这类文件被称为 头文件 如 在调用标准输入输出库函数时 文件开头应有以下预编译命令 include或 include stdio h 说明 使用printf和scanf这两个函数可不加 include命令 4 4字符数据的输入输出 4 4 1putchar函数 字符输出函数 putchar函数的作用 向终端输出一个字符 可以是普通字符 也可以是控制字符和其他转义字符 4 4 1putchar函数 字符输出函数 如 includemain chara inti i 65 a B putchar a putchar i putchar n putchar 101 4 4 2getchar函数 字符输入函数 getchar的作用 从终端输入一个字符 getchar的一般形式 getchar getchar函数没有参数 getchar函数的值就是从输入设备得到的字符 可以将这个字符赋给一个字符变量或整型变量 也可以不赋给任何变量 而作为表达式的一部分 4 4 2getchar函数 字符输入函数 例 将输入的字符赋给字符变量 includemain charc c getchar putchar c 输入字符 a 并按回车键 则在屏幕上会显示 aa 4 4 2getchar函数 字符输入函数 例 将输入的字符作为表达式的一部分 putchar getchar 或printf d getchar 4 4 2getchar函数 字符输入函数 注意 1 getchar函数只能接收一个字符 putchar函数只能输出一个字符 2 一个函数要调用putchar getchar函数 应该在其前面加上包含命令 include 4 5格式输入与输出 4 5 1printf函数 格式输出函数 printf函数的作用 向终端输出若干个任意类型的数据 printf与putchar的区别 printf函数可以输出多个数据 且为任意类型 而putchar只能输出字符型数据 且只能是一个字符 4 5 1printf函数 格式输出函数 1 printf函数的一般格式printf 格式控制 输出表列 如 printf d c n i c 1 格式控制格式控制是用双引号括起来的字符串 包括两种信息 格式说明 由 和格式字符组成 如 d f等 其作用是将输出的数据转换为指定的格式输出 注意 格式说明总是由 字符开始的 普通字符 即需要原样输出的字符 4 5 1printf函数 格式输出函数 2 输出表列输出表列中列出需要输出的一些数据 也可以是表达式 如 printf a d b d a b 其中 两个 d 为格式说明 a b 以及双引号内的逗号都是格式控制字符串中的普通字符 都将原样输出 a b 为输出表列 设a 4 b 5 则输出结果为 a 4 b 5 4 5 1printf函数 格式输出函数 说明 格式控制 字符串和 输出表列 实际上是函数的参数 printf函数的一般形式可以表示为 printf 参数1 参数2 参数n 4 5 1printf函数 格式输出函数 2 格式字符注意 对于不同类型的数据要采用不同的格式字符来输出 1 d格式符作用 用来输出十进制整数 使用方法 d 按整型数据的实际长度输出 md m为指定的输出字段的宽度 如果数据的位数小于m 则左端补以空格 若大于m 则按实际位数输出 4 5 1printf函数 格式输出函数 如 a 123 b 12345 printf 5d 4d a b 输出结果为 123 12345其中 123 前面补有2个空格 4 5 1printf函数 格式输出函数 ld 用于输出长整型数据 也可以指定输出字段的宽度 对long型数据应当用 ld格式输出 特别要注意当整型数据的范围超出 32768 32767时 必须用 ld格式输出 否则会出错 int型数据可以用 d或 ld格式输出 对于long型数据也可以指定数据长度 如 8ld 4 5 1printf函数 格式输出函数 如 longa 1234567 printf ld n a printf 10ld a 输出结果为 12345671234567 4 5 1printf函数 格式输出函数 2 对于长整数可以用 lo 格式输出 也可以指定输出字段的宽度如 longinta 123456 printf ld lo 8lo a a a 输出结果为 123456 361100 361100 4 5 1printf函数 格式输出函数 2 o格式符作用 以八进制数形式输出整数 注意 1 o格式符不会输出负的八进制整数 因为其将符号位作为八进制数的一部分 如 inta 1 printf d o a a 则输出 1 177777 4 5 1printf函数 格式输出函数 3 x格式符作用 以十六进制数形式输出整数 注意 1 与o格式符一样 x格式符也不会输出负数 2 也可以用 lx 输出长整数 也可指定输出字段的宽度 如 inta 1 printf x o d 8x a a a a 输出结果为 ffff 177777 1 ffff 4 5 1printf函数 格式输出函数 4 u格式符作用 以十进制形式输出unsigned型数据 无符号数 注意 带符号的整数 int型 也可以用 u格式输出 unsigned型数据也可以用 d o x格式输出 按相互赋值的规则处理 4 5 1printf函数 格式输出函数 如 unsignedinta 65535 intb 3 printf a d o x u n a a a a printf b d o x u n b b b b 4 5 1printf函数 格式输出函数 5 c格式符作用 用来输出一个字符 注意 1 如果一个整数的值在0 255之间 也可以用字符形式输出 反过来 一个字符数据也可以用整数形式输出 2 也可以指定输出字段的宽度如 charc A intb 65 printf c d 3c n c c c printf c d 3c n b b d 4 5 1printf函数 格式输出函数 6 s格式符作用 用于输出一个字符串使用用法 s如printf s China 输出 China 字符串 ms输出的字符串占m列 如果字符串长度大于m 则将字符串全部输出 若小于m 则左补空格 4 5 1printf函数 格式输出函数 ms如果串长小于m 则在m列范围内 字符串向左靠 右补空格 m ns输出占m列 取字符串左端n个字符 且这n个字符输出在m列的右侧 左补空格 若只指定n 不指定m 则自动使m n m ns输出占m列 取字符串左端n个字符 这n个字符输出在m列的左侧 右补空格 如果n大于m 则m自动取n值 保证n个字符全部输出 4 5 1printf函数 格式输出函数 如 main printf 3s 7 2s 4s 5 3s n CHINA CHINA CHINA CHINA 输出结果为 CHINA CH CHIN CHI 4 5 1printf函数 格式输出函数 7 f格式符作用 以小数形式输出实数 包括单 双精度 用法 f整数部分全部输出 小数部分输出6位 注意 单精度实数的有效位数一般为7位 双精度为16位 用 f格式输出时 小数都占6位 4 5 1printf函数 格式输出函数 如 main floatx y doublea b x 111111 111 y 222222 222 a 1111111111111 111111111 b 2222222222222 222222222 printf x y f n x y printf a b f n a b 输出结果为 x y 333333 328125a b 3333333333333 333010 4 5 1printf函数 格式输出函数 m nf指定输出的数据共占m列 其中有n位小数 如果数值长度小于m 则左端补空格 m nf与 m nf类似 只是输出的数值向左端靠 右端补空格 4 5 1printf函数 格式输出函数 如 main floatf 123 456 printf f 10f 10 2f 2f 10 2f n f f f f f 输出结果为 123 456001 123 456001 123 46 123 46 123 46 4 5 1printf函数 格式输出函数 8 e格式符作用 以指数形式输出实数用法 e不指定输出数据的宽度和小数位数 由系统自动给出6位小数 指数部分占5位 其中 e 占1位 指数符号占1位 指数占3位 数值按规范化指数形式输出 小数点前必须有且只有1位非零数字 e格式输出的实数共占13列宽 4 5 1printf函数 格式输出函数 如 printf e e e 12345 678 0 12345 123 456 输出结果为 1 234568e 004 1 234500e 001 1 234560e 002 4 5 1printf函数 格式输出函数 m ne和 m ne n指拟输出的数据的小数部分的小数位数 如 f 123 45 则 printf e 10e 10 2e 2e 10 2e f f f f f 输出结果为 1 234500e 002 1 234500e 002 1 23e 002 1 23e 002 1 23e 002 4 5 1printf函数 格式输出函数 注意 m ne m ne若没有指定n 则自动给出6位小数 整个数据长度为13列 若m小于13 则仍按13列输出 4 5 1printf函数 格式输出函数 9 g格式符作用 根据实数大小 自动选择f或e格式来输出实数 选择输出时占宽度较小的一种 且不输出无意义的零 如 若f 123 456 则printf f e g f f f 输出结果为 123 456001 1 234560e 002 123 456 4 5 1printf函数 格式输出函数 3 printf格式符小结见表4 1 4 2注意 1 除了X E G外 其他格式字符必须用小写字母 如不可以将 d写成 D 2 格式控制 字符串内可以包含转义字符 3 格式说明 必须以 开头 以上述9种格式字符之一结束 中间可以插入附加格式说明字符 如 printf c cf fs s c s f 4 要输出字符 则应该在 格式控制 字符串中用连用两个 表示 4 5 1printf函数 格式输出函数 如 printf f 1 0 3 输出 0 333333 4 5 2scanf函数 格式输入函数 1 一般形式scanf 格式控制 地址表列 如 inta b scanf d d 其中 为地址运算符 a指a内存中的地址 变量a b的地址是在编译连接阶段分配的 4 5 2scanf函数 格式输入函数 d d 表示按十进制整数形式输入数据 输入数据时 在两个数据之间以一个或多个空格间隔 也可以用回车键 tab键 但应注意不能用逗号间隔 以下输入方法均为合法 345 345 多个空格 34 回车 5 3 按tab键 45 4 5 2scanf函数 格式输入函数 2 格式说明 4 5 2scanf函数 格式输入函数 scanf的附加说明字符 4 5 2scanf函数 格式输入函数 说明 1 对unsigned型变量所需的数据 可以用 u d或 o x格式输入 2 可以指定输入数据所占列数 系统自动截取所需数据 如 inta b charc d scanf 5d 5d scanf 3c 3c c d 输入 1234523789abcdef则 a 12345 b 23789 c a d d 4 5 2scanf函数 格式输入函数 3 如果在 后有一个 附加说明符 则表示跳过它指定的列数 该输入项在读入后不赋给相应的变量 如 scanf 2d 3d 2d 若输入 1234567则将12赋给a 将67赋给b 而345则被跳过 不赋给任何变量 在利用现成的一批数据时 可以用此法将一些不需要的数据跳过 4 5 2scanf函数 格式输入函数 4 输入数据时不能规定精度 如 scanf 7 2f a 是不合法的 4 5 2scanf函数 格式输入函数 如 scanf a f 则输入时应用以下形式 12 13 14 4 5 2scanf函数 格式输入函数 如果在两个格式符之间有1个空格 则在输入数据时 应在两个数据之间空1个或更多的空格 如果有2个空格 则应空2个或更多的空格 4 5 2scanf函数 格式输入函数 如 inta b charc d scanf d d 在输入a和b时 中间应有1个以上的空格 如输入 123456则a 123 b 456 4 5 2scanf函数 格式输入函数 3 在用 c 格式输入字符时 空格字符作为有效字符输入 如 scanf c c c 若输入 abc则a a b c b 4 5 2scanf函数 格式输入函数 4 在输入数据时 遇以下情况时认为该数据输入结束 遇空格 或按 回车键 或Tab键 按指定的宽度结束 遇非法输入 如 scanf d c f 若输入 123a120 456则a 123 b a c 120 456如果误将120 456输成12o 456 则c 12 000000 4 6顺序结构程序设计 1 顺序结构顺序结构是最简单的一种基本结构 其流程图为 4 6顺序结构程序设计 2 顺序结构程序设计举例例4 10 4 11 4 12 课后作业 4 4 4 6 4 7 程序举例 例4 1 已知圆半径radius 1 5 求圆周长和圆面积 main floatradius length area pi 3 1415926 radius 1 5 length 2 pi radius 求圆周长 area pi radius radius 求圆面积 printf radius f n radius 输出圆半径 printf length 7 2f area 7 2f n length area 输出圆周长 面积 程序运行结果如下 radius 1 500000length 9 42 area 7 07 程序举例 例3 2 类型字符d的使用main intnum1 123 longnum2 123456 printf num1 d num1 5d num1 5d num1 2d n num1 num1 num1 num1 printf num2 ld num2 8ld num2 5ld n num2 num2 num2 printf num1 ld n num1 程序运行结果如下 num1 123 num1 123 num1 123 num1 123num2 123456 num2 123456 num2 123456num1 123 程序举例 例3 3 类型转换字符f的使用 main floatf 123 456 doubled1 d2 d1 1111111111111 111111111 d2 2222222222222 222222222 printf f 12f 12 2f 12 2f 2f n f f f f f printf d1 d2 f n d1 d2 程序运行结果如下 123 456001 123 456001 123 46 123 46 123 46d1 d2 3333333333333 333010 程序举例 例3 4 类型转换字符c的使用 main charc A inti 65 printf c c 5c d n c c c printf i d c i i 程序运行结果如下 c A A 65i 65 A 程序举例 例3 5 类型转换字符s的使用 main printf s 5s 10s Internet Internet Internet printf 10 5s 10 5s 4 5s n Internet Internet Internet 程序运行结果如下 Internet Internet Internet Inter Inter Inter 程序举例 例3 6 已知圆柱体的底半径radius 1 5 高high 2 0 求其体积 main floatradius 1 5 high 2 0 pi 3 14159 vol vol pi radius radius high 求体积 printf vol 7 2f n vol 输出求出的体积 程序举例 例3 7 已知圆柱体的底半径为radius 高为high 求其体积 main floatradius high vol pi 3 1415926 printf Pleaseinputradius 程序运行结果如下 Pleaseinputradius high 1 5 2 0 radius 1 50 high 2 00 vol 14 14 程序举例 例3 8
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农发行聊城市茌平区2025秋招笔试价值观测评题专练及答案
- 农发行河池市罗城仫佬族自治县2025秋招群面模拟题及高分话术
- 国家能源九江市武宁县2025秋招笔试言语理解与表达题专练及答案
- 国家能源抚州市崇仁县2025秋招写作案例分析万能模板可套用
- 国家能源恩施开福区2025秋招笔试言语理解与表达题专练及答案
- 写字楼租赁合同(15篇)
- 2025年4月四川成都师范学院考核招聘(第二批)考前自测高频考点模拟试题及参考答案详解
- 厨房年度工作总结
- 长治市中储粮2025秋招面试专业追问题库机电维修岗
- 2025年甘肃畜牧工程职业技术学院招聘工作人员考前自测高频考点模拟试题及参考答案详解1套
- TCTBA 001-2019 非招标方式采购代理服务规范
- 冷库储存生姜合同范本
- 《小狗钱钱》完整版
- 《酒类鉴赏威士忌》课件
- 消化道出血患者的护理
- 各种奶茶配方资料
- 【MOOC】《中国马克思主义与当代》(北京科技大学)中国大学MOOC慕课答案
- 《国家电网公司电力安全工作规程(火电厂动力部分、水电厂动力部分)》
- 八年级语文下册-专题08-语言表达与运用-(中考真题演练)(原卷版)
- 肾脏病与药物治疗
- 泵站管理制度
评论
0/150
提交评论