碎碎念

好久没有更新blog了,自从把blog迁移到CloudFlare上之后,我都快忘掉网站的源码放在那里了。
这期间Windows 11都出来了,说好的Windows 10是最后一个大版本呢,我还手贱买了个正版专业版的密钥(巨硬,退钱)。
我也在移动硬盘上装了个Linux Mint。内置的软件管理器用起来很方便,JetBrains全家桶一键安装,当然Visual Studio Code也有。
闲来无事也断断续续地看了一些Rust的入门书和视频,纯小白,只是因为喜欢Mozilla,而且Rust那些指针安全、内存安全、代码的特性就想试着学一下(估计绝对永不到)。
在Windows上安装的话感觉有点麻烦,还要装C++的Bulid Tool和Windows 10的SDK,不如找个Linux发行版一键了。
同时我发现适合我的Rust练习是真的少,毕竟Rust的教程上一言不合就来一句“学习过C和C++语言的同学不难看出…………”,所以我机智地拿C语言的练习题做了一些。
废话扯太多了,记录一下我写的一些代码吧

一些代码

1、打印乘法口诀表

代码
1
2
3
4
5
6
7
8
fn main() {
for j in 1..10 {
for i in 1..j+1 {
print!("{}x{}={} ",i,j,i*j);
}
println!()
}
}

第2行的1..10是数组(array)。相当于区间[1,10)中的整数,也可以写作[1, 2, 3, 4, 5, 6, 7, 8, 9]

结果
1
2
3
4
5
6
7
8
9
1x1=1  
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81

2、有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
fn main() {
let mut num = 0;
for i in 1..5 {
for j in 1..5 {
for k in 1..5 {
if i != j && j != k && i != k {
print!("{}{}{}, ", i, j, k);
num += 1;
}
}
}
}
println!("共有{}个数", num);
}
结果
1
123, 124, 132, 134, 142, 143, 213, 214, 231, 234, 241, 243, 312, 314, 321, 324, 341, 342, 412, 413, 421, 423, 431, 432, 共有24个数