函数:程序中独立的功能
1.1 C语言函数基本格式:
void 函数名()
{
函数体
}
例子:
void love 代码中要运行这个句子就:调用love这个函数
{ love()
printf("喜欢晴天\n") 就可以了
}
1.2 C语言带有形参的函数(书写代码时,相加数字不确定)
void 函数名(x,y)
{
int 函数名=x+y;
}
例子:
void love(x,y) 代码中要运行这个句子就:调用love这个函数
{ love()
love=x+y;
printf("%d\n"love); 就可以了
}
程序中:
#include<stdio.h>
void love(x,y)
{
love=x+y;
printf("%d\n"love);
}
int main() void 函数名(形参1,形参2)与函数名(实参1,实参2)一一对应
{
sum(10,20);
return 0; 运行结果:30
}
1.3 C语言带有返回值的函数(函数完整格式)
最终格式:
最终格式
返回值类型 函数名(形参1,形参2···)
{
函数体;
return 返回值;
}
例子
int sum(int num1,int num2) 注意是:int
{
int sum=num1+num2;
return sum; 有返回值,返回给调用处需要变量接受
}
然后,程序中:
变量=函数名(实参···);//
//或者直接写输出语句进行打印
printf=("占位符",函数名(实参···));
1.4 定义函数终极绝杀
写函数前问自己三个问题:
1.我定义函数是为了干什么事情? 函数体
2.我干完这件事情,需要什么才能完成? 形参
3.我干完了,调用处是否需要继续使用? 返回值类型
需要继续使用必须写 (比如说有一些后续还需要进行比较就需要返回值)
不需要返回 void
1.5 函数注意事项
1.函数与函数是平级关系,不能嵌套定义
2.自定义函数写在main函数的下面,需要在上方声明(1.2中可看)
3.return下面,不能编写代码,那算无效代码
4.函数的返回值类型为void,表示没有返回值,return可以省略不写;如果书写了return,后面不能跟具体数据,只表示结束函数
5.函数若需要返回值,则返回值类型自定义int,或者str等
1.6 C语言中常用函数(例如printf就是C语言已经定义好的函数)
1.math.h()函数
math.h头文件函数:
pow() 幂
sqrt() 平方根
ceil() 向上取整
floor() 向下取整
abs() 绝对值
time.h头文件函数:
time() 获取当前时间
如何运用:
#include<stdio.h>
#include<math.h>
#include<time.h>
int main()
{
doulbe res1=pow(2,3);
printf("%1f\n",res1); 运行结果:8.000000
doulbe res2=sqrt(8);
printf("%1f\n",res2); 运行结果:2.828427
doulbe res3=ceil(12.3);
printf("%1f\n",res3); 运行结果:13
doulbe res4=floor(12.7);
printf("%1f\n",res4); 运行结果:12
int res5=abs(-5);
printf("%d\n",res5); 运行结果:5
形参:表示获取当前时间是否需要在其他地方进行储存
一般来讲不需要,NULL(大写)
运行结果:从1970年1月1日0:0:0开始过了1709817925秒的那个时间点
long long res6=time(NULL);
printf("%lld\n",res6); //运行结果:1709817925
return 0;
}
1.7 随机数
生成随机数格式:
#include<stdio.h>
#include<stdlib.h>
int main()
{
srand(time(NULL)); //设置种子(初始值:因为每一个随机数都是
通过前一个数字结合一系列复杂计算得到的)
int num=rand(); //获取随机数
printf("%d\n",num); //输出打印
return 0;
}
例如:获取10个随机数
#include<stdio.h>
#include<stdlib.h>
int main()
{
srand(1); //设置种子
for(int i;i<=10;i++)
{
int num=rand(); //获取随机数
printf("%d\n",num); //输出打印
}
return 0;
}
运行结果:
11 种子不变运行多少次结果也不变
18467 有的很大有的很小,指定不了范围
6334
26500
19169
15724
11478
29358
26962
24464
1.7.2 随机数的两个弊端
1.种子不变,随机数是固定
种子不能固定不变,结果就不变,所以要要一个变化的量充当种子——时间
最终代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
srand(time(NULL)); //设置种子:拿着当前时间作为种子,
如果没有设置种子那么种子默认为1
int num=rand(); //获取随机数
printf("%d\n",num); //输出打印
return 0;
}
2.随机数的范围
绝招:用于生成任意范围的随机数(以1-100范围举例)
(1)把这个范围变成包头不包尾,包左不包右的1-101
(2)拿着尾巴-开头 101-1=100
(3)修改代码
取范围随机数代码通用公式:
在1-100范围内取随机数
#include<stdio.h>
#include<stdlib.h>
int main()
{
srand(time(NULL)); //设置种子
int num=rand()%100+1; //获取随机数:取范围内
printf("%d\n",num); //输出打印
return 0;
}
在7-23范围内取随机数
#算7-24
int num=rand()%17+7; //获取7-23范围内随机数 24-7=17
在8-49范围内取随机数
#算8-50
int num=rand()%42+8; //获取8-49范围内随机数 50-8=42
1万+

被折叠的 条评论
为什么被折叠?



