我们在用程序解决问题时,会遇到可能某一块程序码的功能需要重复使用,如果每次要用到就要复制、贴上,其实是一件有点麻烦的事情,且会造成程序码冗长、不容易知道在写甚麽。这时候我们就可以使用函式(Function)把程序码模组化,使其看起来更为精简易读。
那我们要如何把程序码写成函式呢?
我们先来看一段简单的程序码:
#include<stdio.h>
void operation(float, float);
int main(){
float a, b;
printf("Please input a and b >>");
scanf("%f %f", &a, &b);
operation(a, b);
return 0;
}
void operation(float x, float y){
printf("a+b=%.3f\n\n", x+y);
printf("a-b=%.3f\n\n", x-y);
printf("a*b=%.3f\n\n", x*y);
printf("a/b=%.3f\n\n", x/y);
}
以上的程序,是可以输入两个数字,输出两个数字加、减、乘、除後的四个结果。
程序码解说:
void operation(float, float);
这行属於宣告函式,就跟我们要宣告变数一样,函式也需要事先宣告。其中,void
属於返回值的型别,而 void
代表在这边没有要返回的数值。operation
是我们这个函式的名称,通常会依函式功能命名,而 float
是传入参数的型态。void operation(float x, float y){...}
这是函式主体,x
和 y
就是传入参数,大括号 {}
括住的地方是我们要执行的程序。operation(a, b);
是我们在主程序中正式的调用函式可能有些人会搞不懂 a
、b
、x
、y
这些参数之间的关系是甚麽(我在学的时候常常搞混),其实我都是这麽想的,以这段程序码来说,我们在 main()
里面的 a
和 b
,丢到函式中去做运算时,函式会再去重新定义参数名称(对函式来说 a
和 b
是从外面传入的资料),而这个参数名称只会在函式里面做使用。
明天我们再来看函式的其他范例!
>>: 【设计+切版30天实作】|Day29 - Footer区块 - 切出最後一步,看似不起眼但必须存在的footer
What is CSS? English: CSS = Cascading Stylesheets ...
新增心情随笔的动作 我们开始处理心情随笔新增的动作, 在 App\Http\Controllers\...
在 Vue3 中我们可以使用 Options API 或是 Composition API 选择一种...
本文同步刊登於个人技术部落格,有兴趣关注更多 Kubernetes、DevOps 相关资源的读者,请...
1.练习打字 在Typing Club练习打字 2.练习上传档案 3.下载及使用pyperclip模...