分享c语言中一些实用的函数2
创始人
2024-11-13 19:10:05
0

目录

一.头文件

1.sqrt()函数

2.sin,cos,tan函数

附加:宏定义π

3.exp函数

4.fabs函数

5.fmax函数

6.floor函数

7.log函数

附加:求一个数是几为数(运用floor函数和log函数)

8.pow函数

二.头文件

1.abs函数

附加:


一.头文件

1.sqrt()函数

sqrt() 函数是 C 标准库中的数学函数,用于计算一个数字的平方根

原型:
double sqrt(double x);

返回值:返回一个数的平方根,返回值是 double 类型,即使输入的数整数

代码示例:

#include  #include   int main() {     double num = 25.0;     double result;      // 计算 num 的平方根     result = sqrt(num);      // 打印结果     printf(" %.2f的平方根是%.2f\n", num, result);      return 0; } 

结果如图:

2.sin,cos,tan函数

分别计算sin(),cos(),tan()弧度对应的三角函数值。

原型:
double sin(double x);
double cos(double x);
double tan(double x);

返回值:sincostan 函数计算弧度对应的三角函数值

代码示例:

#define _CRT_SECURE_NO_WARNINGS 1 #include  #include  #ifndef M_PI #define M_PI 3.14159265358979323846 #endif  int main() {     float angle = 45.0f;     float radians = angle * M_PI / 180.0f;  // 将角度转换为弧度,M_PI是π      float sin_value = sinf(radians);     float cos_value = cosf(radians);     float tan_value = tanf(radians);      printf("sin(%.2f度) = %.4f\n", angle, sin_value);     printf("cos(%.2f度) = %.4f\n", angle, cos_value);     printf("tan(%.2f度) = %.4f\n", angle, tan_value);      return 0; }

结果如图:

附加:宏定义π

M_PI 是一个在某些编译器实现中定义的宏,表示数学常数 π(pi),大约为 3.14159265358979323846。它通常在 头文件中定义,但这不是 C 标准库的一部分,因此并非所有编译器都提供这个宏。

如果没有这个宏,则自己定义

#ifndef M_PI #define M_PI 3.14159265358979323846 #endif 

可以从上面的代码示例看到vs2022中并没有提供这个宏,所以在vs2022还是得自己定义来使用.

3.exp函数

exp 是用于计算自然指数函数 e的x次方 的标准库函数,定义在 头文件中。

原型:

double exp(double x);

返回值类型exp 函数返回 double 类型的结果

代码示例:

#include  #include   int main() {     double x = 1.0;     double result = exp(x);      printf("exp(%.2f) = %.4f\n", x, result);      return 0; } 

结果:

注意:如果传递的是其他数值类型,编译器会进行隐式类型转换。(自然是都转换为double型的)

4.fabs函数

fabs 函数是 C 标准库中的一个函数,用于计算浮点数的绝对值。它定义在 头文件中。

原型:

double fabs(double x);

返回值类型fabs 函数返回 double 类型的结果。

代码示例:

#include  #include   int main() {     double num = -10.5;     double abs_value = fabs(num);      printf("%.2f的绝对值为%.2f\n", num, abs_value);      return 0; } 

结果如图:

5.fmax函数

fmax 函数是 C 标准库中的一个函数,用于返回两个浮点数中的最大值。它定义在 头文件中。

原型:double fmax(double x, double y);

x,y分别为两个要比较的数.

返回值类型fmax 函数返回 double 类型的结果。

#include  #include   int main() {     double num1 = 10.5;     double num2 = 20.3;     double max_value = fmax(num1, num2);      printf(" %.2f 和 %.2f 之间最大的值为 %.2f\n", num1, num2, max_value);      return 0; } 

结果如图:

6.floor函数

floor 是一个标准库函数,用于计算小于或等于给定数的最大整数。它是一个数学函数,通常在浮点运算中使用。

原型:double floor(double x);

返回值类型floor 函数返回 double 类型的结果。

代码示例:

#include  #include   int main() {     double num = 10.7;     double floor_value = floor(num);      printf("%.2f的floor值为%.2f\n", num, floor_value);      num = -10.7;     floor_value = floor(num);      printf("%.2f的floor值为%.2f\n", num, floor_value);      return 0; } 

结果如图:

7.log函数

log 函数是 C 标准库中的一个函数,用于计算自然对数(即以 e 为底的对数)。它定义在 头文件中。

原型:double log(double x);

返回值类型log 函数返回double 类型的结果。

代码示例:

#include  #include   int main() {     double num = 10.0;     double log_value = log(num);      printf("%.2f的log值为%.4f\n", num, log_value);      return 0; } 

结果如图:

当然我们也可以在log后面加上数字,如:log10(),log2()(也就是换底数,后面没加数字默认为e)

代码示例:

#define _CRT_SECURE_NO_WARNINGS 1 #include  #include   int main() {     double num = 10.0;     double num2 = 2.0;     double log_value = log10(num);     double log_value2 = log2(num2);      printf("%.2f的log10值为%.4f\n", num, log_value);     printf("%.2f的log2值为%.4f\n", num2, log_value2);      return 0; }  

结果如图:

注意:log 函数的参数必须大于 0,因为对数函数在 0 及负数上未定义。

附加:求一个数是几为数(运用floor函数和log函数)

//求一个数是几位数 #define _CRT_SECURE_NO_WARNINGS 1 #include #include int getdigit(int i) { 	if (i == 0) { 		return 1; 	} 	return floor(log10(i)) + 1;//floor函数和log()都是math.h头文件里的 } int main() { 	int n = getdigit(100); 	printf("100是%d位数", n); 	return 0; }

当然,你想求其他数把100改一下就好。
 

8.pow函数

pow 函数是 C 标准库中的一个函数,用于计算一个数的幂。它定义在 头文件中。

原型:double pow(double base, double exponent);

  • base:底数。
  • exponent:指数

返回值:为一个 double 类型的结果.

代码示例:

#include  #include   int main() {     double base = 2.0;     double exponent = 3.0;     double result = pow(base, exponent);      printf("%.2f的%.2f次方为%.2f\n", base, exponent, result);      base = 5.0;     exponent = 0.0;     result = pow(base, exponent);      printf("%.2f的%.2f次方为%.2f\n", base, exponent, result);      base = 2.0;     exponent = -2.0;     result = pow(base, exponent);      printf("%.2f的%.2f次方为%.2f\n", base, exponent, result);      return 0; } 

结果如图:

ps:

以上的函数在一般情况下也可以强制转换为int型,只不过可能在某些情况会精度丢失,看个人使用。

比如说求2的3次方,结果为8,这时我们就可以用int型

二.头文件

1.abs函数

abs 函数是 C 标准库中的一个函数,用于计算整数的绝对值。它定义在 头文件中。

原型:int abs(int x);

返回值类型abs 函数返回 int 类型的结果。

#include  #include   int main() {     int num1 = -10;     int num2 = 10;          int abs_value1 = abs(num1);     int abs_value2 = abs(num2);      printf("%d的绝对值为%d\n", num1, abs_value1);     printf("%d的绝对值为%d\n", num2, abs_value2);      return 0; } 

结果如图:

附加:

c语言标准库中的宏定义:

以下都属于头文件:

  • CHAR_BIT:一个 char 类型所占用的位数(通常是 8)。
  • SCHAR_MINsigned char 类型的最小值。
  • SCHAR_MAXsigned char 类型的最大值。
  • UCHAR_MAXunsigned char 类型的最大值。
  • CHAR_MINchar 类型的最小值(如果 char 是 signed 类型,与 SCHAR_MIN 相同;否则为 0)。
  • CHAR_MAXchar 类型的最大值(如果 char 是 signed 类型,与 SCHAR_MAX 相同;否则与 UCHAR_MAX 相同)。
  • MB_LEN_MAX:多字节字符中的最大字节数。
  • SHRT_MINshort 类型的最小值。
  • SHRT_MAXshort 类型的最大值。
  • USHRT_MAXunsigned short 类型的最大值。
  • INT_MINint 类型的最小值。
  • INT_MAXint 类型的最大值。(int型的用的比较多)
  • UINT_MAXunsigned int 类型的最大值。
  • LONG_MINlong 类型的最小值。
  • LONG_MAXlong 类型的最大值。
  • ULONG_MAXunsigned long 类型的最大值。
  • LLONG_MINlong long 类型的最小值(如果支持)。
  • LLONG_MAXlong long 类型的最大值(如果支持)。
  • ULLONG_MAXunsigned long long 类型的最大值(如果支持)。

扣1下次派大星还教你

感谢大家的阅读!一键三连

扣1下次派大星还教你

扣1下次派大星还教你

扣1下次派大星还教你

相关内容

热门资讯

秒懂教程!微信炸金花房卡找谁买... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:56001354许多玩家在游戏中会购买房卡来享...
房卡必备教程“微信群牛牛房卡去... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡来享受...
秒懂教程!玩炸金花房卡从哪里买... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:71319951许多玩家在游戏中会购买房卡来享...
秒懂教程“金花房卡正规购买渠道... 金牛座牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:44346008许多玩家在游戏中会购买房卡...
秒懂教程!拼三张房卡多少钱一张... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:66336574许多玩家在游戏中会购买房卡来享...
ia实测“微信链接金花房卡怎么... 皇豪互娱是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡来...
秒懂教程!如何创建拼三张房间卡... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:56001354许多玩家在游戏中会购买房卡来享...
正版授权“牛牛房卡卖家联系方式... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:44346008许多玩家在游戏中会购买房卡来享受...
秒懂教程!微信炸金花房间怎么弄... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:71319951许多玩家在游戏中会购买房卡来享...
安卓添加系统功能失效了,探究原... 最近我的安卓手机有点儿闹脾气,添加的系统功能突然失效了,真是让人头疼。这不,我就来跟你聊聊这个烦心事...
给大家讲解“怎样购买金花链接房... 新超凡是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来享...
秒懂教程!微信牛牛房卡链接在哪... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:66336574许多玩家在游戏中会购买房卡来享受...
秒懂教程“微信牛牛链接金花房卡... 金牛座牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡...
秒懂教程!微信链接牛牛房卡怎样... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:56001354许多玩家在游戏中会购买房卡来享受...
给大家讲解“微信斗牛房卡怎么买... 微信斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡来...
秒懂教程!微信群牛牛房间买房卡... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:71319951许多玩家在游戏中会购买房卡来享受...
正版授权“金花房卡购买渠道,悠... 悠悠大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房卡...
秒懂教程!炸金花房间找谁买房卡... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:66336574许多玩家在游戏中会购买房卡来享...
ia实测“购买斗牛房卡联系方式... 神皇大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来...
安卓的系统取消按键音,静享无干... 你知道吗?最近安卓系统来了一次小小的变革,那就是取消了按键音。这可真是让人眼前一亮啊!想象当你轻轻按...