pull/116/head
unknown 3 years ago
parent 870c198982
commit e00febf876

@ -10,6 +10,6 @@ fn main() {
fn call_me(num:) { fn call_me(num:) {
for i in 0..num { for i in 0..num {
println!("Ring! Call number {}", i + 1); println!("Ring! Call number {}", i + 1);// 译:"叮!呼叫号码 {}"
} }
} }

@ -1,8 +1,9 @@
// functions3.rs // functions3.rs
// Make me compile! Execute `rustlings hint functions3` for hints :) // 让我能够编译!执行 `rustex hint functions3` 获取提示 :)
// I AM NOT DONE // I AM NOT DONE
/// 翻译: [mg-chao](https://github.com/mg-chao)
fn main() { fn main() {
call_me(); call_me();
} }

@ -1,14 +1,15 @@
// functions4.rs // functions4.rs
// Make me compile! Execute `rustlings hint functions4` for hints :) // 让我能够编译!执行 `rustex hint functions4` 获取提示 :)
// This store is having a sale where if the price is an even number, you get // 商店正在进行促销,如果价格是偶数,可以优惠 10 Rustbucks如果是奇数则优惠 3 Rustbucks。
// 10 Rustbucks off, but if it's an odd number, it's 3 Rustbucks off. // Rustbucks 可能想表达 Rust元 的意思,好比 美元 。
// I AM NOT DONE // I AM NOT DONE
/// 翻译: [mg-chao](https://github.com/mg-chao)
fn main() { fn main() {
let original_price = 51; let original_price = 51;
println!("Your sale price is {}", sale_price(original_price)); println!("Your sale price is {}", sale_price(original_price));// 译:"你需支付 {}"
} }
fn sale_price(price: i32) -> { fn sale_price(price: i32) -> {

@ -1,11 +1,12 @@
// functions5.rs // functions5.rs
// Make me compile! Execute `rustlings hint functions5` for hints :) // 让我能够编译!执行 `rustex hint functions5` 获取提示 :)
// I AM NOT DONE // I AM NOT DONE
/// 翻译: [mg-chao](https://github.com/mg-chao)
fn main() { fn main() {
let answer = square(3); let answer = square(3);
println!("The answer is {}", answer); println!("The answer is {}", answer);// 译:"答案是 {}"
} }
fn square(num: i32) -> i32 { fn square(num: i32) -> i32 {

@ -87,37 +87,35 @@ name = "functions2"
path = "exercises/functions/functions2.rs" path = "exercises/functions/functions2.rs"
mode = "compile" mode = "compile"
hint = """ hint = """
Rust `call_me` `num` """ Rust signature `call_me` `num` """
[[exercises]] [[exercises]]
name = "functions3" name = "functions3"
path = "exercises/functions/functions3.rs" path = "exercises/functions/functions3.rs"
mode = "compile" mode = "compile"
hint = """ hint = """
This time, the function *declaration* is okay, but there's something wrong , *declaration* """
with the place where we're calling the function."""
[[exercises]] [[exercises]]
name = "functions4" name = "functions4"
path = "exercises/functions/functions4.rs" path = "exercises/functions/functions4.rs"
mode = "compile" mode = "compile"
hint = """ hint = """
The error message points to line 14 and says it expects a type after the 15 `->`
`->`. This is where the function's return type should be-- take a look at `is_even` """
the `is_even` function for an example!"""
[[exercises]] [[exercises]]
name = "functions5" name = "functions5"
path = "exercises/functions/functions5.rs" path = "exercises/functions/functions5.rs"
mode = "compile" mode = "compile"
hint = """ hint = """
This is a really common error that can be fixed by removing one character.
It happens because Rust distinguishes between expressions and statements: expressions return Rust operand,
a value based on its operand, and statements simply return a () type which behaves just like `void` in C/C++ language. `()` C/C++ `void`
We want to return a value of `i32` type from the `square` function, but it is returning a `()` type... `square` `i32` `()` ...
They are not the same. There are two solutions:
1. Add a `return` ahead of `num * num;` 1. `num * num;` `return`
2. remove `;`, make it to be `num * num`""" 2. `;` `num * num`"""
# IF # IF

Loading…
Cancel
Save