c#入门-输入,随机数,Math类

输入

输入语句的写法:
Console.ReadLine();
执行到这一句时会等待
用户输入东西以后按下回车

			Console.WriteLine("请随便输入一句话");
			string s = Console.ReadLine();
			Console.WriteLine("获得结果");
			Console.WriteLine("您刚刚输入的是");
			Console.WriteLine(s);

对,不要忘记用东西储存它,不然就没了

如果想获取用户输入的数字,也只能用这个方法获得字符串
然后使用Convert.ToInt32();方法

string s = Console.ReadLine();
int i=Convert.ToInt32(s);

这个括号里面要写你要转换的字符串

使用方法转换和用强制转换有什么区别呢?
如果字符串里面出现了字母该怎么办?
那就转换不了
强制转换只不过是和预期不符,但总能得出一个结果
而这种方式会逐个读取判断你的字符串中的字符
也就是说,可能出错。然后程序报错

随机数

Random r=new Random();
int i=r.Next();
Console.WriteLine(i);

因为随机数不是基本类型,他的类型就叫Random
r是变量名,你随便写
new Random()新建一个Random类型

next括号里面可以写一个数字,那么它将生成0-数字之间的随机数
从原理上,你填的那一个数字永远取不到,想要的话就把参数+1
如果不是从0开始随机,比如20-40,就写两个数字

Math类

Math即数学的意思,
它里面提供了很多的数学方法,比如开根号

int i=(int)Math.Sqrt(12);

比如有一个π的值(3.1415926那个)

double d=Math.Pi;

这个类呢你应该用不上,我提它主要是有一堆特性可以在后面教的时候当例子
而数学类这玩意理解起来又方便。具体有什么用自己玩玩吧。只要以后用的时候不懵逼就好了

备注

random那个例子中,r就是用来装new random()的
那么r可以.Next();那么new random()也可以直接.next();

Console.WriteLine(new Random().Next());
Console.WriteLine(new Random().Next());
Console.WriteLine(new Random().Next());
Console.WriteLine(new Random().Next());
Console.WriteLine(new Random().Next());

如此操作后你会发现得到的随机数是一样的。
因为计算机中的随机数都是伪随机,通过一个初始值和同一种算法得到的值
这个初始值我们称之为种子
每次使用next以后得到的值会成为新的种子(是不写参数的那个值,写参数是取余数出来的)
而没有调用next时,最开始的那个种子是你在new Random()括号里写的数字
只要这里面的数字一样,重复多少次都是一样的结果

而如果没有写种子,那么会默认调用你的系统时间作为种子。上面的例子中,就是因为计算太快,
在同一个时间单位中就执行完毕了。所以种子都是一样的。

在某些游戏录像中,伤害,操作什么的都可以实时运算,但随机数不行
但是可以在录像文件中保存种子

支线任务

Line是行的意思,在自动补全里面你应该见过他两没有LIne的版本
Console.Write()也是输出,但是这个括号里面必需填点东西
Console.WriteLine()输出后换行,可以什么都不填,单做换行使用

Console.Read()是获取用户按下的键盘值
某些游戏加载完后会显示按下任意键继续
就是以此判断你使用的是键鼠还是手柄

猜你喜欢

转载自blog.csdn.net/zms9110750/article/details/108655004