C语言中函数的作用

Python017

C语言中函数的作用,第1张

C语言中的函数的作用是可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用。

示例:

语言的函数定义和函数声明

#include<stdio.h>

//使用函数前,需要在main函数前对使用的函数进行声明

int getMax(int, int)

void main() {

int t=getMax(12, 21)

printf("%d\n", t)

getchar()

}

int getMax(int a, int b) {

if (a >b) {

return a

}

else {

return b

}

}

扩展资料

scanf 函数

函数原型:int scanf(char *format [,argument,...])

功能:从标准输入设备(一般指键盘)实现格式化输入

返回值:成功返回读入的数据项个数

函数参数:format 格式化字符

argument 输入数据项的地址列表

常用格式类型参考printf函数的个格式类型

用法举例:

从标准输入设备中输入一个整数到整形变量a中,输入一个浮点数到浮点型变量b中

int a=0

float b=0

scanf("%d%f",&a,&b)

上面程序执行后,从键盘输入: 19 18.6 ,程序将 19赋值给变量a, 18.6赋值给变量b 。

C语言输入输出函数有很多,标准I/O函数中包含了如下几个常用的函数:

scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.

int

getc(FILE

*fp)

getc主要是从文件中读出一个字符.常用的判断文件是否读取结束的语句为

(ch

=

getc(fp))

!=

EOF.EOF为文件结束标志,定义在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定义在stdlib.h中一样,文件也可以被理解为一种流,所以当fp为stdin时,getc(stdin)就等同于getchar()了.

int

putc(int

ch,FILE

*fp)

putc主要是把字符ch写到文件fp中去.如果fp为stdout,则putc就等同于putchar()了.

int

getchar(void)

getchar主要是从标准输入流读取一个字符.默认的标准输入流即stdio.h中定义的stdin.但是从输入流中读取字符时又涉及到缓冲的问题,所以并不是在屏幕中敲上一个字符程序就会运行,一般是通过在屏幕上敲上回车键,然后将回车前的字符串放在缓冲区中,getchar就是在缓冲区中一个一个的读字符.当然也可以在while循环中指定终止字符,如下面的语句:while

((c

=

getchar())

!=

'#')这是以#来结束的.

int

putchar(int

ch)

putchar(ch)主要是把字符ch写到标准流stdout中去.

char

*

gets(char

*str)

gets主要是从标准输入流读取字符串并回显,读到换行符时退出,并会将换行符省去.

int

puts(char

*str)

puts主要是把字符串str写到标准流stdout中去,并会在输出到最后时添加一个换行符.

char

*fgets(char

*str,

int

num,

FILE

*fp)

str是存放读入的字符数组指针,num是最大允许的读入字符数,fp是文件指针.fgets的功能是读一行字符,该行的字符数不大于num-1.因为fgets函数会在末尾加上一个空字符以构成一个字符串.另外fgets在读取到换行符后不会将其省略.

int

fputs(char

*str,

file

*fp)

fputs将str写入fp.fputs与puts的不同之处是fputs在打印时并不添加换行符.

int

fgetc(FILE

*fp)

fgetc从fp的当前位置读取一个字符.

int

fputc(int

ch,

file

*fp)

fputc是将ch写入fp当前指定位置.

int

fscanf(FILE

*fp,

char

*format,

输入列表)

fscanf按照指定格式从文件中出读出数据,并赋值到参数列表中.

int

fprintf(FILE

*fp,

char

*format,

输出列表)

fprintf将格式化数据写入流式文件中.

数据块读写函数

fread

(buffer,size,count,fp)

fwrite(buffer,size,count,fp)

参数说明:

buffer:是一个指针。

对fread

来说,它是读入数据的存放地址。

对fwrite来说,是要输出数据的地址(均指起始地址)。

size:

要读写的字节数。

count:

要进行读写多少个size字节的数据项。

fp:

文件型指针。

无统一划分标准。

有人分:

分类函数,所在函数库为ctype.h

数学函数,所在函数库为math.h、stdlib.h、string.h、float.h

目录函数,所在函数库为dir.h、dos.h

进程函数,所在函数库为stdlib.h、process.h

转换子程序,函数库为math.h、stdlib.h、ctype.h、float.h

诊断函数,所在函数库为assert.h、math.h

输入输出子程序,函数库为io.h、conio.h、stat.h、dos.h、stdio.h、signal.h

其它函数。。。。

其实,划分不划分,意义不大。没有人用到所有函数,也没有人记得住所有函数名和参数。都是用的时候查帮助文件,或到网上查找。常用的函数并不多,熟能生巧,不用死记。