数据类型--变量与常量--运算符与表达式--语句(if,for)--数组--函数--结构体

一、数据类型:

(一)内建类型

整型(int short long byte uint ushort ulong sbyte),浮点(double float decimal),布尔(bool),字符(char)

对于整型和浮点型都有个ToString("格式化字符串"):

#——任意一个数字。有的话就显示,没有就不显示。

0——必须有一个数字,没有的话就补零。

.——小数点

,——千位分隔。

(二)常用的类

Math DateTime string

Math:

Math.Ceiling(double ):大于当前小数的最小整数。

Math.Floor(double):小于当前小数的最大整数。

Math.Round(double):四舍五入

DateTime:

Year,Month,Day,Hour,Minute,Second,MilliSecond,DayOfWeek,DayOfYear

AddYears(n),AddMonths(),AddDays().........

ToString("格式化字符串"):格式显示。

yyyy,yy——年份。MM,M——月份。dd,d——天。hh,h——时。mm,m——分。ss,s——秒。ms——毫秒

(三)自定义类型

struct

二、变量与常量:

(一)变量就是装数据容器。——U盘

定义:

数据类型 变量名[ = 值],变量名[ = 值],....;

int a,b; int a = 5,b;

变量的命名规则:

1.变量名只能由字母、数字、下划线组成

2.只能字母,下划线开头

3.不能与关键词重复。

赋值:

变量名=值;——注意:变量类型与等号右边的值类型相一致。不一致就需要进行类型转换。

类型转换:

1.自动转换:一般来说自动转换,只要不存在丢数据的可能性,计算就会自动转化。例如:double a = 3+5.0;

2.强制转换:只要存在丢数据的可能性,计算机就不给自动转化,需要手动强制转化。

Convert.Toxxx(); Convert.ToInt32();

double a = 3.14;

int b = (int)a;

取值:直接写变量名。

(二)常量:常量也是装数据的容器,但在运算过程中常量不能放在单等的左边。——一次性光盘

分类:字面常量,符号常量。

定义:const int PI = 3.14;

注意:常量在定义的时候必须要赋值。

取值:直接使用常量取值。

三、运算符:

算术,关系,逻辑,其它

(一)算术——7

+ - * / % ++ --

整数除整数还是整数。

(二)关系——6

== != > >= < <=

(三)逻辑——3

&&  ||  !

(四)其它

1.复合运算符:+= -= *= /= %=

2.赋值: =

3.条件运算符:表达式1?表达式2:表达式3

四、语句:顺序、分支、循环

(一)分支——if

if(表达式)

{

}

if(表达式)

{

}

else

{

}

if(表达式)

{

}

else if(表达式)

{

}

...

else

{

}

if(表达式)

{

if(表达式)

{

}

else

{

}

}

else

{

...

}

例子:

1.判断闰年,平年

2.一元二次方程根的情况

3.男女体重与身高

4.判断日期是否正确。

(二)循环

for(初始条件;循环条件;变量改变)

{

循环体

}

循环的四要素:

循环的嵌套:打印星号。

两类问题:迭代法,穷举法。

迭代法: 按照某种规律通过循环迭代求解。

求100以内数的和,求阶乘。

1.5个小孩子求年龄

2.棋盘上放粮食

3.折纸与珠峰的高度。

4.落球问题。

5.猴子吃桃子

6.兔子生兔子。

穷举法:把所有的情况都走一遍,根据条件筛选。

求100以内与7相关的数。

1.买东西。

2.百鸡百钱,百马百石。

3.侦察兵

4.求等式。

五、数组:

思想:解决大量同类数据存储和操作的问题。

特点:连续,同一类数据。

分类:一维数组,二维数组,多维数组。

一维数组:

定义:

数据类型[] 数组名 = new 数据类型[数组的长度] [{初始化}];

赋值:

数组名[下标] = 值;

可以与循环结合起来。

取值:

数组名[下标];

可以与循环结合起来。

例子:

1.球员打分

2.选班长

3.36选7

3.青歌赛。

二维数组:

定义:

数据类型[,] 数组名 = new 数组类型[行数,列数] [{初始化}];

赋值:

数组名[行下标,列下标] = 值;

取值:

数组名[行下标,列下标];

例子:

1.学生成绩。

2.推箱子。

两个应用:二分法查找,冒泡排序。

二分法查找思想:前提是数组有序,每次找中间的值对比,否满足条件就扔一半。

使用最大下标max、最小下标min,中间值下标mid,控制查找的范围。 mid = (max+min)/2;   max = mid+1; min = mid-1;

如果一直查到min>max就结束了,说明没有找到。

冒泡排序的思想:相邻两个数进行依次对比,互换。

两层循环,外层循环趟数,内层循环每趟的次数。

趟数:n-1

次数:n-i

for(int i=1;i<=n-1;i++)

{

for(int j=1;j<=n-i;j++)

{

if(a[j] > a[j-1])

{

互换。

}

}

}

六、函数:

什么是函数:能够完成某个独立功能模块就可称之为函数。

为什么要用函数:结构清晰,分工开发,代码重用。

四要素:函数名,形参,返回类型,函数体。

定义语法:

返回类型 函数名(形参列表)

{

函数体

}

调用:

函数名(实参列表);

数据类型 变量名 = 函数名(实参列表);

函数的传值与传址的问题。

1.内建类型,日期时间都是默认传值。    ——ref

2.数组,字符串默认都是传址。

函数的返回值。——return 值或变量;要保持return后面的类型与函数的返回类型要一致。

递归。自己调自己。

语法思想:

返回类型 函数名(参数)

{

1.结束递归的判断。

2.递归运算:函数名(参数);

}

七、结构体:

为什么要用结构体?自己定义的复合类型,更好地模拟生活中的各种对象。

定义

struct 结构体名

{

public 类型 子变量名;

public 类型 子变量名;

....

}

使用:

结构体名 结构体变量 = new 结构体名();

结构体变量.子变量 = 值;

结构体变量.子变量;

结构体数组:

结构体类型[] 数组名 = new 结构体类型[长度];

数组名[下标].子变量

如何使用循环来操作结构体数组。

例子:学生成绩统计。对战的小游戏。

C# 10 总复习的更多相关文章

  1. 11.7 NOIP总复习总结

    好像要1A模板题.完败 下面主要是一波SB错误总结 最小生成树(忘了sort(QwQ)) // It is made by XZZ // Fei Fan Ya Xi Lie~~~ #include&l ...

  2. python 学习第二周总复习

    目录 数据类型内置方法 数字类型内置方法 整型 浮点型 字符串类型内置方法 列表类型内置方法 元祖类型内置方法 字典类型内置方法 集合类型内置方法 布尔类型 数据类型总结 拷贝 浅拷贝 深拷贝 053 ...

  3. EF6 在原有数据库中使用 CodeFirst 总复习(三、重建迁移)

    本来原来学的时候,挺顺利的,没想到再次使用,还是遇到很多问题,导致更新失败,所以,只能重建迁移,免得看着乱乱的. 一.删除迁移,将数据恢复到(一)结束状态 1.删除文件夹 2.删除表 3.删除列 4. ...

  4. EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面)

    有点与在原有数据库中使用 CodeFirst 远了,不过是总复习吗,总得全面点. 一.在用户表(Users)中插入两个用户 二.生成发帖界面 MVC生成的界面很多,也没使用Ajax,实际开发中很少会使 ...

  5. DAY25、面向对象总复习

    面向对象总复习:面向过程编程思想: 核心是 过程 二字, 过程指的是解决问题的步骤是,即先干什么再干什么. 基于该编程思想编写程序,相当于一条流水线,一种机械式的思维方式. 面向对象编程思想: 核心是 ...

  6. php面试题10(复习)

    php面试题10(复习) 一.总结 复习 二.php面试题10 21.谈谈 asp,php,jsp 的优缺点(1 分)(asp要钱,jsp学习成本大)答:ASP 全名 Active Server Pa ...

  7. Java面向对象总复习-QuickHit

    1.创建玩家级别类Level.java package com.bdqn; /** * 1.玩家级别类 * @author pc * */ public class Level { /** * 级别号 ...

  8. .net基础总复习(2)

    第二天 文件操作常用类 File类   //操作文件的 //复制.剪切.创建.移除 //File.Create(@"C:\Users\BDSOFT\Desktop\new.txt" ...

  9. .net基础总复习(1)

    第一天 1.new关键字 (1) 创建对象 (2) 隐藏从父类那里继承过来的成员 2.访问修饰符 public: 公开的,公共的. private:私有的,只能在当前类的内部访问,类中的成员, 如果不 ...

随机推荐

  1. SQL语句函数详解__sql聚合函数

    函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类:单行函数.组函数 本文将讨论如何使用单行函数及 ...

  2. iOS 性能优化:Instruments

    对于每位 iOS 开发者来说,代码性能是个避不开的话题.随着项目的扩大和功能的增多,没经过认真调试和优化的代码,要么任性地卡顿运行,要么低调地崩溃了之……结果呢,大家用着不高兴,开发者也不开心. 其实 ...

  3. AFNetworking之多图片-文件上传

    在分享经验之前,先说点题外话,之前的一个项目涉及到了多图片的上传,本来以为是一个很简单的事情,却着实困扰了我好久,究其原因,一是我不够细心,二是与后台人员的交流不够充分.在此,我想将我的老师常说的一句 ...

  4. InvokeRequired方法和Invoke函数

    c#中禁止跨进程直接访问控件,为了解决这个问题,出现了InvokeRequried属性,当一个控件的InvokeRequried属性值为真时,说明有控件外的线程想要访问它.这时便会调用到Invoke方 ...

  5. C#中Func<T,TResult>的用法和Lambda表达式

    在C#3.0中引用了Limbda表达式,Limbda表达式实际上就是一个方法,只不过该方法是匿名方法(即没有名称的方法)代码片段: Func<int,string,string> t=(i ...

  6. Shell学习之Shift的用法

        位置参数可以用shift命令左移.比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1.$2.$3丢弃,$0不移动.不带参数的shift命令相当于shift 1 ...

  7. MySQL实用基础笔记

    /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限验证登录MySQL */ mysq ...

  8. python基础教程第6章——抽象

    1.函数的定义,使用def(或“函数定义”)语句: def hello(name): return ‘Hello.'+name+'!' def fibs(num): result=[0,1] for ...

  9. 合成孔径雷达(Synthetic Aperture Radar, SAR)

    合成孔径雷达(Synthetic Aperture Radar, SAR)是20世纪最先进的科技发明之一.SAR有机载与卫载系统之分,能提供地表地形.乃至行星等远距离目标区高解析度图像.目前无人飞行载 ...

  10. Oracle EBS-SQL (OM-4):检查发运网络.sql

    select          msn.FROM_ORGANIZATION_CODE 开始库存组织,         msn.FROM_ORGANIZATION_NAME 开始库存名称,        ...