函数 笔记

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

函数笔记

一概念:具有一定功能,又相对独立的很多程序代码的集合。

二使用函数的好处:

1)大大减少编写程序的工作量,增加软件的开发效率

2)便于程序的修改,维护。

三分类:

1 按照函数的来源不同,分为系统函数和用户函数(自定义函数)

系统函数:C语言本身提供的函数

系统函数在函数库文件当中定义的,例如:stdio.h 标准的输入和输出函数库string.h 字符串函数库stdlib.h 标准库函数库math.h 数学函数库

如果使用系统函数,要将函数库文件用include 包含到当前的C程序文件中

例如:

#include

#include

#include

2 字符串函数,函数库为string.h

求字符串长度strlen(数组名) 返回值:int类型

char s[20]=”hello”;

int len;

len=strlen(s);

长度不包含字符串的结束标注‘\0’空字符

字符串复制:

strcpy(s1,s2) 将字符串s2复制到s1当中,如果s1中原来有数据,则该数据被覆盖,s1,s2为两个字符数组名称

注意:一定要保证字符数组s1,能够放得下复制之后的字符串s2

main()

{

char s1[30],s2[30];

printf("请输入s1字符串:");

gets(s1);

strcpy (s2,s1);

printf("复制后s2字符串为:%s\n",s2);

}

字符串连接:

strcat(s1,s2) 将字符数组s2中的字符串连接到字符数组s1的已经存储的字符串的后面,组成一个新的字符串。

注意:目标数组s1,要能够容纳下连接后的新的字符串。

main()

{

char s1[10],s2[10]="very";

printf("请输入第一个字符串:");

gets(s1);

printf("请输入第二个字符串:");

gets(s2);

strcat(s2,s1);

printf("连接后的字符串:%s\n",s2);

}

字符串的比较:

int strcmp(s1,s2): 返回值int类型

比较字符串s1,s2

如果返回值为1,那么s1大于s2

如果返回值为0,那么s1等于s2

如果返回值为-1,那么s1小于s2

字符串的大小写转换:

将字符串转换成大写:strupr(s) s为字符数组名称

将字符串转换成小写:strlwr(s) s为字符数组名称

main()

{

char s1[20],s2[20];

int n;

printf("请输入第一个字符串:");

gets(s1);

printf("请输入第二个字符串:");

gets(s2);

n=strcmp(s1,s2);

if(n==1)

{

printf("%s>%s\n",s1,s2);

}

else if(n==0)

{

printf("%s==%s\n",s1,s2);

}

else

printf("%s<%s\n",s1,s2);

//大小写转换

strupr(s1);

strlwr(s2);

printf("大写字符串为s1=%s 小写s2=%s\n",s1,s2);

}

stdio.h中常用的系统函数

printf,scanf

gets(s) :输入字符串

puts(s) 输出字符串

输入字符:

char ch;

ch=getchar(); 从键盘输入一个字符,如果输入的是多个字符,只能获取第一个字符

main()

{

char ch;

printf("请输入一个字符:");

ch=getchar();

//printf("你输入的字符是%c\n",ch);

printf("你输入的字符是:");

putchar(ch);

putchar('\n');

}

输出字符:

putchar(字符变量、字符常量或者是字符ASCII码)

数学函数库math.h

double pow(double x,double y) 求x的y次幂

double sqrt(double x) 求x的算术平方根

#include

main()

{

int i;

double sum1=0,sum2=0;

for(i=1;i<=10;i++)

{

sum1+=sqrt(i);

sum2+=pow(i,3);

}

printf("立方和: %.2f\n" , sum2);

printf("算术平方根和: %.2f\n" , sum1);

}

double fabs(double x) 求x的绝对值

double floor(double x) 求小于或等于x的最大的整数

double ceil(double x) 求大于或等于x的最小的整数

main()

{

double x=3.26,y=1.23,z=6.78;

printf("%.0f\n",floor(x));

printf("%.0f\n",ceil(x));

printf("最大值:%.2f\n",max(max(x,y),z) );

}

double sin(double x) 求弧度角x的正弦值

double cos(double x) 求弧度角x的余弦值

double tan(double x) 求弧度角x的正切值

标准库函数库stdlib.h

double max(double x,double y) 求x,y中较大的值

double min(double x,double y) 求x,y中较小的值

int rand(); 产生一个大于或等于0的随机整数

void srand(unsigned int ) 设置随机数的种子数

main()

{

int num,i;

//存储最终的不重复的随机数,rd=rand表示一个产生大于或

等于0的随机整数

int rd[3];

//产生不重复的随机数的数量

int count=0,j;

//srand设置随机数的种子数,使用从1970年1月1日到当

前的所经过的秒数

srand((unsigned)time(0));

printf("随机整数:");

while(1)

{

num=rand()%10;

//查找num是否在rd数组中已经存在

for(j=0;j

相关文档
最新文档