《c语言输入和输出》PPT课件.ppt

上传人:san****019 文档编号:7343848 上传时间:2020-03-20 格式:PPT 页数:22 大小:246.60KB
返回 下载 相关 举报
《c语言输入和输出》PPT课件.ppt_第1页
第1页 / 共22页
《c语言输入和输出》PPT课件.ppt_第2页
第2页 / 共22页
《c语言输入和输出》PPT课件.ppt_第3页
第3页 / 共22页
点击查看更多>>
资源描述
C语言程序设计 第3章 1 第3章标准输入与输出 3 1概述 3 2字符输入输出函数 3 3格式化输入和输出函数 3 4输入和输出函数的讨论 C语言程序设计 第3章 2 通过终端输入 如键盘 鼠标等 也称为标准输入 standardinput 直接向终端输出 如显示器 打印机等 也称为标准输出 standardoutput 3 1概述 C语言本身没有提供输入输出语句 C语言中的所有I O操作都是通过函数调用来实现 而这些并非C语言一部分的输入输出函数均以目标级程序的方式提供 并存放在一个C标准函数库中 每一个标准库都有一个相应的头文件 该头文件包含了该库中所有函数的函数原型及其相关信息 在调用这些库函数时 要用预处理命令 include 将有关的 头文件 包括到用户源程序中 标准输入输出库函数对应的头文件是 stdio h stdio是standardinput output的缩写 因此 读者在调用标准输入输出库函数时 你的源程序开头应该有如下编译预处理命令 include或 include stdio h C语言程序设计 第3章 3 3 2字符输入输出函数 3 2 1字符输出函数putchar putchar 函数是向屏幕一个字符 其调用格式为 putchar ch 其中ch为一个字符变量 字符常量或整型常量 本程序测试多种类型数据作putchar 函数参数的输出情况 includemain charc A 定义字符变量并初始化 putchar c 输出变量C的值即字符A putchar A 输出字符A putchar x41 输出字符A 它以转义字符表示 十六进制 putchar 0 x41 直接用ASCII码值输出字符A putchar 101 输出字符A 它以转义字符表示 八进制 C语言程序设计 第3章 4 3 2 2带缓冲区的字符输入函数getchar getchar 函数的功能是从标准输入文件 通常是键盘 亦指磁盘文件 读取一字节代码 即一个字符 并回显 所谓回显 是指输入一个字符的同时又在屏幕上显示出该字符 这是标准C提供的字符输入函数 因此也是最常用的字符输入 尤其是键盘输入 函数 键盘缓冲区 实际上应该称作输入流即stdin流 所谓键盘缓冲区 是指在内存开辟的一片临时单元 用来暂时存放从键盘输入的字符 getchar 函数是带键盘缓冲区的输入函数 是指当从键盘输入字符时 这些字符先存放在键盘缓冲区 如果不敲回车键 getchar 函数并没有真正被执行 即所谓被激活 仅当回车键也被送入键盘缓冲区后 getchar 函数才从键盘缓冲区中读取一个字符 C语言程序设计 第3章 5 强调以下三点 1 调用getchar 函数输入字符时 必须用另一个变量 字符变量或整型变量 接收输入的字符 例如 ch getchar 2 调用getchar 函数输入字符时 仅当敲入回车键后 函数才被激活 3 调用该函数时 输入的每一个字符 包括空白符 即空格 制表符和回车符 都被送存到键盘缓冲区 C语言程序设计 第3章 6 本程序调用getchar 函数输入一个字符 includemain charc 定义字符变量 c getchar 接收键盘输入的一个字符 putchar c 输出该字符 putchar n C语言程序设计 第3章 7 3 2 3不带缓冲区的字符输入函数getch 和getche 这是某些编译器 譬如TurboC新增加的两个字符输入函数 这两个函数都是从键盘上读入一个字符 两者的区别是 getch 函数将读入的字符不回显在屏幕上 而getche 函数却将读入的字符回显到显示屏幕上 C语言程序设计 第3章 8 本程序调用getchar 函数输入一个字符 includemain charc ch c getch 从键盘上读一字符不回显送给变量c putchar c 输出该字符 ch getche 从键盘读一字符送给变量ch并回显 putchar ch 输出该字符 C语言程序设计 第3章 9 3 3格式化输入和输出函数 3 3 1printf 函数 用于按指定格式向标准输出设备 屏幕 输出 有两种形式 printf 字符串 例如 下面的语句 printf Howareyou n 是在屏幕上输出这样一行 Howareyou 这种形式的输出并没有指定输出格式 C语言程序设计 第3章 10 另一种形式是 printf 格式控制串 是由0个或多个格式转换说明组成的一个字符串序列 格式转换说明的一般形式为 flag width prec h l L 输出格式符 格式修饰符 见表3 2 见表3 1 printf d a printf d f a x printf a d b d a b d n a b a b printf a d x 8 2f x y Lf n a x x y 左对齐 正数也要加正号 输出共占8位 其中小数占两位 输出为longdouble型 C语言程序设计 第3章 11 3 3 2scanf 函数 scanf 函数的一般形式为 intscanf 格式控制串 是由0个或多个格式转换说明组成的一个字符串序列 格式转换说明的一般形式为 width h l L 输入格式符 格式修饰符 见表3 4 见表3 3 格式转换说明的作用是引导对下一输入项进行转换 地址列表 中给出一个或多个输入项 输入项之间用逗号分隔 从概念上讲 输入项的表示形式是指针 指向存储输入数据的变量 因此 输入项必须指明变量的地址 C语言提供了一个取变量地址的运算符 只要将它作用在变量上 就能得到该变量的地址 例如 a b分别表示变量a和变量b的地址 C语言程序设计 第3章 12 例如 若要为int变量a和b从键盘输入数据 如果写作 scanf d d a b 是不正确的 可用如下语句实现 scanf d d a b 如果将上述语句应改为 scanf d d a b 即在两个格式转换说明之间插入一个逗号 输入数据时也必须输入一个逗号 如 123 4567 要注意的是 不要轻易将 c 格式与其它格式混在一起用 以免出错 例如 设a为int型变量 ch是char型变量 对于语句 scanf d c a ch 若输入为29 A 表示空格符 其结果是将数值29送a 而将一个空格字符送ch C语言程序设计 第3章 13 3 4关于格式化输入和输出函数的进一步讨论 3 4 1printf 和scanf 函数的返回值问题 若成功 printf 函数返回输出的字符个数 出错时返回负数 本程序测试printf 函数的返回值 includemain intcount 定义count 用来接收返回值 floatr1 12345 12345678 r2 123 123456789 count printf r1 f nr2 f n r1 r2 printf count d n count 输出printf 函数的返回值 程序输出 r1 12345 123047r2 123 123459count 34 C语言程序设计 第3章 14 scanf 函数也具有返回值 所不同的是 scanf 函数执行成功时的返回值是成功读取的变量数 如果第一个输入项读入就出错 则返回0 本程序测试scanf 函数的返回值 includeintmain intcount a b c count scanf d d d a b c printf a d b d c d tcount d n a b c count 执行上述程序 如果输入为 123 1234 12345 则输出结果为 a 123 b 1234 c 12345count 3 C语言程序设计 第3章 15 3 4 2printf 函数的p格式符的应用 在printf 函数中 p格式符用来输出指针的值 即指针所指对象的首地址 利用p格式符的这一特性 我们可以了解变量的空间分配情况 下面来看一个例子 本程序测试变量的空间分配情况 includeintmain inti j k printf i p j p k p n i j k 执行后的输出为 不同的系统环境可能输出值不同 下面是Turbo2 0的一种输出 i 650B 0FD6 j 650B 0FD8 k 650B 0FDA C语言程序设计 第3章 16 3 4 3scanf 函数的 格式应用问题 用 格式接收指定范围的字符 includeintmain int ptr 定义一个指针 scanf abcd ptr printf ptr s n ptr 设输入为 dabcaaagade 程序输出为 ptr dabcaaa C语言程序设计 第3章 17 用 格式接收指定范围的字符 includeintmain int ptr 定义一个指针 scanf bcd ptr printf s n ptr 设输入为 Howareyou John 程序输出为 Howareyou 注 这是由于逗号作为不可接受字符 而作为字符串的定界符 C语言程序设计 第3章 18 本程序可接收任意字符串的输入 includeintmain int ptr 定义一个指针 scanf n ptr printf ptr s n ptr 设输入为 Howareyou 程序输出为 Howareyou C语言程序设计 第3章 19 3 4 4scanf 函数应用中两个最常见的问题 1 空白符问题 本程序测试格式转换说明 d n 的应用情况 includeintmain void inta printf Pleaseinputthedata scanf d n 问题 被要求输入两个数才能正常结束 原因 程序要求输入空白符 而空白符是数据的定界符 C语言程序设计 第3章 20 2 标准输入流中残留字符问题 本程序测试标准输入流中残留字符的情况 includeintmain void inta charc scanf d 注 在这里输入一个整数并按回车键后 程序就输出了结果 C语言程序设计 第3章 21 1234 n a 1234 A 注 在这里输入一个整数1234并按回车键后 就相当于1234 n 这个 n就输入给字符变量c C语言程序设计 第3章 22 本章全部练习都要做 做在练习本上
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!