一、数学库函数
1. fabs(x):求一个数的绝对值。参数x为浮点型,返回值也为浮点型。
示例代码:
#include <stdio.h> #include <math.h> int main() { double x = -123.45; double y = fabs(x); printf("x的绝对值为%.2lf\n", y); return 0; }
输出结果:
x的绝对值为123.45
2. pow(x, y):求x的y次方。参数x、y均为浮点型,返回值也为浮点型。示例代码:
#include <stdio.h> #include <math.h> int main() { double x = 2.0; double y = 3.0; double z = pow(x, y); printf("%.2lf的%.2lf次方为%.2lf\n", x, y, z); return 0; }
输出结果:
”2.00的3.00次方为8.00“
二、字符库函数
1. isalpha(ch):判断一个字符是否为字母。参数ch为字符,返回值为整型。当返回值非0时,表明ch是字母字符。注意,该函数只判断一个字符是否为字母,不会考虑字符的大小写。
示例代码:
#include <stdio.h> #include <ctype.h> int main() { char ch = 'A'; if (isalpha(ch)) { printf("%c是字母字符\n", ch); } else { printf("%c不是字母字符\n", ch); } return 0; }
输出结果:
A是字母字符
2. strcmp(s1, s2):比较两个字符串的大小。参数s1、s2为两个字符串(char类型数组),返回值为整型。当返回值小于0时,表明s1比s2小;当返回值等于0时,表明s1等于s2;当返回值大于0时,表明s1比s2大。
示例代码:
#include <stdio.h> #include <string.h> int main() { char s1[] = "Hello"; char s2[] = "Hello, world!"; int result = strcmp(s1, s2); if (result < 0) { printf("%s 比 %s 小\n", s1, s2); } else if (result == 0) { printf("%s 与 %s 相等\n", s1, s2); } else { printf("%s 比 %s 大\n", s1, s2); } return 0; }
输出结果:
”Hello 比 Hello, world! 小“
三、文件库函数
1. fopen(filename, mode):打开一个文件并返回一个文件指针。参数filename为文件名(char类型),mode为打开文件的模式(char类型)。打开文件的模式包括:
- r:以只读方式打开文件; - w:以写方式打开文件,若文件不存在,则创建一个文件; - a:以追加方式打开文件,若文件不存在,则创建一个文件; - r+:以读写方式打开文件; - w+:以读写方式打开文件,若文件存在,则会清空文件内容; - a+:以读写方式打开文件,若文件不存在,则创建一个文件,并可在文件末尾添加内容。
返回值类型为FILE指针类型,表明成功打开文件。
示例代码:
假设当前目录下存在一个名为“example.txt”的文件(内容为空)。
#include <stdio.h> int main() { FILE *fp = fopen("example.txt", "w"); if (fp != NULL) { printf("文件打开成功\n"); fclose(fp); } else { printf("文件打开失败\n"); } return 0; }
输出结果:
”文件打开成功“
2. fprintf(fp, format, ...):向指定文件中写入数据。参数fp为文件指针类型,format为写入数据的格式(类似于printf函数),后面可以跟上多个数据。返回值为写入的字符数(整型)。
示例代码:
假设当前目录下存在一个名为“example.txt”的文件(内容为空)。
#include <stdio.h> int main() { FILE *fp = fopen("example.txt", "w"); if (fp != NULL) { char str[] = "Hello, world!"; int count = fprintf(fp, "%s", str); printf("成功向文件中写入%d个字符\n", count); fclose(fp); } else { printf("文件打开失败\n"); } return 0; }
输出结果:
"成功向文件中写入13个字符"
4. fclose(fp):关闭一个打开的文件。参数fp为文件指针类型。示例代码:
#include <stdio.h> int main() { FILE *fp = fopen("example.txt", "r"); if (fp != NULL) { printf("文件打开成功\n"); fclose(fp); printf("文件关闭成功\n"); } else { printf("文件打开失败\n"); } return 0; }
输出结果:
"文件打开成功"
'”文件关闭成功"
四、系统库函数
1. system(command):执行一个系统命令。参数command为一个字符串,可以是任意的系统命令。返回值为执行命令的返回值(整型)。示例代码:
#include <stdio.h> #include <stdlib.h> int main() { int result = system("date"); printf("执行命令的返回值为:%d\n", result); return 0; }
输出结果:
"执行命令的返回值为:0"
2. malloc(size):分配一块指定大小的内存空间。参数size为所需空间的大小(单位为字节),返回值为指向该空间的指针(void类型)。示例代码:
#include <stdio.h> #include <stdlib.h> int main() { int size = 10; int *ptr = (int *)malloc(size * sizeof(int)); if (ptr != NULL) { printf("成功分配%d个整型变量所需的内存空间\n", size); free(ptr); } else { printf("内存分配失败\n"); } return 0; }
输出结果:
"成功分配10个整型变量所需的内存空间"
五、时间库函数
1. time(t):获取当前系统时间。参数t为time_t类型的指针,用于存储所获取的系统时间(单位为秒)。返回值为所获取的系统时间。示例代码:
#include <stdio.h> #include <time.h> int main() { time_t t; time(&t); printf("当前时间为:%s", ctime(&t)); return 0; }
输出结果:
"当前时间为:Tue May 11 09:36:18 2023"
2. strftime(str, size, format, t):将时间格式化为指定格式的字符串。参数str为存储格式化后字符串的数组,size为数组大小,format为格式化字符串的格式(类似于printf函数),t为需要格式化的时间(time_t类型)。返回值为存储到数组中的字符数(整型)。示例代码:
#include <stdio.h> #include <time.h> int main() { char str[100]; time_t t; time(&t); strftime(str, 100, "当前时间为:%Y-%m-%d %H:%M:%S\n", localtime(&t)); printf("%s", str); return 0; }
输出结果:
"当前时间为:2023-05-11 09:44:18"