作业:编写程序实现布雷操作在10X10的地图中随机布置10个地雷最后把地图打印在屏幕上
C语言中可以采用分组方式管理程序中的语句,我们把每个分组叫做一个函数
多函数程序执行模式如下
1.整个程序的执行时间被划分成几段,不同段被分配给不同的函数使用
2.所有时间段之间不能重叠而且必须连续
3.如果函数A在工作过程中把一段时间分配给函数B则函数B完成工作后必须再把时间还给
函数A,如果函数A在工作过程中把时间分配给函数B则它们之间存在函数调用关系
在这个关系中函数A叫做调用函数,函数B叫做被调用函数
函数调用关系有时间范围,只要被调用函数已经开始但还没有结束则调用关系存在
函数调用语句可以在程序执行过程中产生函数调用关系
一般情况下一个函数不能使用其他函数的存储区
如果函数被分配了多段时间则不同时间段内使用不同存储区
不同函数内部的变量可以重名,函数调用过程中通常伴随着函数之间的数据传递
函数传递存在两个完全相反的方向,既可以从调用函数向被调用函数传递,也可以从被调用函数向调用函数传递
无论哪个方向的数据传递都需要记录在被调用函数提供的存储区里
从被调用函数只能向调用函数传递一个数据这个数据叫做被调用函数的返回值
函数的返回值必须记录在被调用函数提供的一个存储区里,这个存储区的类型名称应该写在函数名称前
如果函数不提供这个存储区则必须在函数名称前写void
如果函数名称前什么都没写则C89规范中规定表示函数提供了一个整数类型的存储区,C99规范中不允许这样。
被调用函数里使用return关键字向这个存储区里放返回值数据
调用函数可以把函数调用语句当作数字使用,这就可以得到这个存储区里的返回值
这个存储区不可以用来长期保留数字,得到返回值以后或者立刻使用或者存储到其他存储区里
如果被调用函数没有使用return关键字向这个存储区里放数字则它里面的数字是随机的
被调用函数不可以采用数组记录返回值
练习:
1.编写函数从键盘得到两个整数,计算他们的求和结果并把这个结果传递给调用函数