¿Por qué aparece un error al agregar un número entero a un punto flotante?

Empecé a aprender Rust. Probé este programa:

fn main() {
     let a = 5;
     let b = 5.5;
     let k = a + b;
     println!("{}", k);
}

y muestra este error:

error[E0277]: cannot add a float to an integer
 --> src/main.rs:4:16
  |
4 |      let k = a + b;
  |                ^ no implementation for `{integer} + {float}`
  |
  = help: the trait `std::ops::Add<{float}>` is not implemented for `{integer}`

¿Está mal el código?

Respuestas a la pregunta(1)

Su respuesta a la pregunta