面试题答案
一键面试// 定义Point结构体
struct Point {
x: f64,
y: f64,
}
// 定义函数计算两个Point实例对应字段的平均值
fn average_points(p1: Point, p2: Point) -> Point {
Point {
x: (p1.x + p2.x) / 2.0,
y: (p1.y + p2.y) / 2.0,
}
}
fn main() {
let p1 = Point { x: 1.0, y: 2.0 };
let p2 = Point { x: 3.0, y: 4.0 };
let result = average_points(p1, p2);
println!("Average point: x = {}, y = {}", result.x, result.y);
}
在上述代码中:
- 首先定义了
Point
结构体,包含x
和y
两个f64
类型的字段。 - 接着定义了
average_points
函数,接收两个Point
结构体实例作为参数,并返回一个新的Point
实例,新实例的x
和y
分别是输入两个Point
对应字段的平均值。 - 在
main
函数中创建了两个Point
实例p1
和p2
,调用average_points
函数并输出结果。