第3章 数据的输入和输出分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《 C语言程序设计》
第3章 数据的输入和输出
3.1.3 puts( )函数和gets( )函数
1. puts函数的格式 puts(s);
s是一个字符数组的数组名或是一个指向字符类型数据的 指针变量。puts(s)出错时,返回EOF(Ending Of File, 值是-1)。puts( )函数执行完后,自动换行。 说明: (1) puts() 函数只能输出字符串 , 不能输出数值或进行 格式变换。 (2) 可以将字符串直接写入puts()函数中。
《 C语言程序设计》
第3章 数据的输入和输出
(2) “地址表列”,是由若干个等待输入的内存 单元地址组成,地址项之间用逗号分隔。该地 址可以是变量地址或字符串的首地址,也可以 是数组地址或结构体变量地址等。它的作用是 存放输入的数据。也就是说,scanf( )函数中用 于接收输入的输入项必须是一个地址量。在C 语言里地址量的表示是在变量前加前缀符号 “&”。
《 C语言程序设计》
第3章 数据的输入和输出
2. gets函数的格式 gets(s); s是一个字符数组的数组名或是一个指向字符类型数据的 指针变量。从键盘上接收一个字符串,将其存入s中, 并自动以’ \0’ 作为结束。 gets(s) 函数与 scanf("%s", s);相似,但不完全相同,使用scanf("%s", s)输入字 符串时存在一个问题 , 就是如果输入了空格会认为输 入字符串结束,空格后的字符将作为下一个输入项处 理, 但gets( )函数将接收输入的整个字符串直到回车 为止。 说明: gets(s) 函数中的变量 s 是字符串或指向字符串的指 针。
《 C语言程序设计》
第3章 数据的输入和输出
4. 输入流数据的分隔 scanf( ) 函数是从输入数据流中接收非空 字符,再转换成“格式控制字符串”描述的格 式,传送到与“格式控制字符串”相对应的地 址中去。当从终端输入数据流的时候, scanf( )函数有一些分隔数据流的方法。 (1) 根据“格式字符”的含义从输入流中取 得数据,当输入流中数据类型与“格式字符” 要求不符合时,就认为这一数据项结束。
《 C语言程序设计》
第3章 数据的输入和输出
第3章 数据的输入和输出


3. 1 字符型数据的输入输出函数 3. 2 格式输入输出函数
《 C语言程序设计》
第3章 数据的输入和输出
本章要点


字符型数据的输出函数 putchar 和 输入函数getchar 格 式 输 出 函 数 printf 和 输 入 函 数 scanf
《 C语言程序设计》
第3章 数据的输入和输出
3. 1字符型数据的输入输出函数
3.1.1 putchar( )函数 putchar( )函数的作用是向终端输出一个字符。 一般格式: putchar(参数); 说明: 参数可以是字符型变量或整型变量,也可以是 一个整数、控制字符或其他转义字符。
《 C语言程序设计》
第3章 数据的输入和输出
3.1.2 getchar( )函数
getchar( )函数的作用是从终端输入一个字符。 一般格式:变量=getchar(); 说明: (1)变量可以是字符型变量或整型变量,如果是字 符型变量,存入的就是字符本身,如果是整型 变量,存入的则是该字符的ASCII码值。 (2) getchar( )函数没有参数。 (3) getchar( )函数的函数值就是从输入设备得到 的字符。
《 C语言程序设计》
第3章 数据的输入和输出
2. 说明: (1) “格式控制字符串”可以包括“格式转换说明 符”,用来规定相应输出项内容的输出格式; “转义字符”,用来输出转义字符所代表的控 制代码或特殊字符;“普通字符”,要求原样 输出的字符。 (2) “输出表列”,是需要输出的一些数据,可 以是变量和表达式,输出项之间用逗号分隔。
《 C语言程序设计》
第3章 数据的输入和输出
3. 格式转换说明符 “格式转换说明符”由格式字符和附加格式 说明符组成,其组成格式如下: % - 0 m.n l或h 格式字符
格式字符用于指定输出项的数据类型和输 出格式。
《 C语言程序设计》
第3章 数据的输入和输出
4. 在使用printf()函数时,还有几点需要说明: (1) 除了 X、E、G 外,其他格式字符必须用小写 字母,如%d不能写成%D。 (2)可以在“格式控制字符串”内使用“转义字 符”,如“\n”、“\t”、“\b”、“\r”、“\f”、 “\377”等。 (3)使用printf( )函数时还要注意一个问题, 那就是输出表列中的求值顺序。不同的编译系 统不一定相同,可以从左到右, 也可从右到 左。Turbo C是按从右到左进行的。
《 C语言程序设计》
Fra Baidu bibliotek
第3章 数据的输入和输出
3.2 格式输入输出函数
下面分别介绍格式输出函数printf和输入 函数scanf
《 C语言程序设计》
第3章 数据的输入和输出
3.2.1 printf( )函数
printf( ) 函数的作用是向终端(或系统隐含 指定的输出设备)输出若干个任意类型的数据。 1. 一般格式: printf ( " 格 式 控 制 字 符 串 " , 输 出 表 列); “格式控制字符串”用于控制输出转换和格 式化的方式,“输出表列”给出将要输出的数 据项。
《 C语言程序设计》
第3章 数据的输入和输出
(4) 在执行 getchar( ) 函数时,虽然是读入一个字符, 但并不是从键盘输入一个字符,该字符就被读入送给 一个字符变量,而是等到键入回车键后,才将该字符 输入缓冲区,然后 getchar( ) 函数从缓冲区中取一个 字符给字符变量。 (5) 如果getchar( )函数读入的字符是“^z”(<ctrl>和z 同时按下),则输入的既不是字符,也不是ASCII码值, 而是一个标志值- 1 。“ ^z” 被称为文件结束符,在程 序中经常用符号常量EOF来表示它。
《 C语言程序设计》
第3章 数据的输入和输出
3.2.2 scanf( )函数
scanf( )函数,作用是用来输入任意类型的数据。 1. 一般格式: scanf("格式控制字符串",地址表列); 2. 说明: (1) "格式控制字符串"与printf( )函数中的“格式控制字 符串”含义类似,所不同的是这里是对输入格式进行 控制。其内容可以是“格式控制说明符(简称格式符 或格式说明符)”,或是要求在输入时附加输入的 “普通字符”,而“转义字符”则较少使用。
《 C语言程序设计》
第3章 数据的输入和输出
5. scanf( )函数的结束与返回值。 (1)scanf( )函数在执行中遇到下面两种情况后结束: ① “格式控制字符串”中的“格式控制说明符” 用完时结束----正常结束; ② 发生与输入数据不匹配时结束 ----非正常结束。 如从键盘输入的数据数目不足。 (2) scanf( )函数的返回值。scanf( )是一个函数, 它也有返回值,返回值就是成功匹配的项目数。
《 C语言程序设计》
第3章 数据的输入和输出
(2) 根据“格式控制字符串”中指定的域宽(即m的值) 分隔数据流。 (3) 使用分隔符。分隔符可以是空格、回车键或Tab键, 还可以是自己指定的字符,在输入数据流的时候加上 相应分隔符。 (4) 抑制字符“*”。“*”的作用是按格式控制说明符读 入数据后,不送给任何变量。如果在%后加上“*”附 加说明符,表示跳过它指定的域宽(或列数)。 (5) 在用%c格式输入字符数据时,空格字符和转义字符都 作为有效字符输入。
《 C语言程序设计》
第3章 数据的输入和输出
3. 格式控制说明符 scanf( )函数的“格式控制说明符”基本格式如 下: % * m l或h 格式字符 另外,使用scanf( )函数应当注意的几个问题 (1)对unsigned型变量所需的数据,可以用%u、%d、 %o和%x格式输入。 (2) 输入数据时不能规定精度。
相关文档
最新文档