C语言基础—函数的理解及应用

来源:互联网 发布:如何看网络直播 编辑:程序博客网 时间:2024/05/16 18:19


众所周知,C语言是面向过程的语言,也成为函数语言。因此,函数是C语言的基础。按照函数定义方式的不同,可以分为库函数(C语言自带的函数库,如stdio.h、stdlib.h等)和自定义函数(由用户定义)。自定义函数又可以按照有无返回值分为有返回值函数和无返回值函数,按照形式参数个数分为有参函数和无参函数。


1 函数定义的基本格式是:返回值类型 函数名(形参列表){函数体}。
1)返回值类型需要与return语句返回的类型相一致,否则会发生强制类型转换,return中语句中返回值的返回类型被强制转换为函数头部定义的类型;
2)函数名的书写须符合C语言中标识符的规定;
3)形式参数的个数、类型根据实际情况定义,不同形参间用“,”隔开
4)函数体中可以调用其他函数。调用前需要对被调函数进行声明。当函数返回值类型为int或者被调函数在调用函数之前定义,可以省略函数的声明。


C语言中的函数是实现功能的基本代码块。函数之间的相互调用,方便了代码块的反复使用,能够使代码更简洁高效。
下面是学习函数练习的小案例:
int main(int argc, char* argv[])
{
//利用递归实现整数阶乘的运算
int factorial(int num);
int i = 5;
int s = factorial(i);
printf("%d的阶乘是:%d\n",i,s);
return 0;
}
//实现整数的阶运算
int factorial(int num)
{
int result;
if(num == 1)
result = num;
else
result = num*factorial(num-1);
return result;
}
/*
函数使用前需声明;
*/
void caculateNumber()
{
//函数相互调用实现数值计算
float avg(int x, int y,int z);
float result = avg(200,235,500);
printf("result = %.2f\n",result);
}
//定义实现三个整数相加的函数
float avg(int x, int y,int z)
{
    int sum(int x,int y,int z);
return sum(x,y,z)/3.0f;
}
int sum(int x,int y,int z)
{
return x+y+z;
}
void printLineMethod()
{
//调用函数,实现自定义行数的下划线打印
//void printLine(int row);
//printLine(5);
void printLineRecursion(int row);
printLineRecursion(5);
}
//用for循环语句实现
 void printLine(int num)
 {
for(;num >= 1;num--)
printf("---------%d\n",num);
 }
 
 //用递归语句实现
 void printLineRecursion(int row)
 {
if(row == 1)
printf("-------%d\n",row);
else
{
printf("-------%d\n",row);
printLineRecursion(row-1);
}

 }
0 0
原创粉丝点击