现在的位置: 首页 > 算法 > 正文

C语言中常用函数的说明

2020年02月05日 算法 ⁄ 共 1869字 ⁄ 字号 评论关闭

  1.I/O函数

  (1)scanf函数:

  int scanf(const char *format…..);

  从标准输入流stdin中按格式format将数据写到参数表中;若操作成功,返回写到参数表中的参数个数,否则返回EOF;

  注意以下几点:

  ①scanf函数没有精度控制

  如出现:

  scanf(“%6.2f”,&a);

  是绝对错误的。

  ②在以%c格式输入字符数据时,所有输入的均为有效字符

  如:

  scanf(“%c%c%c”,&a,&b,&c);

  输入:d e f

  则a=’d’,b为空格字符' ',c=’d’

  如果以%s读入字符串,则空格键和回车键都可以作为输入结束的标志。

  如:

  scanf(“%s%s”,p,q);---------p,q均为指针

  输入:Hello World与

  Hello

  World

  效果是相同的,p均指向Hello这个字符串,q均指向World这个字符串。

  ③如果在格式控制字符串中有非格式字符,则输入时要照原样入

  如:

  scanf(“%d,%d,%d,”,&,&b,&c);

  则输入时必须加上逗号:5,6,7

  ④如果同while配合用的话,则需注意去掉回车键

  如有下面一段程序:

  while(scanf(“%d”,&n)==1&&n!=0)

  {

  char ch;

  scanf(“%c”,&ch);

  printf(“%c\n”,ch);

  }

  则输出结果是:

  2

  3

  0

  结果表明ch字符是回车键。

  所以如果要消除影响:

  有两种方法:

  1)加上getchar();

  while(scanf(“%d”,&n)==1&&n!=0)

  {

  getchar();

  char ch;

  scanf(“%c”,&ch);

  printf(“%c\n”,ch);

  }

  2)在while中加上%*c

  While(scanf(“%d%*c”,&n)==1&&n!=0)即可。

  2.数学函数

  (1)求绝对值

  double fabs(double );

  float fabsf(float);

  long double fabsl(long double);

  int abs(int);

  long int labs(long int);

  (2)floor函数:返回不大于参数的整数

  float floor(float);

  double floor(double);

  (3)ceil函数:返回不小于参数的整数

  float ceil(float);

  double floor(double);

  (4)pow:返回X^Y;

  double pow(double x,double y);

  (5)sqrt:返回x的开方

  double sqrt(double x);

  (6)log2,log10:返回底数的自然对数值

  double log2(double x);

  double log10(double x);

  3.字符串处理函数

  (1)char *strchr(const char *str,int ch);

  返回str中第一次出现字符ch的位置指针,否则返回NULL;

  (2)char *strstr(const char *str1,const char *str2);

  返回str1中第一次出现str2的位置指针,否则返回NULL;

  (3)int stricmp(const char *str1,const char *str2);

  忽略字符的大小写进行比较。

  (4)int strncmp(const char *str1,const char *str2,int count);

  将str1前n个字符与str2的前n个字符进行比较。

  (5)char *strncpy(char *str1,const char *str2,int count);

  将str2的前n个字符复制到str1中。

  (6)char *strrev(char *str);

  将字符串str逆序,并返回逆置后的结果。

  4.常用使用函数

  (1)double atof(const char *str);

  将字符串str表示的数转换成浮点数。

  (2)int atoi(const char *str);

  将字符串str表示的数转换成整数。

  (3)void qsort(void *buf,int count,int size,cmp);————>count为所需要进行排序的元素个数,size为每个元素所占用的空间

  快速排序。

抱歉!评论已关闭.