C#基础课堂笔记

第三章:运算符和表达式

1.认识运算符:运算符又叫操作符,是一个运用于运算的符号,它作用于一个或多个操作数
 运算符的分类:
      (1)按操作数量
  一元(目)运算符    作用于一个操作数
  二元(目)运算符    作用于二个操作数
  三元(目)运算符     作用于三个操作数
       (2 ) 按运算符的功能
  算术运算符     用于数学运算
  逻辑运算符     用于判断真假
  位运算符      用于二进制运算
  其他······

2.常见运算符:小括号
 功能作用:(1)类型转换   (2) 改变运算顺序  (3) 函数调用       书写方式:英文 小括号();

3.常见运算符:算术运算符
 加加(++)运算符
  书写方式:   变量名++      1.计算返回结果,与变量相同 (计算整个语句的返回结果)      2.将变量的值自增 1
                     ++变量名      1.计算整个语句的返回结果,为变量值加 1        2.将变量自身值自增 1
 减减(--)运算符
   书写方式:变量名--        1.计算返回结果,与变量相同       2.将变量值自减 1
                     --变量名        1.计算变量结果,为变量值减 1    2.将变量的值自减 1
     运算顺序:(++)   ( --)  ( * )  (/)  (%)   (+)  (-) 
4.常见运算符:赋值运算符   
     赋值运算符:=   +=  -=  *=  /=  %=        返回结果与变量值相同

5.常见运算符:逻辑运算符

定义:用于判断条件是否成立的运算符    常见逻辑运算符: ==  /=  >    >=  <   <=  &&  ||  ! 
 &&(并且):两个bool 类型进行运算。运算的结果:真真为真,其他为假
 || (或者):两个bool类型进行运算。 运算的结果:假假为假  其他为真
 !(非):一元运算符,对一个bool类型的数据求反,数据为真,运算结果为假, 数据为假, 运算结果为真

6.常见运算符:三目运算符
   定义:三目运算符又叫做三元运算符,它需要三个操作数参与运算         书写方式: 操作数1? 操作数2 : 操作数3     (操作数1 必须为bool 类型,操作数2 操作数3 可以为任意类型,但必须两个类型相同)

返回结果:如果操作数1 判定结果为真,则将操作数2 作为返回结果  如果操作数1 判定结果为假, 则将操作数3 作为返回结果

7.位运算符
 定义:用于对数字二进制的运算
 & (与): 对两个数字的二进制格式每一位比较   如果都为1   取 1, 否则 取0
 |  (或):对每一位进行比较,如果都为0,取0 ,否则 取1
 ^ (亦或):对每一位比较,相同取0,不同取1
 << (左移):对一个二进制数字向左移指定的位数
 >>(左移):对一个二进制数字向右移指定的位数
 ~ (取补):一元运算符,将数字二进制位上的 0变成1   1变成0
 
8.表达式
 定义:一条有意义的语句,并且该语句至少包含一个操作数和连个操作符           每一个表达式,都有一个返回类型       每个表达式都可以与其他表达式进行运算,只要类型符合要求

9.运算符优先级
 优先级越高的运算符,会优先得到运算,优先级相同的运算符,从左至右一次执行
 使用多个运算符的常见场景
  赋值运算:永远最后执行
   赋值运算符.PNG
  数学运算:按照数学中的运算顺序进行,先运行括号,有嵌套则从里到外依次运行后,再运行乘除求余,最后运行加减
  逻辑运算:在逻辑运算时,将 && 和 || 符号两端的表达式看作一个整体
   a>b && c>d 表示:   a > b 并且 c > b
   a<b || c<d 表示: a<b 或者 c<d
  其他:在不清楚运算顺序的时候,使用小括号或分开书写来控制运算顺序,小括号拥有最高的优先级
 类型转换和函数调用:这里的类型转换是指显示转换(目标类型)
 (目标类型)x.y()   先进行函数调用将函数调用的结果再进行类型转换
  
   
第4章 流程控制

 1. 变量作用域
  定义:可以简单的理解为,某个变量在定义时所在的括号;在大括号内,该变量有效,大括号外无效
  在某个位置定义变量的时候,变量不得与作用域覆盖的变量名相同
  在C#中:在省略大括号时,大括号不能是变量声明语句
  
  2.switch 选择
  switch语句都可以转换为 if 结构;if 结构不一定能转换为switch格式
  代码格式:
  "break" 必须写   代码1;代码2;必须是具体的值
  代码1和代码2 的值必须要和(变量和表达式)能比较
  case语句可以有任意多个
  default 语句可以写也可以不写,0 或 1 个

 3.while 循环
  循环体(任何功能,任何数据的代码)循环体若只有一句,可省略大括号
  整个while 语句表达的意思是:如果循环条件为真,则执行循环体,执行完循环体之后,再判断条件是否为真,如果为真,再执行循环体,然后再判断条件是否为真,就这样一直进行下去,直到循环条件的判定结果为假,才会结束循环

 4. do while循环
  do while 循环:可以省略掉一些重复的代码,使整个代码更加整洁
  代码格式:
  语句意思:先执行一次循环体,然后判断循环条件是否满足,如果满足 则再次执行循环体,然后再判断条件是否满足,直到条件不满足,才结束循环

 5.for 循环
  代码格式
  语句运行意思:运行表达式1 判断循环条件是否为真,如果为真,则执行循环体,执行完后,再运行表达式2,接着再判断循环条件........直到循环条件为假,才会结束循环
  表达式1:可以是任何代码,一定会执行,且只执行一次
  表达式2:可以是任何代码,在循环体执行后执行
  region 指令:region 和 endregion 必须成对书写,也就是说,你不能只写一个 region 或只写一个 endregion,而且它们都是以一个#号开头。
  控制台清屏:有的时候,当程序运行到某个时候,我们需要将控制台当前的内容全部清空,这个时候,就需要用到控制台清屏的命令。

6.break和continue
  break
    (用于switch)  break 可以在switch 选择和循环中使用
   (用于循环)  表示立即结束循环
  continue  只能用于循环  表示立即结束当次循环,进入下一次循环
  7.查找问题
  根据需求,在一组数据中,找到需要的数据
  简单查找:在样本中,一次寻找目标数据
  特点:一定会使用到循环,循环一定是从样本的第一个数据开始,在到达样本最后一个数据后结束,循环体中一定包含一个判断,该判断用于判断当前数据是否是目标数据

时间: 2025-01-05 04:28:58

C#基础课堂笔记的相关文章

C# 基础课堂笔记 中

第五章:数组与集合 1.数组  数组:能存放任意多个同类型的数据  数组由多个数据组成(类型必须相同),数据又叫数组项,每个数组都有一个索引(下标),数组的索引(下标)是一个int类型的数字,索引(下标)从0开始,依次为数组中每一个数组型编号   声明:数据类型 [ ] 变量名:   赋值:变量名=new 数据类型 [长度]:   合并书写:数据类型 [ ] 变量名=new 数据类型 [ ] 变量名:   一个数组创建后,它每一个数据项的值,为数组项的默认值   数字类型默认值为: 0   bo

python 基础课堂笔记

#Author:zyl_username='zyl'_password= 'zyl123'username= input("username:") password = input("password:")print(username,password)if  _username== username  and  _password == password: print("welcome  user  {name} login...".forma

CSS基础入门 第4天课堂笔记

CSS基础入门 第4天课堂笔记(本课程共6天) 前端与移动开发学院 http://web.itcast.cn 目录 目录 2 一.复习 3 二.浮动性质的复习 4 三.浮动的清除 5 3.1 清除浮动方法1:给浮动的元素的祖先元素加高度. 5 3.2 清除浮动方法2:clear:both; 6 3.3 清除浮动方法3:隔墙法 7 3.4 清除浮动方法4:overflow:hidden; 8 3.5 清除浮动总结与案例 9 3.6 浏览器兼容问题 11 四.margin 13 4.1 margin

九章算法系列(#2 Binary Search)-课堂笔记

前言 先说一些题外的东西吧.受到春跃大神的影响和启发,推荐了这个算法公开课给我,晚上睡觉前点开一看发现课还有两天要开始,本着要好好系统地学习一下算法,于是就爬起来拉上两个小伙伴组团报名了.今天听了第一节课,说真的很实用,特别是对于我这种算法不扎实,并且又想找工作,提高自己的情况. 那就不多说废话了,以后每周都写个总结吧,就趁着这一个月好好把算法提高一下.具体就从:课堂笔记.leetcode和lintcode相关习题.hdu和poj相关习题三个方面来写吧.希望自己能够坚持下来,给大家分享一些好的东

JAVA的面向对象编程--------课堂笔记

JAVA的面向对象编程--------课堂笔记 面向对象主要针对面向过程. 面向过程的基本单元是函数.   什么是对象:EVERYTHING IS OBJECT(万物皆对象)   所有的事物都有两个方面: 有什么(属性):用来描述对象. 能够做什么(方法):告诉外界对象有那些功能. 后者以前者为基础. 大的对象的属性也可以是一个对象.   为什么要使用面向对象: 首先,面向对象符合人类看待事物的一般规律. 对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节. 方法的定义非常重要.方法有参

九章算法系列(#3 Dynamic Programming)-课堂笔记

前言 时隔这么久才发了这篇早在三周前就应该发出来的课堂笔记,由于懒癌犯了,加上各种原因,实在是应该反思.好多课堂上老师说的重要的东西可能细节上有一些急记不住了,但是幸好做了一些笔记,还能够让自己回想起来.动态规划算是我的一道大坎了,本科的时候就基本没有学过,研一的时候老师上课也是吃力的跟上了老师的步伐,其实那个时候老师总结的还是挺好的:把动态规划的题目都分成了一维动规.二维遍历.二维不遍历等一系列的问题.这次听了老师的课程,觉得还是需要更加集中的去把各种题进行一个分类吧,然后有针对的去准备,虽然

九章算法系列(#5 Linked List)-课堂笔记

前言 又是很长时间才回来发一篇博客,前一个月确实因为杂七杂八的事情影响了很多,现在还是到了大火燃眉毛的时候了,也应该开始继续整理一下算法的思路了.Linked List大家应该是特别熟悉不过的了,因为这个算是数据结构了里面基本上最开始讲的结构吧.这块内容也没有太多需要琢磨的技巧,可以考量的东西也不多,所以考的就是一些小的trick来完成,面试中链表考得特别多,算是面试官对面试者的基础的考查,所以我建议大家在Linked List这一章,一定要实现Bug Free.这个也是我练的比较多的,有些想法

2017年5月29号课堂笔记

2017年5月29号 阴天 空气质量:良 内容:JavaScript基础:输入输出及确认,统计字符出现的次数,系统函数,自定义函数, 自定义函数和事件的连用,四则运算小练习,方法的作用域 JavaScriptBOM对象(下次课堂笔记再补上,一起记录)history,location,open,document 一.输入输出及确认 仿写老师代码: <!DOCTYPE html><html><head lang="en"> <meta charse

2017年5月24号课堂笔记

2017年5月24号 星期三 晴 空气质量:优 内容:定位属性,CSS3动画  备注:5月25日补课堂笔记 一.定位属性  01.定位属性 仿写老师代码: <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title>定位属性</title> <!-- position:定位属性 属性值: 01.static:默认值