C#大纲

时间:2022-12-26 08:39:53

输入输出--数据类型--变量与常量--运算符表达式--语句(顺序、分支、循环)--数组--函数--结构体
一、输入与输出。
Console.ReadLine();
Console.WriteLine();
Console.Write();

二、数据类型:
(一)分类:
1.值类型:
基本类型:int(short long),double(float decimal),bool,char
复杂类型:
DateTime Now,ToString("yyyyMMdd...."),AddXXXX(),DayOfWeek,DayOfYear
struct
enum
2.对象类型(引用类型):
string——字符串的操作:Length,Trim()TrimStart(),TrimEnd(),ToLower()ToUpper(),IndexOf(),LasIndexOf(),ReplaceWith(),Substring(),Contains(),StartWith(),EndWith()
数组.
Random
(二)类型转换:
1.自动转换(隐式转换)
只要不可能丢数据,就会自动转换。

2.强制转换(显示转换)
只要可能会出现丢数据,就需要强制转。
语法:a.使用();b.使用Convert.
如果要把数值模样的字符串变成整数,必须使用Convert

三、变量与常量
(一)变量——U盘
1.定义:
数据类型 变量名[=值[,变量名=值]];
变量名的命名规则:a.组成。b.首字符。c.关键词
2.赋值:变量名=值;
3.取值:直接使用变量名。

注意变量的作用域:变量只在它所在的花括号里面起作用,出了花括号就访问不到了。
1.在同一个花括号内,不能出两个重名的变量定义。
2.如果多重花括号,外层和里层都出现同一个变量的定义,则使用的时候遵循“就近原则”。

(二)常量——光盘
在程序只能定义的时候赋值,在运算的时候无法修改值(不能放在等号的左边)
1.定义:
const 数据类型 常量名 = 值; //一般来说常量名统统大写。
2.取值:直接使用常量名。
3.分类:符号常量和字面常量。
int a = 10; //10就是字面常量
const int PI = 3.14; //PI-符号常量;3.14字面常量

四、运算符:
(一)算术 7 ——自动转换
+ - * / % 取余一般用在两种情况下:1.看看能不能整除。2.把值控制在某个范围之内。
++ -- 前,后。前——先自增(减),再做其它运算;后——先其它运算,最后自增(减)
(二)关系 6 ——返回bool
== !=
> < >= <=
(三)逻辑 3
&& || !
(四)其它
= 赋值:把右边关到左边去。因此:=左边只能是变量,不能是常量或表达式。
?:条件运算符:表达式1?表达二:表达式三 if...else...
复合运算符:+= ,-= *= /= %=

运算符优先级:

++ --
算术>关系>逻辑>赋值

使用()来改变运算的优先级。

五、语句:顺序、分支、循环
(一)分支:
1.if
(1)if(条件){}
(2)if(条件){} else {}
(3)if(条件){} else if(条件){}...else{}
(4)if(条件){if(条件){}..else{}} else{if(条件){}...else{}}
案例:
a.18岁抓当兵。
b.相亲
c.体重
d.平年闰年 ——判断一个日期是否正确。
e.一元二次方程根的情况。

2.switch
switch(表达式)
{
case 常量:
...
break;
case 常量:
...
break;
default
break;
}

(二)循环:
1.基本语法:
(1).for
for(初始条件;循环条件;状态改变)
{
循环体
}
循环的四要素:。。。。。。

(2).while
初始条件
while(循环条件)
{
循环体
状态改变
}
2.循环嵌套:
for(;;)
{
for(;;)
{
}
}

3.应用:
a.打印星号。好多图形。
b.穷举。把各种可能的情况都走一遍,筛选出符合条件的。
●100以内所有与7有关的数。
●买牙刷,洗发水,香皂
●百鸡百钱,百马百石
●兑硬币
●填+-号使等式成立的。
●侦察兵

c.迭代。找到规律,使用变量不断累计的功能实现运算。不断求中间结果,直到得出最终的结果。
●100以内所有数的和
●猴子吃桃
●小朋友算年龄
●折纸-珠峰
●棋盘分米
●富翁与程序员
●兔子

六、数组与集合
(一)数组:同一类型,连续存储
1.一维:——豆角
定义: 数据类型[] 数组名 = new 数据类型[长度]{初始值列表};
赋值:数组名[下标] = 值;
取值:数组名[下标]
与for语句配合用:——使用循环来控制下标。
数组常用的属性:Length。要搞清下标与长度的关系。

应用:
●球员打分。
●彩票
●排序
●二分法查找。

2.二维:——表格
定义:数据类型[,] 数组名 = new 数据类型[行数,列数]{初始值列表};
赋值:数组名[行下标,列下标] = 值。
取值:数组名[行下标,列下标]
与循环配合用:
for(;;) //循环行
{
for(;;)//循环列
{
}
}

应用:
●推箱子。

3.锯齿:——数组中的数组
定义:
1.定义数组中的数组:数据类型[][] 数组名 = new 数据类型[行数][];
2.定义一维数组:
3.把一维数组赋给数组的数组。

(二)集合:不用连续
1.链表
弱类型:ArrayList list = new ArrayList(); //using System.Collection;
强类型:List<类型> list = new List<类型>(); //using System.Collection.Generic;
2.哈希表
弱类型:Hashtable table = new Hashtable();
强类型:Dictionary<key类型,value类型> table = new Dictionary<key类型,value类型>();

栈,队

七、函数:
什么是函数?能够完成一定功能的独立模块。
函数的四要素:函数名,形参(输入),返回类型(输出),函数体(加工运算)。
(一)定义:
[static] 返回类型 函数名([变量类型 变量名[,变量类型 变量名[...变量类型 变量名]]])
{
函数体
}

(二)调用:
[数据类型 变量名 = ]函数名([实参1[,实参2...]])

说明:
1.函数名与变量名规则一样。
2.实参与形参一定要一一对应。
3.return所返回值一定要与"返回类型"一致。
4.函数定义没有一定的原则,只要好用就可以。

(三)递归——仅作了解

八、结构与枚举:
(一)结构体——自己定义的复杂的类型。
什么是结构体?为什么需要用到结构体?
定义:
struct 结构体名
{
public 数据类型 成员变量名;
public 数据类型 成员变量名;
public 数据类型 成员变量名;
...
}
使用:

结构体名 变量 = new 结构体名();
变量.成员变量 = 值
变量.成员变量

说明:结构体的成员,还可以用其它结构体来定义。

(二)枚举:使用枚举来替代一些难以记忆的整数。
枚举和整数之间可以相互强制转换。
定义:
enum 枚举名
{
成员名[=整数],
成员名[=整数],
成员名[=整数],
....
成员名[=整数]
}

使用:
枚举名.成员名

C#大纲的更多相关文章

  1. Python 黑帽编程大纲(变化中)

    Python 黑帽编程大纲(预览版) 教程说明: 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and Defense with Pytho ...

  2. PropertyGrid控件由浅入深&lpar;一&rpar;:文章大纲

    Winform中PropertyGrid控件是一个非常好用的对象属性编辑工具,对于Key-Value形式的数据的处理也是非常的好用. 因为Property控件设计良好,在很小的空间内可以展示很多的内容 ...

  3. 开源物联网通讯框架ServerSuperIO,成功移植到Windows10 IOT,在物联网和集成系统建设中降低成本。附:&OpenCurlyDoubleQuote;物联网”交流大纲

    [开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 一.概述 经过一个多月晚上的时间,终于把开源物联网通讯框架ServerSuperIO成功移植到Windows10 IOT上, ...

  4. Atitit&period; 项目文档目录大纲 总集合 &&num;160&semi;v2

    Atitit. 项目文档目录大纲 总集合  v2 -----Atitti.原有项目源码的架构,框架,配置与环境说明 v3 q511 -----Atitit.开发环境 与 工具 以及技术框架 以及 注意 ...

  5. 前端开发面试知识点大纲--摘自jackyWHJ

    前端开发面试知识点大纲:HTML&CSS:    对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...

  6. &lbrack;php入门&rsqb; 2、基础核心语法大纲

    1 前言 最近在学PHP,上节主要总结了PHP开发环境搭建<[php入门] 1.从安装开发环境环境到(庄B)做个炫酷的登陆应用>.本节主要总结PHP的核心基础语法,基本以粗轮廓写,可以算作 ...

  7. PHP内核探索之变量(6)- 后续内核探索系列大纲备忘

    年前因为工作比较饱和,现在又忙着换工作的事情,基本停止了对博文的更新.后续的博文,还是慢慢补上吧. 为了不至于过于发散,先搞个未成形的大纲,如下: PHP内核探索之变量  不平凡的字符串 PHP内核探 ...

  8. html5大纲

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. html5中的大纲

    html5中的大纲 前言: 在html5中我们可以使用结构元素来编排一份大纲,这样我们就可以通过这个网页的大纲来了解网页中有哪些内容,网页中以什么样的形式来组织这些内容有更清楚的认识. 1.html5 ...

  10. Android中直播视频技术探究之---基础知识大纲介绍

    一.前言 最近各种视频直播app到处都是,各种霸屏,当然我们也是需要体验的,关于视频直播的软件这里就不介绍了,在不是技术的人来看,直播是一种潮流,是一种娱乐方式,但是作为一个高技术的,我们除了看看,更 ...

随机推荐

  1. PHP操作MongoDB学习笔记

    <?php/*** PHP操作MongoDB学习笔记*///*************************//**   连接MongoDB数据库  **////*************** ...

  2. Servlet学习一

    Servlet担当着客户请求(Web浏览器或其它HTTP客户程序)与服务器响应(HTTP服务器上数据库或应用程序)的中间层.Servlet是位于Web服务器内部的服务器端Java应用程序,与传统的从命 ...

  3. iOS 状态栏管理

    iOS 7 以前:状态栏由 UIApplication 管理 1.隐藏状态栏 : application.statusBarHidden = NO; 2.设置状态栏样式 : application.s ...

  4. 集中式(CVS、SVN)VS分布式(Git)

    集中式版本控制系统,版本库是集中存放在*服务器的,而干活的时候,用的都是自己的电脑,所以要先从*服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给*服务器.*服务器就好比是一个图 ...

  5. 原生JS元素怎么取消事件

    关于原生JS元素怎么取消事件,有3种方式 常规方法:removeEventListener 案例: <body> <div id="myDIV"> div ...

  6. 简单的vuex 的使用

    1. npm install vuex 2. 在src 下 新建文件夹 store (为什么是这个单词,vuex 是用来状态管理的,用储存一些组件的状态,取存贮之意),store 文件下 新建文件 i ...

  7. 中科曙光I620-G15服务器登录密码破解

    服务器型号:中科曙光I620-G15服务器 系统:windowsserver2008R2 单位:保密 服务器登录密码忘记了,进不去桌面,后来在我们云修网工程师的指导下,顺利绕过密码登录系统,然后修改系 ...

  8. 使用 &dollar;&lpar;function&lpar;&rpar;&lbrace;&rcub;&rpar; 时遇到的一个小bug及解决方法

    在 $(function(){}) 中声明函数,在 $(function(){}) 外调函数,会报错 原因: 页面加载后,会先执行 $(function(){}) 外面的语句,再执行 $(functi ...

  9. 转:在Struts 2中实现文件上传

    (本文转自:http://www.blogjava.net/max/archive/2007/03/21/105124.html) 前一阵子有些朋友在电子邮件中问关于Struts 2实现文件上传的问题 ...

  10. android 获取对权限的选择

    一般是第三方软件拦截,再次提示给用户,确认权限的,如360等.(PS 没有设置权限的app 是会崩溃的  ,而是不是弹出权限确认,因为你都没设置这个权限)看了网上很多,确切说没有一个适合我的. 其实用 ...