常用标准库函数全解
l
可加在格式字符d,u,o,x前面作前缀,输出 long或 double 型时使 用 ,如:%ld
2、 字符输出函数putchar()
格式:putchar(ch); 功能:向终端输出一个字符。
(putchar.c)
【说明】
(1)参数ch可以是字符型变量、整型变量、字符常量 或整型常量(要求在0-255范围内)。 (2)函数返回值为输出字符。 (3)putchar函数也可以输出转义字符。
1)格式输入函数 scanf()
格式:int scanf(“格式控制”,地址表列) 功能:执行格式化输入,从标准输入设备上按格式控制所指格式, 输入数据给输入表列所指向的单元。
【说明】
(1)格式控制的含义同printf函数 (2)输入表列只能采用“地址表列” (3)在执行数据输入时,以一个或多个空格、回车键、或跳格键 (Tab)作为分隔符。 (4)输入格式中,除格式说明符之外的普通字符应原样输入。 (5)输入实型数据时,不能规定精度。
第4章 常用标准库函数
第4章 常用标准库函数
4.1 输出函数 4.2 输入函数 4.3 字符串函数 4.3 数学函数 4.5 应用举例
库函数
C编译系统为方便用户使用而提供的 已经编写好的公共函数 。
C标准库函数大致分为以下几类:
输入输出函数、数学函数、字符串函数、目录 函数、分类函数、诊断函数、时间日期函数、 其它函数。
注意
在C语言中要使用库函数,应当使用编译预处理命 令“#include”把与该库函数相关的头文件包含进 来
4.1 输出函数
1.格式输出函数
格式输出函数 printf() (printf.c)
格式:printf(“格式控制”[,输出表列]) 功能:产生格式化输出,按格式控制所指格式将输出 表列的值输出到标准输出设备。 【说明】
scanf函数格式字符
表4.3 scanf函数格式字符
格式字符 d ,i u o x, X c s f e, E 输入有符号的十进制整数 输入无符号的十进制整数 输入无符号的八进制整数 输入无符号的十六进制整数 输入一个字符 输入一个字符串 , 输入的字符串的头,尾和中间都不能 有空格。 输入一个小数形式的浮点数,可用小数或指数形式输入 输入一个指数形式的浮点数,可用小数或指数形式输入 意 义
3、字符串输出函数puts( )
格式:puts(str)
功能:从str指定的地址开始,依次将存储单元中的字符
串输出到显示器,直至遇到字符串结束标志为止。
【注意】
(1)若字符串中包含转义字符,则按转义后的结果输出。 (2)输出时自动把‘\0’转换为‘\n’后输出(自动换行)。
4.2 输入函数
2)字符输入函数 getchar()
格式:getchar(); 功能:从键盘输入中得到一个字符,该函数没 有参数。
【说明】
(1)函数返回值为输入字符的ASCII码值。 (2)getchar函数的值可以赋给一个字符变量或整型变 量,也可以不赋给任何变量。 (3)不同的字符输入方法对结果的影响不同。
3) 字符串输入函数gets( )
【说明】
(1)参数str2既可以为字符数组名、指向字符数组的指针变量,也可 以为字符串常量。 (2)str1必须有足够的空间来存储连接结果,以确保两个字符串连接 后不出现超界现象。 (3)连接时取消str1后的‘\0’,只在连接后的新串尾部加‘\0’。 (4)该函数的返回值为str1串的首地址。
格式:gets(str) 功能: 从键盘输入一个字符串(该字符串中可以包含空格),直至遇 到回车符为止,并将该字符串存放到由str所指定的数组中(或内存区 域 )。
【说明】
输入字符串时以回车作为输入结束标志。
4.3 字符串函数
1 字符串连接函数strcat( )
(strcat.c)
函数格式:char *strcat(char * str1, char * str2) 功能:将以str2为首地址的字符串连接到str1串的后面,且从str1串 的’\0’所在单元连接起,即自动覆盖了str1串的结束标志’\0’。
printf函数格式字符
常用printf函数格式字符表
表4.1 printf函数格式字符 格式字符 d ,i u o x, X c s f e, E g, G 意 义
按带符号十进制整数输出(正数不输出符号) 按无符号十进制整数输出 按无符号ቤተ መጻሕፍቲ ባይዱ进制整数输出(不输出前导符o) 按无符号十六进制整数输出 (不输出前导符ox) 按字符型输出,只输出一个字符 按字符串输出 按浮点型小数输出,隐含输出6位小数 按科学计数法输出,数字部分的小数部分为6位 按 e 和 f 格式中较短的一种输出,不输出无意义的0
(1)格式控制,用于说明输出的数据类型及格式。格式控制是用 双引号括起来的字符串,由格式说明符和普通字符两部分组成。 格式说明符由“%”和格式字符组成。 例如: printf(“x=%d,y=%c”,x,y) ( 2)输出表列是与格式控制中说明的控制格式相对应的要输出的 数据表。 (3)原则上,输出表列中变量的个数与类型应与格式说明中指定 输出表列 格式控制 的数据的个数和类型一致,且从左到右一一对应。
printf函数格式字符
常用的修饰符如表4.2(其中w、n均代表一个正整数)。 表4.2 printf函数修饰符
修饰符
0 w
意
义
w为输出宽度,不足w时,左补零如:%05d
- w + w
# w.n
w为输出宽度,不足w时,右补空格如:%-5d w为输出宽度,不足w时,左补空格如:%+5d
使八进制、十六进制输出带前导符:0、0x或0X。如:%#o、%#x w为输出宽度,n为小数位数或输出的字符个数。不够规定宽度,左 补空格,超过规定宽度,按实际长度输出。如:% 6.2f;%4.9s
【注意】
(1)在scanf中应使用变量的地址。 (2)选择合适的输入分隔符。 (3)可以指定输入数据的宽度,系统自动截取。 (4)在用“%c”输入字符时,空格和“转义字符”都作为有 效字符输入,不需要用空格作间隔。 (5)输入数据时不能规定精度。 (6)在输入数据时,遇到以下情况该数据认为结束:空 格、回车、跳格键(Tab)、宽度结束、非法输入。