通信工程第6章.ppt_第1页
通信工程第6章.ppt_第2页
通信工程第6章.ppt_第3页
通信工程第6章.ppt_第4页
通信工程第6章.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 第6章用户与计算机的交互 输入和输出 标准输入输出格式化输入输出字符输入输出字符串输入输出跟我上机 用户与计算机的交互 输入和输出 输入 输出是计算机最基本的行为 也是任何语言必需的功能 起到了用户和计算机桥梁的作用 那么 在C语言的世界里 输入和输出是怎么实现的 怎么样高速 高效的进行输入和输出呢 我们就在这一章来进行讨论吧 6 1标准输入输出 程序如何知道用户想要的内容 用户又如何得知程序运算的结果呢 可以通过输入输出来实现 我们先来看下面的程序运行结果 6 1标准输入输出 在命令行中 提示用户输入1个整数 当用户输入100 并按 Enter 键后 程序显示 您输入的整数是 100 这就是个简单的输入输出的过程 程序提示 用户输入数据 程序读取后输出 实现了用户和计算机的交互 6 1标准输入输出 此程序的代码如下 01 include02intmain void 03 04inti 05printf 请输入1个整数 n 提示用户输入 06scanf d 09 以上程序是通过printf 函数和scanf 函数来实现输入输出的 这些函数都包含在C语言的库函数中 6 1标准输入输出 C语言本身并不提供输入输出语句 而是用一组库函数来实现数据的输入和输出 由于不同的C系统提供不同的输入输出函数 而一些常用的函数是各系统中共有的 称之为标准输入输出函数 本章就来学习这些标准的输入输出函数 包括上面程序所提到的格式化输入 printf 输出 scanf 函数 以及字符输入 getchar 输出 putchar 函数和字符串输入 gets 输出 puts 函数等 6 2格式化输入输出 6 2 1格式化输出函数 printf 6 2 2格式控制字符6 2 3格式化输入函数 scanf 6 2格式化输入输出 格式化是指按照一定的格式 格式化输入输出就是指按照一定的格式读取来自输入设备的数据和向输出设备输出数据 符合格式化输入输出的代表函数是printf 函数和scanf 函数 这两个函数是程序中用的最多的输入输出函数 也是本章的重点 6 2 1格式化输出函数 printf 在前面章节中我们用的最多的就是print 函数 但代码中包含的 d f和 c有什么含义和区别呢 本节就来深入学习此函数详细用法 printf 函数 作用是将计算机中数据 按照特定的格式输出到终端 使用户能从终端查看数据 它是输出数据的接口 使用格式如下 printf 例如 01inti 10 j 20 02printf 欢迎来到C语言的世界 n 输出引号内的内容并换行 03printf i d j d n i j 输出变量i和j的值并换行 6 2 1格式化输出函数 printf 我们再来看以下代码 01printf Hello n 02printf a A n 03printf 班级平均成绩为 f n avg 04printf Firstoutputi d n i 从这些语句中 我们可以很容易的看出第1行和第2行没有参数 原样输出 第3行和第4行都用到了参数 6 2 1格式化输出函数 printf 我们还可以把该函数的使用格式细分一下 没有参数时 调用格式如下 printf 非格式字符串 使用这种格式输出的是双引号内的原样内容 通常用于提示信息的输出 有参数时 调用格式如下 printf 格式字符串 参数列表 使用这种格式时 格式字符串内包含一个或多个格式控制字符 格式控制字符以 开头 紧跟其后的d s f c等字符 用以说明输出数据的类型 格式控制字符的个数与参数列表中参数的个数相等 并且一一对应 输出时 用参数来代替对应的格式控制字符 参数可以是变量 也可以是表达式等 6 2 1格式化输出函数 printf 范例6 1 printf函数的使用 01 include02intmain void 03 04intnum 05charr 06floatf 07printf 请输入1个整数 1个字符 1个浮点型的数据 n 输出引号中的内容并换行 08scanf d c f 此段代码定义了3个变量 分别是int char和float类型 第7行没有参数是原样输出引号中的内容后换行 第8行是输入数据 给num r和f分别赋值 第9行是输出变量的值 用到了格式控制字符 d c和 f d代表的是int类型的格式 c代表的是char类型的格式 f代表的是float类型的格式 与后面的参数类型一一对应 第10行的调用格式与第7行的一样 但第10行双括号内的是转义字符 所以起到了换行的作用 6 2 2格式控制字符 在上面的程序中 我们所使用的 d c和 f就是格式控制字符 除了这些外还有很多 下表所示就是C语言程序中常用的格式控制字符 6 2 2格式控制字符 下面详细介绍这些格式控制字符的使用方法 1 d格式控制字符使用如下 d 以十进制形式输出整数 md 与 d相比 用m限制了数据的宽度 是指数据的位数 当数据的位数小于m时 以前面补空格的方式输出 反之 如果位数大于m 则按原数输出 ld 输出长整型的数据 其表示数据的位数比 d多 6 2 2格式控制字符 范例6 2 格式控制字符d的应用 01 include02intmain void 03 04inti 123456 初始化变量 05printf d n i 按 d格式输出数据 06printf 5d n i 按 md格式输出数据 07printf 7d n i 按 md格式输出数据 08return0 第6 7行中使用了 md形式 其中第6行的m 5 数据位数6 m 输出原数据 第7行中的m 7 数据位数6 m 以前面补空格的方式输出 所以在输出结果中第3行的123456前多了一个空格 6 2 2格式控制字符 2 u格式控制字符 u 以十进制形式输出无符号的整数 mu 与 md类似 限制了数据的位数 lu 与 ld类似 输出的数据是长整型 范围较大 6 2 2格式控制字符 3 f格式控制字符 f 以小数形式输出实数 整数部分全部输出 小数部分为六位 范例6 3 格式控制字符f的应用 6 2 2格式控制字符 01 include02intmain void 03 04floatf1 11 110000811 定义一个float类型的变量f1并赋值 05floatf2 11 110000 定义一个float类型的变量f2并赋值 06printf f n f1 按 f的格式输出f1 07printf f n f2 按 f的格式输出f2 08return0 本例中定义的f1和f2的小数位数不同 但是输出后位数都为6位 这是问什么呢 是因为 f格式输出的数据小数部分必须是6位 如果原数据不符合 位数少的时候补零 位数多的时候小数部分取前6位 第7位四舍五入 6 2 2格式控制字符 m nf 以固定的格式输出小数 m指的是包括小数点在内的数据的位数 n是指小数的位数 当总的数据位数小于m时 数据左端补空格 如果大于m时 原样输出 m nf 除了 m nf以外 要求输出的数据向左靠齐 右端补空格 6 2 2格式控制字符 范例6 4 格式控制字符 m nf和 m nf格式符练习 01 include02intmain void 03 04floatf 123 456 初始化变量 05printf f n f 按 f格式输出 06printf 10 1f n f 按 m nf格式输出 07printf 5 1f n f 08printf 10 3faaa n f 09printf 10 3faaa n f 按 m nf格式输出 10return0 11 6 2 2格式控制字符 4 c格式控制字符 输出单个字符5 s格式控制字符 输出字符串 s ms和 ms与前面介绍的几种用法相同 故省略 在此 我们介绍一下 m ns和 m ns两种 m ns 输出m位的字符 从字符串的左端开始截取n位的字符 如果 n位小于m位 则左端补空格 m ns 与 m ns相比是右端补空格 6 2 2格式控制字符 范例6 5 m ns和 m ns格式符练习 01 include02intmain void 03 04printf s n Hello 按 s格式输出 05printf 5 3s n Hello 按 m ns格式输出 06printf 5 3s n Hello 按 m ns格式输出 07return0 这个例子是练习 m ns格式和 m ns输出 并比较二者输出的区别 第4行是原样输出 s格式 第5行是 m n格式输出 共m位 从 Hello 中截取前3位 并在前面补两个空格 第6行与第5行的不能是空格是补在字符的后端 若n m时 m就等于n 保证字符显示n位 6 2 2格式控制字符 6 格式控制字符以八进制形式表示数据 即把内存中数据的二进制形式转换为八进制后输出 由于二进制中有符号位 那么就把符号位也作为八进制的一部分进行输出 7 格式控制字符以十六进制形式表示数据 与 o一样 也把二进制中的符号位作为十六进制中的一部分进行输出 6 2 2格式控制字符 范例6 6 o和 x格式符练习 01 include02intmain void 03 04intn1 0 n2 1 n3 1 初始化三个变量 05printf d o x n n1 n1 n1 分别按 d o x格式输出n1 06printf d o x n n2 n2 n2 分别按 d o x格式输出n2 07printf d o x n n3 n3 n3 分别按 d o x格式输出n3 08return0 这个例子是在比较 d o x三种格式对输出同一个数结果有什么不同 特举了1 0和 1三个具有代表性的数字进行试验 我们知道0既可以看成是正数 也可以看成是负数 与运行时的计算机系统有关 有的系统把它作为正数存储 本次运行的计算机就是这样 但也有的计算机把它作为负数 8 e格式控制字符 以指数形式输出数据 9 g格式控制字符 在 e和 f中自动选择宽度较小的一种格式输出 6 2 3格式化输入函数 scanf scanf 函数 把从终端读取的符合特定格式的数据输入计算机程序中使用 是输入数据的接口 函数调用格式 scanf 例如 01inti j 02scanf d i 把输入的数据赋值给变量i 03scanf d d 分别把输入的数据赋值给变量i和j 6 2 3格式化输入函数 scanf 我们知道变量是存储在内存中的 变量名就是一个代号 内存为每个变量分配一块存储空间 当然 存储空间也有地址 也可是说成是变量的地址 但是 计算机怎么找到这个地址呢 这就要到地址操作符 在 的后面跟上地址就能获取计算机中变量的地址 其实 scanf函数的作用就是把输入的数据根据找到的地址存入内存中 也就是给变量赋值 估计 还有读者会问 变量r里面不是有内容了吗 把输入的字符在放进去不会出错吗 其实 计算机是这样的 当把一个数据放入一个内存空间里时 会自动覆盖里面的内容 所以 变量保存的是最后输进的值 6 2 3格式化输入函数 scanf 范例6 7 scanf函数的使用 01 include02intmain void 03 04inti 0 05printf 请输入一个整数 06scanf d 10 6 2 3格式化输入函数 scanf 范例6 8 输入多个值 01 include02intmain void 03 04inti 0 05chara 0 06floatf 0 0 07printf 请输入1个整型 1个字符型和1个浮点型的值 n 08scanf d c f 11 6 3字符输入输出 6 3 1字符输出函数 putchar 6 3 2字符输入函数 getchar 6 3字符输入输出 字符的输入输出是程序经常使用的操作 频率比较高 所以C库函数中专门设置了putchar函数和getchar函数对字符的输入输出进行控制 6 3 1字符输出函数 putchar putchar函数 把单个字符输出到标准输出设备 调用格式 putchar v v是一个变量 例如 01charv 0 02putchar A 输出单个字符A 03putchar v 输出变量v的值 04putchar n 执行换行效果 屏幕不显示 6 3 1字符输出函数 putchar 范例6 9 putchar函数的用法 01 include02intmain void 03 04charr 0 初始化变量 05printf 请输入一个字符 输出提示 06scanf c 从这个例子中我们可以看出 putchar函数可以输出字符变量 字符常量 也可以使用转义字符 起到一些特殊的作用 在这里putchar r 和printf c r 作用是一样的 都是输出字符变量r的值 而printf n 和putchar n 作用是相同的 都是换行 不光是换行 只要是转义字符 这两种形式的作用是相同的 6 3 2字符输入函数 getchar getchar函数 从标准输入设备上读取单个字符 返回值为字符 调用格式 getchar 例如 charc c getchar 把输入的字符赋给变量c 6 3 2字符输入函数 getchar 范例6 10 getchar函数的使用 01 include02intmain void 03 04charr 0 变量初始化 05r getchar 字符输入 06putchar r 输出变量 07putchar n 换行 08return0 第5行是输入字符的语句 和scanf c r 的作用一样 第6行是输出字符的语句 和printf c r 的作用相同 第7行是换行 6 4字符串输入输出 6 4 1字符串输出函数 puts 6 4 2字符串输入函数 gets 6 4字符串输入输出 我们在编程的时候经常要对字符进行操作 但是 和字符串的操作相比 字符的使用相对要少的多 就像我们用英语单词 语句比单独用26个字母的概率大很多一样 所以 对字符串起作用的函数是我们必须掌握的输入输出函数 puts函数和gets函数就是对字符串操作的函数 6 4 1字符串输出函数 puts puts函数 向标准输出设备输出已经存在的字符串并换行 函数调用格式 puts s s为字符串变量 例如 01charstr Hello C 定义一个数组 储存了一串字符串 02char f 定义了一个指针 03

温馨提示

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

最新文档

评论

0/150

提交评论