- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 基本的标准输入与输出 华中科技大学计算机学院 C语言程序设计 C语言程序设计 主讲教师:周时阳 标准输入输出是指利用标准C提供的输入输出库函数实现程序对标准输入输出设备的数据I/O操作。本章主要讨论标准输入输出的概念,分别对单个字符、字符串、以及格式化的标准输入输出函数从函数原型和调用方式以及基本的标准输入与输出程序的设计方法等多个侧面进行了介绍。同时,介绍了不同类型数据之间的转换函数,如: atof、atoi、atol、itoa等函数。 内容摘要 重点讲解 3.1 基本的标准输出 3.2 基本的标准输入 3.3 数据转换函数与简单程序设计 小结 字符串 ‘3’ ‘2’ ‘1’ 目录 问题背景本章讨论关于计算机的存储器与I/O设备之间数据交换的程序设计问题。 计算机组成原理图 运算器 存储器 控制器 输入设备 输出设备 数据线 地址线 控制线 键盘 显示器 字符串 机器码 机器码 0x007b 123 ‘3’ ‘2’ ‘1’ 0x007b 123 键盘输入缓冲区 上机操作演示 3.1.1 单字符输出函数 3.1 基本的标准输出函数原型为: int putchar(int c);功能是将字符c输出到标准输出设备上;函数返回值是输出字符的ASCII码值,如果遇到出错,则返回EOF。函数调用形式为: putchar(c) 其中,c为char、short与int类型的表达式(称为实际参数)。 字符模式显示器 #include “stdio.h” void main(void){char c1=‘A’,c2=‘\n’;putchar(c1);putchar(c2); }函数的名称、返回值类型、参数的数目和参数类型的说明,规定了调用格式。EOF是stdio.h中定义的符号常量,其值为-1。 目录 3.1.2 字符串输出函数函数原型为: int puts(const char *s);功能是将从s所指定的地址读取字符串输出到标准输出设备,并在串尾输出一个换行符’\n’ ;函数返回值是输出最后符号ASCII值,如果遇到出错,则返回EOF。函数调用形式为: puts(s) 其中,c为char * 类型的表达式(称为实际参数)。 #include “stdio.h” void main(void){char *p =“hello!”;putchar(p); } 上机操作演示 3.1.3 格式输出函数函数原型为: int printf(const char *format, ...);功能是将...的数据,指定的format格式输出到标准输出设备;函数返回值是实际输出的字符个数 。函数调用形式为: printf(格式字符串,表达式1, 表达式2, ..., 表达式n) 其中,表达式i为基本类型或指针类型(称为实际参数),其值为输出的数据;格式字符串使用输出转换符指定数据输出格式。 上机操作演示 printf( “x=%d,y=%d\n”, 314 , 27 ); 4 1 3 = x 7 2 = y , x = 4 1 3 , y = 7 2 3.1.3 格式输出函数 转换说明%d和%u的区别int i = 100;unsigned j = 100;printf(“%d,%u”, i, i);输出100,100printf(“%d,%u”, j, j);输出100,100int i = ~0;unsigned j = ~0;printf(“%d,%u”, i, i);输出-1,65535printf(“%d,%u”, j, j);输出-1,65535 上机操作演示 3.1.3 格式输出函数 %f,%e,%g三种转换说明在缺省域宽说明时的输出精度%f小数部分为6位;%e输出指数形式,尾数为6个有效数字,包括1位非零的整数部分和5位小数;%g选取%f和%e输出宽度较小的那种格式进行输出。 double x=12 y=12.4951, z=1.4951; printf(“%f\t%e\t%g\n%f\t%e\t%g\n”, x, x, x, y, y, y); printf(“%f\t%e\t%g\n”, z, z, z); 12.0000501.20000e+0112 12.4951001.24951e+0112.4951 1.4951001.20000e+071.2e+07 上机操作演示 3.1.3 格式输出函数 几个特殊转换字符的用法例3.5 转换字符n的用法:%n之前已输出字符数存入内存。设变量说明为int x;,依次执行下面两个语句:printf(“abc%n”, x); 输出:abcprintf(“x=%d”, x);输出:3例3.6 转换字符%的用法:如果%%,则
文档评论(0)