4.1 自定义函数和结构体

自定义函数和结构体

这一章我们会学习有关函数的内容,和编写算法程序的一般方法和技巧。


如何定义一个函数

我们这里将函数分为两类,一种是需要返回值的函数,一种是不需要返回值的函数,并对这两种函数分别进行介绍。

1.有返回值的函数

格式:返回值类型 函数名(参数列表){·······,return返回值}
参数列表的每一个参数前需要添加这个参数的类型,参数列表可以为空,这个时候我们称其为无参函数

我们这里编写一个计算欧几里得距离的函数作为例子:

double dist(double x1,double y1,double x2,double y2){
   
	return sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
	//cmath中有一个函数为hypot(x,y)=sqrt(x*x+y+y)
	//于是返回值还可以写hypot(x1-x2,y1-y2)
}

当然也可以用以下这种方式进行定义:
#define dist(x1,x2,y1,y2) hypot(x1-x2,y1-y2)
(不记得的可以参考1.2)

2.无返回值的函数

格式:void 函数名(参数列表){·······}

函数体的内容基本与第一种一致,这里就不举例子了。


如何定义一个结构体

首先提出一个问题,什么叫做结构体?
我个人的理解就是你自己定义的一种变量,这个变量可以由几种不同类型的变量(成员)组成,然后可以通过一个变量名,可以找到这个变量名包含的多个数据(成员)。
定义格式:

struct 结构体的名字{
   
	成员1的类型 成员1的变量名;
	成员2的类型 成员2的变量名;
	····
	成员n的类型 成员n的变量名;
};//注意这里有一个分号

举个例子,我们这里定义一个日期的结构体:

struct Date{
   
	int year;
	int month
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值