美文网首页
Rust语言编程实例100题-067

Rust语言编程实例100题-067

作者: L我是小学生 | 来源:发表于2021-09-02 13:27 被阅读0次

Rust语言编程实例100题-067

题目:给定一个数组,将数组内的最大的元素与第一个元素交换,数组内的最小的元素与最后一个元素交换,最后输出这个数组。

数组如下:

[12, 123, 4, 65, 21]

程序分析:声明两个变量分别是最小元素位置和最大元素位置。通过循环比较,获取最大元素和最小元素的位置。最后分别交换他们的位置。

知识点:循环、数组

参考程序代码:

fn main() {
    let mut array = [12, 123, 4, 65, 21];
    let mut max_index = 0;
    let mut min_index = 0;

    for i in 0..array.len() {
        if array[max_index] < array[i] {
            max_index = i;
        }

        if array[min_index] > array[i] {
            min_index = i;
        }
    }

    // 交换最大值
    let mut temp = array[0];
    array[0] = array[max_index];
    array[max_index] = temp;

    // 交换最小值
    temp = array[array.len() - 1];
    array[array.len() - 1] = array[min_index];
    array[min_index] = temp;

    dbg!(array);
}

程序执行结果:

array = [
    123,
    12,
    21,
    65,
    4,
]

相关文章

网友评论

      本文标题:Rust语言编程实例100题-067

      本文链接:https://www.haomeiwen.com/subject/hioqwltx.html