默认计划
200人加入学习
(4人评价)
【唐老狮】Unity基础课程之C#入门
价格 ¥ 109.00
承诺服务
课程还未发布,不允许加入和购买

如果在ReadKey(true) 不会把输入的内容显示在控制台上

 

清空

Console.Clear();

 

设置控制台大小

窗口大小,缓冲区大小

注意:1.先设置窗口大小,再设置缓冲区大小

2.缓冲区的大小不能小于窗口的大小

3.窗口的大小不能大于控制台的最大尺寸

 

窗口大小

Console.SetWindowSize(宽,高);

缓冲区大小

Console.SetBufferSize(宽,高);

 

设置光标的位置

控制台左上角为原点,右侧是x轴正方向,下方是y轴正方向

注意:1.边界问题,不可以在缓冲区外,否则报错     2.横纵距离单位不同,1y=2x(视觉上)

Console.SetCursorPosition(x,y);

 

设置颜色相关

文字颜色设置:

Console.ForegroundColor = ConsoleColor.颜色;

背景颜色设置:

Console.BackgroundColor = ConsoleColor.颜色;(如果要更改所有的背景颜色,则后面加一句Console.Clear();)

 

光标显隐

Console.CursorVisible = true/false;

 

关闭控制台

Environment.Exit(0);

 

 

 

 

 

[展开全文]

循环语句for

 for(初始表达式;条件表达式;增量表达式)

{

        循环代码逻辑;

}

第一次进入循环时,才会调用第一个空中的代码

每次进入循环之前都会判断第二个空中的条件,满足才会进入循环逻辑

执行完循环语句块中的逻辑后,最后执行第三个空中的代码

只要书写条件符合,每个空中可以填写多个条件

 

支持嵌套

嵌套的初始表达式的变量名不可以一样

可以嵌套组合使用,for,while,do while,if等

 

特殊写法

for循环这三个空位可以都空着,可以根据需求去填写

for循环可以写死循环

for( ;; )   没有条件,会一直执行

{

}

 

对比while循环

for循环一般用来准确得到一个范围中的所有数,比while更加简单快速些

[展开全文]

循环语句do while

do while循环是先斩后奏,先至少执行一次循环语句块中的逻辑,在判断是否继续

do

{

        循环语句块;

}while(bool类型的值);

 

嵌套使用

 

continue会跳到while,而不是do

[展开全文]

第四题

int num = int.Parse(Console.ReadLine());

int index = 2;

while(index < num)

{

       if(num % index == 0)

        {

                 break;

        }

        ++index;

}

if(index != num)

{

         Console.WriteLine("不是质数");

}

else

{

         Console.WriteLine("是质数");

}

 

 

         

[展开全文]

循环语句while

while(bool类型的值)

{

当满足条件时,就会执行while语句块中的内容

当代码逻辑执行完,会回到while循环开头

再次进行条件判断

}

 

死循环:不停执行循环中的逻辑“直到死为止”,可能造成程序崩溃,卡死

 

嵌套使用

不仅可以嵌套if,switch,还可以嵌套while

 

流程控制关键字

break:跳出循环

continue:回到循环开始继续执行

 

break和continue主要和循环配合使用,和if语句没关

while中如果出现switch,break是和switch配合使用

[展开全文]

switch条件分支语句

让顺序执行的代码产生分支

swtich(变量)

 {

        case 常量:

              满足条件执行的代码逻辑;

              break;

         default:

               如果上面有case的条件都不满足,就会执行default中的代码

                break;

}

常量只能写一个值,不能写一个范围,条件运算符,逻辑运算符

case和break之间可以写n句语句,并且可以嵌套使用

一般配合枚举使用

 

default可以省略

 

可自定义常量

const 变量

 

贯穿

case1:

case2:

casen:

         满足条件执行的代码;

          break;

只要满足里面一个条件就会执行

 

[展开全文]

练习题七

Console.ReadKey().KeyChar;    得到输入的字符

通过Convert把char转成整形,转过去的是对应的ASKII码的数值

 

练习题十

语句块会影响变量的生命周期,语句块中的变量,出了语句块就被释放了

[展开全文]

条件分支语句if

if(bool类型值){满足条件要执行的代码}

可以嵌套

 

if...else语句

产生两条分歧,满足条件做什么,不满足条件做什么

可以嵌套

 

if...else if...else语句

产生n条分支,多条道路选择,最先满足其中一个条件,就做什么

if(bool类型值){ } else if(bool类型值){ } else { }

中间可以有n个else if语句代码块

满足了一个条件,后面的都不会执行了

 

 

[展开全文]

三目运算符

基本语法:bool类型?bool类型为真返回内容:bool类型为假返回内容;

返回值的类型必须一致,并且必须使用

[展开全文]

位运算符

 

位与&

规则 连接两个数值进行位计算,将数值转为2进制

对位运算,有0则0

 

位或|

对位运算,有1则1

 

异或^

对位运算,相同为0,不同为1

 

位取反~

写在数值前面,将数值转为2进制

对位运算,0变1,1变0

 

左移<<     右移 >>

让一个数的2进制进行左移和右移

左移几位,右侧加几个0

右移几位,右侧去掉几个数

 

[展开全文]

逻辑运算符

对bool类型进行逻辑运算

 

逻辑与

&&

规则是对两个bool进行逻辑运算,有假则假,同真为真

逻辑运算符的优先级低于条件运算符

 

逻辑或

| |

有真为真,同假为假

 

逻辑非

规则是对一个bool类型取反,真变假,假变真

逻辑非的优先级较高

 

混合使用优先级问题

!优先级最高,&&优先级高于| |

 

逻辑运算符短路规则

只要逻辑与或者逻辑或左边满足了条件,右边的内容已经不重要,抛弃不去计算

 

[展开全文]

条件运算符的基本应用

用于比较两个变量或常量

>  <  ==  !=  >=  <=  

比较的结果,返回的是一个bool类型的值

 

各种应用写法

变量和变量比较

变量和数值(常量)比较

数值和数值的比较

计算结果比较(条件运算符的优先级低于算术运算符)

 

不能进行范围比较

要判断一个变量是否在两个数之间,要结合逻辑运算符

 

不同类型之间的比较

不同数值类型之间,可以随意进行条件运算符比较,例如int,float,double,short,byte,uint之间

特殊类型只能同类进行==  !=比较,但char因为可以隐式转换为int,所以可以和数值类型比较,且和字符类型进行大小比较

[展开全文]

字符串拼接方式1

通过+号和复合运算符+=来进行字符串拼接

 

字符串拼接方式2

固定语法:string.Format("待拼接的内容",内容1,内容2,.......);

想要被拼接的内容用占位符替代{数字},数字从0开始,依次往后

 

控制台打印拼接

和方式2相似

 

后面的内容比占位符多不会报错,如果少则报错

[展开全文]

练习题五

a=10;

b=20;

int number3 = a++ + ++b + a++;   

从左到右,先用后加,第二个a变成了11

 

练习题六

中间商 不赚差价

 int a2 = 99;

int b2 = 87;

int temp = a2;

a2 = b2;

b2 = temp;

算术运算符 加减法

a2 = a2 + b2;

b2 = a2 - b2;

a2 = a2 - b2;

[展开全文]

算术运算符

+ 加  

用自己计算,先算右侧结果,再赋值给左侧变量

连续运算,先算右侧结果,再赋值给左侧变量

初始化时就运算,先算右侧结果,再赋值给左侧变量

- 减

* 乘

/ 除

默认的整数是int,如果用来做除法运算,要注意会丢失小数点后的小数,如果想用浮点数来存储,一定是在运算时要有浮点数的特征

% 取余

 

 

赋值符号

=  先看右侧,再看左侧,把右侧的值赋值给左侧的变量

 

算术运算符的优先级

乘除取余优先级高于加减

括号可以改变优先级,优先计算括号内内容

多组括号,先算最里层括号,依次往外算

 

复合运算符

固定写法  运算符=

+=  -=  *=  /=  %=

复合运算符是用于自己=自己进行运算

 

自增减

 

 

 

[展开全文]

异常捕获

通过对异常捕获的学习,可以避免当代码报错时,造成程序卡死的情况

基本语法:try{ }  catch{ }   (可选部分)finally{ }

将希望进行异常捕获的代码块放到try中,如果try中的代码报错了,不会让程序卡死,会执行catch中的代码,来捕获异常

finally中是最后执行的代码,不管有没有出错,都会执行其中的代码

catch(Exception e)具体报错跟踪,通过e得到具体的错误信息

 

 

[展开全文]

显式转换

手动处理,强制转换

 

括号强转

将高精度类型强制转换为低精度

语法:变量类型 变量名 = (变量类型)变量;

注意:精度问题,范围问题

 

Parse法

把字符串类型转换为对应的类型

语法:变量类型.Parse(“字符串”)

注意;字符串必须能够转换成对应类型,否则报错

 

Convert法

更准确的将各个类型之间进行相互转换,精度比括号强转好一点,会四舍五入

语法:Convert.To目标类型(变量或常量)

注意:填写的变量或常量必须正确,否则出错

 

其他类型转string

拼接打印

语法:变量.toString();

 

[展开全文]

隐式转换

不同类型之间自动转换,规则是大范围装小范围

 

相同大类型之间的转换

不能用小范围的类型装载大范围的类型

可以用大范围装小范围的类型

decimal这个类型没有办法用隐式转换的形式去存储double和float

float可以隐式转换成double

特殊类型之间不存在隐式转换

 

不同大类型之间的转换

有符号的变量是不能够隐式转换成无符号的

有符号变量是可以装无符号变量的,前提是范围一定要是涵盖的,存在隐式转换

浮点数是可以装在任何类型的整数的

decimal不能隐式存储float和double,但是它可以隐式的存储整型

整数是不能隐式存储浮点数,因为整数不能存小数

bool没有办法和其他类型相互隐式转换

char没有办法隐式存储其他类型的变量,但可以隐式转换成整型和浮点型,但对应的数字其实是一个ASCII码

[展开全文]

转义字符的使用

它是字符串的一部分,用来表示一些特殊含义的字符,比如单引号,空行等

固定写法:\字符

常用转义字符: 单引号 \'      双引号 \"     换行 \n  

不常用转义字符:制表符 \t      光标退格 \b      空字符 \0       警报音 \a

 

取消转义字符

在字符串双引号前加上@

[展开全文]

常量的申明

关键字 const

固定写法:const 变量类型 变量名 = 初始值;

 

常量的特点

1.必须初始化

2.不能被修改

 

作用:申明一些常用不变的变量

[展开全文]

授课教师

游戏开发前端主程

课程特色

视频(68)
下载资料(56)