【Day 29】函式(下)

昨天我们讨论的函式,是没有返回数值的函式,只是单纯传入参数做运算後,直接输出。但我们更多时候会需要把参数传入函式,会返回一个数值,再利用那个数值继续做後续的计算。所以,今天会来讲有返回数值的函式!

我们一样先来看一段程序码:

#include<stdio.h>
float square(float);
int main(){
	float n, answer;
	printf("Please input a number>>");
	scanf("%f", &n);
	answer = square(n);
	printf("\n");
	printf("The answer is %.3f", answer);
	return 0;
} 
float square(float a){
	float A;
	A = a*a;
	return A;
}

输出结果:

程序说明:

  • float square(float); 这个一样是函式宣告,和昨天的程序码不同的是,昨天的程序码没有返回数值,所以返回数值型态为 void,今天的程序码是会返回数值的,返回数值型态为 float(第一个 float),而小括号 () 里面的依然是传入参数的型态,在这里也是 float
  • 我们先看 square() 函式的部分:里面有一行程序码是 return A,这一行就是我们返回在函式内计算後的数值
  • 最後,来看一下主程序中使用函式的部分:answer = square(n);,这一行的意思就是,把经过函式计算後返回的值存在变数 answer 中,方便输出。

我们也可以把程序码修改一下:

#include<stdio.h>
float square(float);
int main(){
	float n;
	printf("Please input a number>>");
	scanf("%f", &n);
	printf("The answer is %.3f", square(n));
	return 0;
} 
float square(float a){
	return a*a;
}

上面程序码中,我们更改了原本函式多宣告一个变数 的地方,让函式直接返回输入函数的平方。也更改了主程序中多宣告变数 answer 的地方,使程序码更精简!

明天,就让我们来讲讲递回!


<<:  [DAY30]完赛心得

>>:  Day29-保护鲸鱼人人有责(四)

Dashboard制作教学:做一张互动式仪表板,只需要5步!超简单~

Hello大家好,这篇文章是一个简单的互动式仪表板的教学。因为想做一个对新手友好的教学,所以用到的元...

Day27 Javascript元件库 Jquery介绍

今天要接触我们的Javascript,让网页更多动画,互动性,不是一个只有图片跟文字的死板网页,而J...

鬼故事 - 我是不是来过这里

鬼故事 - 我是不是来过这里 Credit: 蜘蛛人 灵感来源:UCCU Hacker 故事开始 小...

环境配置(node/golang)(Day3)

接续上篇提到的内容,这篇提到的主要会是golang与react会需要的环境配置 小提醒 在下面会有提...

[Day23] 如何让 Scrum Master 的经历为履历加分

这两年看过不少应徵工程师职缺的履历,会描述当过 Scrum Master 经历。在面试中,我如果针对...