函数是数学名词,代数式中,凡相关的两数X与Y,对于每个X值,都只有一个Y的对应值。这种对应关系就表示Y是X的函数。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站制作、九台网络推广、小程序制作、九台网络营销、九台企业策划、九台品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供九台建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
函数(function)的定义通常分为传统定义和近代定义,函数的两个定义本质是相同的,只是叙述概念的出发点不同,传统定义是从运动变化的观点出发,而近代定义是从集合、映射的观点出发。
函数的近代定义是给定一个数集A,假设其中的元素为x,对A中的元素x施加对应法则f,记作f(x),得到另一数集B,假设B中的元素为y,则y与x之间的等量关系可以用y=f(x)表示,函数概念含有三个要素:定义域A、值域B和对应法则f。其中核心是对应法则f,它是函数关系的本质特征。
函数,最早由中国清朝数学家李善兰翻译,出于其著作《代数学》。之所以这么翻译,他给出的原因是“凡此变数中函彼变数者,则此为彼之函数”,也即函数指一个量随着另一个量的变化而变化,或者说一个量。
函数由函数头和函数体组成,通俗地讲函数头的格式为type 函数名(参数1,……) 注意括号中可以无参数,也可以有参数,函数名前的type为函数的返回类型,“)”后千万不能加“;”,因为它不是语句,而是函数声明。
接着是由一对“{}”符号括起来的函数体,其中函数体由变量声明部分和执行部分组成,声明部分就是对要用到的变量进行说明,因为C语言变量使用前必须要先声明,执行部分就是程序要执行的语句。详细说明建议你看谭浩强教授主编的“C语言程序设计”。
用句不科学地说法来说明他们的区别就是:C语言中以“;”结束的就是语句,带括号是函数,当然这种观点不科学,但是,万一你一时难于理解的话,那你不防这样去理解,等你以后熟悉C语言了,就不会这样了。
用法 double sin(double x);
计算并返回X的正弦值
cos()
用法 double cos(double x);
计算并返回X的余弦值
tan()
用法 double tan(double x);
计算并返回X的正切值
exp()
用法 double exp(double x);
计算并返回常数e的x次幂
fabs()
用法 double fabs(double x);
返回双精度数x的绝对值
pow()
用法 double pow(double x,double y);
计算并返回X的y次幂
sqrt()
用法 double sqrt(double x);
计算并返回x的平方根值
·数值与字符串转换函数 stdlib.h
atof()
用法 double atof(char *str);
把str指向的数字字符串转换为一个双精度数
atoi()
用法 int atoi(char *str);
把str指向的数字串转换为一个整型数
atol()
用法 long atol(char *str);
把str指向的数字串转换为一个长整型数
itoa()
用法 char *itoa(int unm,char *str,int radix);
将整数num按radix规定的进制转换成字符串存入str中
ltoa()
用法 char *ltoa(long unm,char *str,int radix);
将长整数num按radix规定的进制转换成字符串存入str中
ultoa()
用法 char *ultoa(unsigned long unm,char *str,int radix);
将无符号长整数num按radix规定的进制转换成字符串存入str中
·字符的分类与转换函数 ctype.h
isalpha()
用法 int isalpha(int ch);
判断ch是否为字母,是字母返回1 否则返回0
islower()
用法 int islower(int ch);
判断ch是否为小写字母,是小写字母返回1 否则返回0
isupper()
用法 int isupper(int ch);
判断ch是否为大写字母,是大写字母返回1 否则返回0
tolower()
用法 int tolower(int ch);
返回ch的小写字母
toupper()
用法 int toupper(int ch);
返回ch的大写字母
·字符串操作函数 string.h
strlen()
用法 unsigned int strlen(char *str);
返回字符串str中的字符个数(不包括字符串结束标志'\0')
strcat()
用法 char *strcat(char *str1,char *str2);
将字符串str2接到str1后面 返回给str1(str1结束标志'\0'被清除)
strcmp()
用法 int strcmp(char *str1,char *str2);
比较两个字符串str1和str2 str1大于str2时返回整数;等于返回0;小于返回负数
strcpy()
用法 char *strcpy(char *str1,char *str2);
将字符串str2拷贝到str1中 返回给str1
strchr()
用法 char *strchr(char *str,int ch);
在字符串str中着字符ch第一次出现的位置,返回该位置的指针 若没找到ch则返回NULL
·输入输出函数 stdio.h
scanf()
用法 int scanf(char *format,address,...);
从标准输入设备中按format指定的格式输入数据,并把输入的数据依次存入对应的地址address中,返回输入数据个数(通常不需要引用该函数返回值)
getchar()
用法 int getchar(void);
从标准输入设备读入一个字符.成功时返回键入的字符,出错时返回EOF
getch()
用法 int getch(viod);
返回从键盘上读入的字符,屏幕上不显示
gets()
用法 char *gets(char *str);
从标准输入设备读入一个字符串(以换行符结束)送入str中,成功时返回字符串参数str,出错或遇到文件结束时返回NULL
printf()
用法 int printf(char *format,address,...);
将格式串format中的内容原样输出到标准输入设备,每遇到一个%,就按规定的格式依次输出一个表达式argument的值到标准输出设备,返回成功输出的项数,出错时返回EOF(通常不需要引用该函数返回值)
putchar()
用法 int putchar(int c);
将字符c输出到标准输出设备,成功时返回字符c的值,出错时返回EOF(通常不需要引用该函数的返回值)
puts()
用法 int puts(char *str);
将字符串str输出到标准输出设备,并加上换行符,返回最后输出的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fopen()
用法 FILE *fopen(char *filename,*mode);
以mode指定的方式打开文件filename,成功则返回与打开文件相关的文件指针,出错时返回NULL
fclose()
用法 int fclose(FILE *fp);
关闭fp指定的文件,释放其文件缓冲区,成功返回0,失败返回EOF(通常不需要引用该函数的返回值)
fcloseall()
用法 int fcloseall(void);
关闭所有打开的文件
feof()
用法 int feof(FILE *fp);
检测fp所指定的文件是否遇到文件结束符EOF,遇到结束符时返回0,否则返回非0值
fscanf()
用法 int fscanf(FILE *fp,char *format,address,...);
从fp指定的文件中按format规定的格式输入数据,并把输入的数据依次存入对应的地址address中,返回输入数据个数(通常不需要引用该函数的返回值)
fgetc()
用法 int fgetc(FILE *fp);
从fp指定的文件中读取下一个字符,成功时返回读取的字符,出错或至文件结束时返回EOF
fgets()
用法 char *fgets(char *buf,int n,FILE *fp);
从fp指定的文件中读取一个长度为n-1的字符串,存入起始地址为buf的内存空间中,成功时返回buf指定的字符串,出错或遇到文件结束时返回NULL
fprintf()
用法 int fprintf(FILE *fp,char *format,argument,...);
将格式串format中的内容原样输出到所指定的文件中,每遇到一个%,就按规定的格式依次输出一个表达式argument的值到所fp指定的文件中,返回成功输出的项数,出错时返回EOF
fputc()
用法 int fputc(int c,FILE *fp);
输出一个字符到fp指定的文件中,成功时返回所写的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fputs()
用法 int fputs(char *str,FILE *fp);
把字符串str输出到fp指定的文件中,返回最后输出的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fread()
用法 int fread(viod *buf,int size,int n,FILE *fp);
从fp文件中读取长度为size的n个数据项,放到buf指向的内存区,成功时返回所读的数据项个数,遇到文件结束或出错时返回0
fwrite()
用法 int fwrite(viod *buf,int size,int n,FILE *fp);
将buf指向的内存区中长度为size的n个数据写入fp文件中,返回写到fp文件中的数据项个数
ftell()
用法 long ftell(FILE *fp);
返回fp文件中当前文件指针位置相对于文件起始位置的偏移量(单位是字节),出错时返回-1L
rewind()
用法 void rewind(FILE *fp);
把fp文件的位置指针从新定位到文件开始位置
fseek()
用法 int fseek(FILE *fp,long offset,int origin);
将fp文件的位置指针移到新的位置,新位置与origin所指的位置距离为offset字节,origin的取值为
SEEK_SET(0) 代表文件的开始位置
SEEK_CUR(1) 代表文件的当前位置
SEEK_END(2) 代表文件尾
rename()
用法 int rename(char *oldname,char *newname);
将oldname指定的文件重命名为newname
remove()
用法 int remove(char *filename);
删除filename指定的文件
·文件目录管理函数 dir.h
chdir()
用法 int chdir(const char *path);
改变当前的工作目录为path指定的目录,如果成功函数返回0,否则为-1
findfirst()
用法 int findfirst(char *pathname, struct ffblk *ffblk,int attrib);
搜索符合条件的文件或目录,搜寻结果必须符合pathname指定的通配符字符串条件和attrib指定的文件属性条件.如果搜寻成功,函数返回一个搜寻句柄,并将搜寻结果的有关信息通过结构ffblk返回,如果搜寻失败,函数返回-1
findnext()
用法 int findnext(struct ffblk *ffblk);
搜索下一个符合条件的文件或目录,搜寻结果必须符合最近的一次findfirst调用时的搜寻条件,如果搜寻成功,函数返回一个句柄,并将搜寻结果的有关信息通过结构ffblk返回,如果搜寻失败,函数返回-1
fnmerge()
用法 void fnmerge (char *path,const char *drive,const char *dir,const char *name,const char *ext);
以指定的驱动器号drive,路径dir,文件名name,文件扩展名ext来建立新文件名path
fnsplit()
用法 int fnsplit(const char *path,char *drive,char *dir,char *name,char *ext);
从文件名path中获取驱动器号drive,路径dir,文件名name,文件扩展名ext
getcurdir()
用法 int getcurdir(int drive,char *direc);
取指定驱动器drive的当前目录,存入direc中
getcwd()
用法 char *getcwd(char *buf,int n);
取当前工作目录的全路径,并存入buf中,参数n为buf的大小,如果成功,函数返回指向buf的指针,否则返回NULL
getdisk()
用法 int getdisk(void);
取当前磁盘驱动器号并返回(其中1为A驱, 3为C驱,以此类推)
mkdir()
用法 int mkdir(char *pathname);
建立一个名为pathname的目录,如果成功 函数返回0,否则返回-1
rmdir()
用法 int rmdir(char *pathname);
删除一个名为pathname的目录,如果成功 函数返回0,否则返回-1
setdisk()
用法 int setdisk(int drive);
根据drive来设置当前磁盘驱动器(其中1为A驱, 3为C驱,以此类推)
·进程控制函数 process.h
system()
用法 int system(char *command);
执行command指定的DOS命令
exit()
用法 void exit(int status);
以status指定的退出码中止程序
execl()
用法 int execl(char *pathname,char *arg0,...,NULL);
调用并执行新的子进程,pathname为要执行的文件 arg0 arg1等为执行参数
spawnl()
用法 int spawnl(int mode,char *pathname,char *arg0,...,NULL);
创建并执行新的进程,mode为执行方式 取值为_P_WAIT _P_NOWAIT或_P_NOWAITO pathname为要执行的文件,arg0 arg1等为执行参数
·时间日期函数 time.h
asctime()
用法 char *asctime(const struct tm *tblock);
将tm结构变量tblock中保存的日期和时间信息转换为ASCII码形式,并返回该形式的字符串
clock()
用法 clock_t clock(void);
计算当前进程使用的处理器时间并返回
ctime()
用法 char *ctime(const time_t *time);
将time_t结构变量time中保存的日期和时间信息转换为ASCII码形式,并返回该形式的字符串
time()
用法 time_t time(time_t *timer);
将系统时间保存在time中,并返回该系统时间
difftime()
用法 double difftime(time_t time2,time_t time1);
计算两个时刻之间的时间差并返回,其中time1为起始时间,time2为终止时间
stime()
用法 int stime(time_t *tp);
设置当前时间为tp表达的时间
你只要看到是关键字(保留字)的就可以认定它不是一个函数了。
switch就是一个关键字
函数除了主函数main()还有系统已定义的函数也称库函数,如scanf(),输入函数,printf()输出函数(我们使用时其实就是对库函数的调用.除此之外就是用户自定义的函数。
形如:
类型
函数名(参数1,参数2)
{
语句序列;
return
类型;
}
关于函数的介绍你可以看一下有关方面的书藉。
至于GOTO语句
它的使用是先标记一个地方,下边再用goto回到标记处。以实现循环。
标记和goto只要在同一个函数中就行了,因switch不是函数,所以是可以内外放的。