函数:为了完成某些功能而编写若干行代码的集合。可以供同一个程序或其他程序调用。
函数是C语言的基本组成单位。
函数的优点:代码更加简洁,易于维护,可以提高代码的重用性。
如何自定义函数:
返回值类型 函数名称 (参数)
{
//函数体;
返回值;
}
生活案例:做火腿
火腿类型 做火腿(生猪)
{
杀猪;
脱毛;
剁肉;
加入淀粉;
加入三聚氰胺;
…..
打包;
出火腿;
}
注意:
1.返回值类型:可以有返回值,也可以没有返回值(void)
2.函数名:为函数起一个名称,类似于人名(简单说就为函数起个名称,方便后期调用)
3.参数:原材料
C语言中的函数分为内置函数和自定函数
常见的内置函数:
内置函数 |
头文件 |
用途 |
double sqrt(double x) |
math.h |
计算x的平方根 |
double pow(double x, double y) |
计算x的y次幂 |
|
double ceil(double x) |
求不小于x的最小整数,并以double形式显示 |
|
double floor(double x) |
求不大于x的最大整数,并以double形式显示 |
|
int toupper(int x) |
ctype.h |
如果x为小写字母,则返回对应的大写字母 |
int tolower(int x) |
如果x为大写字母,则返回对应的小写字母 |
|
int rand(void) |
stdlib.h |
产生一个随机数 |
void exit(int retval) |
终止程序 |
示例:
//计算1~10平方根和立方
int i;
double square,power;
for(i=1;i<=10;i++){
square=sqrt(i); //使用sqrt(x)函数计算x平方根
power=pow(i,3); //使用pow(x,y)函数计算x的y次方
printf("%d的平方根是%.2lf,立方是%.2lf\n",i,square,power); //.2lf:double类型精确到小数点后两位
}
floor()和ceil()函数:
//floor(x);--->不大于x的最大整数,不会四舍五入
printf("floor(12.1)=%f\n",floor(12.1));//12
printf("floor(-12.1)=%f\n",floor(-12.1));//-13
//ceil(x);--->不小于x的最小整数,不会四舍五入
printf("ceil(12.1)=%f\n",ceil(12.1));//13
printf("ceil(-12.1)=%f\n",ceil(-12.1));//-12
获取随机数:
srand((unsigned)time(NULL)); //设置随机种子,time(NULL):获取当前时间距1970-01-01 00:00:00的秒数
for(i=0;i<10;i++){
// printf("%d\t",rand());//rand():伪随机数;产生的随机数0~32767之间
//产生一个0~99之间的随机数
printf("%d\t",rand()%100);
}