华中科技大学计算机学院C语言程序设计字符串''''
第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,100 printf(“%d,%u”, j, j); 输出100,100 int i = ~0; unsigned j = ~0; printf(“%d,%u”, i, i); 输出-1,65535 printf(“%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, z4951; printf(“%f\t%e\t%g\n%f\t%e\t%g\n”,