版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第4 4章章常用标准库函数常用标准库函数第第4章章 常用标准库函数常用标准库函数4.1 输出函数输出函数4.2 输入函数输入函数4.3 字符串函数字符串函数4.3 数学函数数学函数4.5 应用举例应用举例库函数库函数 C编译系统为方便用户使用而提供的编译系统为方便用户使用而提供的已经编写好的公共函数已经编写好的公共函数 。标准库函数大致分为以下几类:标准库函数大致分为以下几类:输入输出函数、数学函数、字符串函数、目录输入输出函数、数学函数、字符串函数、目录函数、分类函数、诊断函数、时间日期函数、函数、分类函数、诊断函数、时间日期函数、其它函数。其它函数。 在在C语言中要使用库函数,应当使用编
2、译预处理命语言中要使用库函数,应当使用编译预处理命令令“#include”把与该库函数相关的头文件包含进把与该库函数相关的头文件包含进来来 注意注意1.格式输出函数格式输出函数格式输出函数格式输出函数 printf() (printf.c)格式:格式:printf(“格式控制格式控制”,输出表列输出表列) 功能:产生格式化输出,按格式控制所指格式将输出功能:产生格式化输出,按格式控制所指格式将输出表列的值输出到标准输出设备。表列的值输出到标准输出设备。【说明】【说明】(1)格式控制,用于说明输出的数据类型及格式。格式控制是用)格式控制,用于说明输出的数据类型及格式。格式控制是用双引号括起来的字
3、符串,双引号括起来的字符串,由格式说明符和普通字符两部分组成由格式说明符和普通字符两部分组成。格式说明符由格式说明符由“%”和格式字符组成。和格式字符组成。(2)输出表列是与格式控制中说明的控制格式相对应的要输出的)输出表列是与格式控制中说明的控制格式相对应的要输出的数据表。数据表。(3)原则上,输出表列中变量的个数与类型应与格式说明中指定)原则上,输出表列中变量的个数与类型应与格式说明中指定的数据的个数和类型一致,且从左到右一一对应。的数据的个数和类型一致,且从左到右一一对应。 例如:例如: printf(“x=%d,y=%c”,x,y)格式控制输出表列 4.1 输出函数输出函数常用常用pr
4、intfprintf函数格式字符表函数格式字符表 表表4.1 printf函数格式字符函数格式字符printf函数格式字符函数格式字符常用的修饰符如表常用的修饰符如表4.2(4.2(其中其中w w、n n均代表一个正整数均代表一个正整数) )。 表表4.2 printf函数修饰符函数修饰符printf函数格式字符函数格式字符2、 字符输出函数字符输出函数putchar() (putchar.c)格式:格式:putchar(ch);功能:向终端输出一个字符。功能:向终端输出一个字符。【说明】【说明】(1)参数)参数ch可以是字符型变量、整型变量、字符常量可以是字符型变量、整型变量、字符常量或整型
5、常量(要求在或整型常量(要求在0-255范围内)。范围内)。(2)函数返回值为输出字符。)函数返回值为输出字符。(3)putchar函数也可以输出转义字符。函数也可以输出转义字符。3、字符串输出函数、字符串输出函数puts( )u格式格式:puts(str)u功能:从功能:从str指定的地址开始,依次将存储单元中的字符指定的地址开始,依次将存储单元中的字符串输出到显示器,直至遇到字符串结束标志为止。串输出到显示器,直至遇到字符串结束标志为止。【注意】【注意】(1)若字符串中包含转义字符,则按转义后的结果输出。若字符串中包含转义字符,则按转义后的结果输出。(2)输出时自动把输出时自动把0转换为转
6、换为n后输出(自动换行)。后输出(自动换行)。1)格式输入函数)格式输入函数 scanf() 格式:格式:int scanf(“格式控制格式控制”,地址表列地址表列) 功能:执行格式化输入,从标准输入设备上按格式控制所指格式,功能:执行格式化输入,从标准输入设备上按格式控制所指格式,输入数据给输入表列所指向的单元。输入数据给输入表列所指向的单元。 【说明】【说明】(1)格式控制的含义同)格式控制的含义同printf函数函数 (2)输入表列只能采用)输入表列只能采用“地址表列地址表列”(3)在执行数据输入时,以一个或多个空格、回车键、或跳格键)在执行数据输入时,以一个或多个空格、回车键、或跳格键
7、(Tab)作为分隔符。)作为分隔符。(4)输入格式中,除格式说明符之外的普通字符应原样输入。)输入格式中,除格式说明符之外的普通字符应原样输入。(5)输入实型数据时,不能规定精度。)输入实型数据时,不能规定精度。 4.2 输入函数输入函数scanf函数格式字符函数格式字符 表表4.3 scanf函数格式字符函数格式字符【注意】【注意】(1)在)在scanf中应使用变量的地址。中应使用变量的地址。(2)选择合适的输入分隔符。)选择合适的输入分隔符。(3)可以指定输入数据的宽度,系统自动截取。)可以指定输入数据的宽度,系统自动截取。(4)在用)在用“%c”输入字符时,空格和输入字符时,空格和“转义
8、字符转义字符”都作为有效字都作为有效字符输入,不需要用空格作间隔。符输入,不需要用空格作间隔。(5)输入数据时不能规定精度。)输入数据时不能规定精度。(6)在输入数据时,遇到以下情况该数据认为结束:空)在输入数据时,遇到以下情况该数据认为结束:空格、回车、跳格键(格、回车、跳格键(Tab)、宽度结束、非法输入。)、宽度结束、非法输入。2)字符输入函数)字符输入函数 getchar() 格式:格式:getchar();功能:从键盘输入中得到一个字符,该函数功能:从键盘输入中得到一个字符,该函数没有参数。没有参数。【说明】【说明】(1)函数返回值为输入字符的)函数返回值为输入字符的ASCII码值。
9、码值。(2)getchar函数的值可以赋给一个字符变量或整型变函数的值可以赋给一个字符变量或整型变量,也可以不赋给任何变量。量,也可以不赋给任何变量。(3)不同的字符输入方法对结果的影响不同。)不同的字符输入方法对结果的影响不同。 3) 字符串输入函数字符串输入函数gets( ) u格式格式:gets(str)u功能功能: 从键盘输入一个字符串(该字符串中可以包含空格),直至遇从键盘输入一个字符串(该字符串中可以包含空格),直至遇到回车符为止,并将该字符串存放到由到回车符为止,并将该字符串存放到由str所指定的数组中所指定的数组中(或内存区或内存区域域)。【说明】【说明】输入字符串时以回车作为
10、输入结束标志。输入字符串时以回车作为输入结束标志。1 字符串连接函数字符串连接函数strcat( ) (strcat.c)u函数格式:函数格式:char *strcat(char * str1, char * str2)u功能:将以功能:将以str2为首地址的字符串连接到为首地址的字符串连接到str1串的后面,且从串的后面,且从str1串串的的0所在单元连接起,即自动覆盖了所在单元连接起,即自动覆盖了str1串的结束标志串的结束标志0。【说明】【说明】(1)参数)参数str2既可以为字符数组名、指向字符数组的指针变量,也可既可以为字符数组名、指向字符数组的指针变量,也可以为字符串常量。以为字符
11、串常量。(2)str1必须有足够的空间来存储连接结果,以确保两个字符串连接必须有足够的空间来存储连接结果,以确保两个字符串连接后不出现超界现象。后不出现超界现象。(3)连接时取消)连接时取消str1后的后的0,只在连接后的新串尾部加,只在连接后的新串尾部加0。(4)该函数的返回值为)该函数的返回值为str1串的首地址。串的首地址。4.3 字符串函数字符串函数2 字符串复制函数字符串复制函数strcpy( ) (strcat.c)u函数格式函数格式:char *strcpy(char *str1, char *str2)u功能功能:将字符串将字符串str2复制到字符串复制到字符串str1后后,返
12、回指向返回指向str1的指针。的指针。【说明】【说明】(1) 参数参数str2既可以为字符数组名、指向字符数组的指针变量,也可以既可以为字符数组名、指向字符数组的指针变量,也可以为字符串常量。为字符串常量。(2)str1串所在的字符数组要留有足够的空间,以确保复制字符串后不串所在的字符数组要留有足够的空间,以确保复制字符串后不出现超界现象。出现超界现象。(3)复制后复制后str1原来内容被覆盖。原来内容被覆盖。【注意】【注意】u不能如此复制字符串:不能如此复制字符串:char str1=“abc”; char str2=str1;3 字符串比较函数字符串比较函数strcmp( ) (strcm
13、p.c)u函数格式:函数格式:int strcmp(char *str1, char *str2);u功能:比较两个字符串的大小。功能:比较两个字符串的大小。【说明】【说明】(1)两个参数两个参数str1和和str2既可以为字符数组名、指向字符数组的指针变既可以为字符数组名、指向字符数组的指针变量,也可以为字符串常量。量,也可以为字符串常量。(2)两个字符串进行比较不能直接用关系运算符进行比较,必须用两个字符串进行比较不能直接用关系运算符进行比较,必须用strcmp函数进行比较函数进行比较(3)字符串之间比较的规则字符串之间比较的规则(4)两个字符串比较结果的函数返回值等于第一个不同字符的两个
14、字符串比较结果的函数返回值等于第一个不同字符的ASCII码码之差。之差。 【注意】【注意】 对两个字符串比较,不能写成如下形式:对两个字符串比较,不能写成如下形式:uif(str1=str2) 或或if(str1str2) 或或if(str1str2) 4 求字符串长度函数求字符串长度函数strlen( ) (strlen.c)u函数格式函数格式: unsigned int strlen(char *str)u功能功能:求字符串求字符串str的实际长度(从首地址到的实际长度(从首地址到0之之间的字符个数间的字符个数,不包含不包含0),并将其作为函数值),并将其作为函数值返回。返回。【说明】【说
15、明】u参数参数str可以是字符数组、字符指针或串常量。可以是字符数组、字符指针或串常量。5 strlwr函数函数(strlwr不是标准不是标准C库函数库函数,gcc不支不支持持)u函数格式函数格式:char *strlwr(char *str);u功能功能:把字符串中的所有字母都变成小写。把字符串中的所有字母都变成小写。【说明】【说明】(1)参数参数str可以是字符数组、字符指针或串常量。可以是字符数组、字符指针或串常量。(2)运行该函数后参数运行该函数后参数str的内容改变。的内容改变。(3)函数返回值为字符串的首地址。函数返回值为字符串的首地址。6 strupr函数函数(strupr不是标
16、准不是标准C库函数库函数,gcc不不支持支持)u函数格式函数格式:char *strupr(char *str)u功能功能:把字符串把字符串str中的所有字母都变成大写。中的所有字母都变成大写。【说明】【说明】(1)参数参数str可以是字符数组、字符指针或串常量。可以是字符数组、字符指针或串常量。(2)运行该函数后参数运行该函数后参数str的内容改变。的内容改变。(3)函数返回值为字符串的首地址。函数返回值为字符串的首地址。4.4 数学运算函数数学运算函数1 求绝对值函数求绝对值函数uabs函数函数函数格式函数格式:int abs(int i);功能功能: 返回整数的绝对值。返回整数的绝对值。
17、ufabs函数函数函数格式函数格式: double fabs(double x);功能功能: 返回浮点数的绝对值。返回浮点数的绝对值。2 指数和对数函数指数和对数函数uexp 函数函数函数格式函数格式: double exp(double x); 功能功能:返回指数函数返回指数函数ex的值。的值。upow 函数函数函数格式函数格式:double pow(double x, double y); 功能功能: 返回指数函数返回指数函数(x的的y次方次方)的值。的值。ulog 函数函数函数格式函数格式: double log(double x); 功功 能能: 返回自然对数函数返回自然对数函数ln(
18、x)(即(即logex)的值。)的值。ulog10函数函数 函数格式函数格式: double log10(double x); 功功 能能: 返回以返回以10为底的对数函数(即为底的对数函数(即log10 x)的值。)的值。3 三角函数三角函数usin函数函数函数格式函数格式:double sin(double x);功能功能:正弦函数,返回正弦函数,返回x的正弦(即的正弦(即sin(x))的值,)的值,x的单位为弧度。的单位为弧度。uasin函数函数函数格式函数格式: double asin(double x); 功能功能: 反正弦函数,返回反正弦函数,返回x的反正弦(即的反正弦(即sin-
19、1(x))的值)的值, x应在应在-1到到1范围内。范围内。ucos函数函数函数格式函数格式: double cos(double x);功能功能:余弦函数,返回余弦函数,返回x的余弦(即的余弦(即cos(x))的值,)的值,x的单位为弧度。的单位为弧度。uacos函数函数函数格式函数格式: double acos(double x);功能功能: 反余弦函数,返回反余弦函数,返回x的反余弦(即的反余弦(即cos-1(x))的值,)的值,x应在应在-1到到1范围内。范围内。utan函数函数函数格式函数格式: double tan(double x);功能功能: 正切函数,返回正切函数,返回x的正切(即的正切(即tan(x))的值,)的值,x为弧度。为弧度。uatan函数函数函数格式函数格式: double atan(double x);功能功能:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- AI在区块链技术优化中的应用
- 2026年痰湿质人群健脾祛湿防感法
- 2026年企业文化建设与职业道德融合
- 2026年医疗数据安全培训提升员工意识
- 2026年人工智能时代民办职业教育专业调整
- 2026年结核病密切接触者筛查与管理
- 2026年实验室 5G 与物联网技术融合应用
- 上海立达学院《Android 移动平台开发》2025-2026学年第一学期期末试卷(A卷)
- 上海立信会计金融学院《安装工程计量计价》2025-2026学年第一学期期末试卷(B卷)
- 上海立信会计金融学院《安全防范系统工程》2025-2026学年第一学期期末试卷(A卷)
- 2026福建福州开大学川智慧教育科技有限公司招聘财务主管笔试参考题库及答案解析
- 2026下半年湖南益阳市资阳区事业单位招聘工作人员16人易考易错模拟试题(共500题)试卷后附参考答案
- 2026浙江杭州市西湖区人民政府西溪街道办事处招聘编外合同制工作人员2人笔试模拟试题及答案解析
- 环氧彩砂自流平地坪施工及验收规范
- 2026年科目1驾驶技术模拟题库及完整答案详解
- 六化建设培训
- TSG08-2026《特种设备使用管理规则》全面解读课件
- 【答案】《以案说法》(中南财经政法大学)章节作业慕课答案
- 云南省2025年普通高中学业水平合格性考试历史试题
- 《扣件式钢管脚手架安全技术规范》JGJ130-2023
- 高级英语第二册课件(张汉熙)
评论
0/150
提交评论