C#大纲
输入输出--数据类型--变量与常量--运算符表达式--语句(顺序、分支、循环)--数组--函数--结构体
一、输入与输出。
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#大纲的更多相关文章
- Python 黑帽编程大纲(变化中)
Python 黑帽编程大纲(预览版) 教程说明: 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and Defense with Pytho ...
- PropertyGrid控件由浅入深(一):文章大纲
Winform中PropertyGrid控件是一个非常好用的对象属性编辑工具,对于Key-Value形式的数据的处理也是非常的好用. 因为Property控件设计良好,在很小的空间内可以展示很多的内容 ...
- 开源物联网通讯框架ServerSuperIO,成功移植到Windows10 IOT,在物联网和集成系统建设中降低成本。附:“物联网”交流大纲
[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 一.概述 经过一个多月晚上的时间,终于把开源物联网通讯框架ServerSuperIO成功移植到Windows10 IOT上, ...
- Atitit. 项目文档目录大纲 总集合 v2
Atitit. 项目文档目录大纲 总集合 v2 -----Atitti.原有项目源码的架构,框架,配置与环境说明 v3 q511 -----Atitit.开发环境 与 工具 以及技术框架 以及 注意 ...
- 前端开发面试知识点大纲--摘自jackyWHJ
前端开发面试知识点大纲:HTML&CSS: 对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...
- [php入门] 2、基础核心语法大纲
1 前言 最近在学PHP,上节主要总结了PHP开发环境搭建<[php入门] 1.从安装开发环境环境到(庄B)做个炫酷的登陆应用>.本节主要总结PHP的核心基础语法,基本以粗轮廓写,可以算作 ...
- PHP内核探索之变量(6)- 后续内核探索系列大纲备忘
年前因为工作比较饱和,现在又忙着换工作的事情,基本停止了对博文的更新.后续的博文,还是慢慢补上吧. 为了不至于过于发散,先搞个未成形的大纲,如下: PHP内核探索之变量 不平凡的字符串 PHP内核探 ...
- html5大纲
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- html5中的大纲
html5中的大纲 前言: 在html5中我们可以使用结构元素来编排一份大纲,这样我们就可以通过这个网页的大纲来了解网页中有哪些内容,网页中以什么样的形式来组织这些内容有更清楚的认识. 1.html5 ...
- Android中直播视频技术探究之---基础知识大纲介绍
一.前言 最近各种视频直播app到处都是,各种霸屏,当然我们也是需要体验的,关于视频直播的软件这里就不介绍了,在不是技术的人来看,直播是一种潮流,是一种娱乐方式,但是作为一个高技术的,我们除了看看,更 ...
随机推荐
- MVC Controller弹窗的几种方式
MVC3 Controller弹窗的几种方式 return Content("<script language='javascript' type='text/javascript ...
- css样式重写
//我们经常想修改插件的某一个或几个样式特性,并保留其它的样式.而不是把某个css全部重写一遍. /*原有样式*/.ninew {padding: 0 10px;width: 600px;height ...
- RobotFrameWork接口报文测试-----(二)demo的升级版
在上一篇,简单的demo实现了讲xml的数据发送服务器端并取得recvi_buf,然后进行了简单的解析的操作.现在就要解决之前提过的2个问题: 1. 步骤这么多,难道每写一个脚本都要重复一次么? 2. ...
- 基于UP-CUP6410点灯实验完成
远程点灯实验 实验目的: 实现远程点灯,通过gprs 自带调试软件发送信息,完成智能家具远程点灯实验. 1.定制arm系统 使用uboot资料自带的!在内核中添加pl2303串口驱动,进行u口转串口的 ...
- [slim] Slim - Faster, lightweight, a enginer for Ruby
URL: http://slim-lang.com/ Example: doctype html html head title Slim Examples meta name="keywo ...
- 关于 屏幕阅读器 和 sr-only
.sr-only = screen reader only 用于读屏器识别使用.
- android 项目学习随笔十三(ListView实现ITEM点击事件,将已读状态持久化到本地)
1.因为给LISTVIEW增加了两个头布局,所以在点击事件ITEM索引会增加2,比如原来第一条数据的索引应该为0,增加两个头布局后,它的索引变为 2,为了使LISTVIEW的ITEM在点 ...
- Linux内核配置机制(make menuconfig 、Kconfig、Makefile)讲解【转】
本文转载自:http://www.codexiu.cn/linux/blog/34801/ 前面我们介绍模块编程的时候介绍了驱动进入内核有两种方式:模块和直接编译进内核,并介绍了模块的一种编译方式—— ...
- zabbix agent 类型自带的key
zabbix服务器端通过与zabbix agent通信来获取客户端服务器的数据,agent分为两个版本,在配置主机我们可以看到一个是agent,另一个是agent(active). agent:zab ...
- 将linux下的rm命令改造成移动文件至回收站【转】
转自:http://blog.csdn.net/a3470194/article/details/16863803 [-] 将linux下的rm命令改造成移动文件至回收站 将AIX下的rm命令改造成移 ...