C#编程基础

  • .net的一些基本概念

IDE Integrated development enviroment

c/s

B/S

Net4.X

Visual studio 是.net使用的开发工具(2010旗舰版 或者2008 Team system版本,不要下载免费版,因为功能有限制)

MSDN:microsoft development network  是visual studio的帮助文件,可以查到所有资料

 

  • C#编程工具的操作

Visual C# 控制台应用程序

新建项目

名称

位置

解决方案名称(全部解决方案可能包括多个项目,这些新项目共同完成形成一个解决方案)

新建批program的两种方法:

解决方案管理器

快捷键新建项目 Ctril+shift+N(选择加入project)

菜单栏-工具栏(与菜单中的某些项重复,只是放在一起便于操作)

解决方案管理器

解决方案--多个项目--多个文件--包含程序

cw+tab键=输入Console.Writeline();

解决方案中可以包含多个项目---多个文件---多个程序

引用命名空间

namespace:定义了一个命名空间叫:我的第一个项目

命名空间的名城不许以数字开头

class Program:类,名称是Program

static:方法,叫Main

解决方案-项目-文件-命名空间-类-方法-程序statement

重置开发环境:让开发工具恢复默认状态

工具_>导入和导出设置

一般的窗口不小心关闭了,在视图中寻找

一般的类文件,以.cs结尾

  • Main方法的重要性:

是程序的入口方法,即要执一个程序,会首先找到Main方法,从Main方法的第一句程序开始执行,当Main方法执行完成后(即执行完Main方法的所有内容),程序就结束了。

所以初学者写程序,就先写在Main方法中。

一般情况下,一个程序只能有一个Main方法。没有Main,或者有多个Main多无法启动。

.sln是解决方案的文件,记录了解决方案包含的项目

.csproj是项目文件

每天交作业时,压缩解决方案文件夹,重命名为:姓名+日期 如 小斌422.rar

ftp://198.168.1.100

  • 程序

C#区分大小写

快捷键:F5 (程序启动;

第一句编程语言

在屏幕上向用户显示一句话

Console.WriteLine("你想显示的内容);

第二句话

Console.Readkey();

当程序执行到Console.ReadKey();程序会停在这里等待用户在键盘上键入一个键,等用户键入这个键后,程序才会继续执行

Ctrl+F5 运行不调试

在C#中没一句话都必须以;结束,有几个;就有几句话。

必须点击: 生成_>生成解决方案  才能修改程序

或者点击  运行    会先生成再运行

快捷键  F6 (生成),可以帮助检测是否有语法错误

Write和WriteLine的区别: Write之后不自动换行,WriteLine自动换行

如何设置字体和颜色

工具->选项->字体和颜色

  • C#中的注释: 对我们写的程序进行解释

有三种:

单行注释:以//开始,到本行结束

多行注释:,以/*开始,*/结束,之间的都为注释

文档注释:用于对class和method进行注释,在Class和Method连续敲三个///,在中间写Class是做什么的

注释是程序员的一个好习惯,没有的话会扣分,因为你的 程序需要给别人看

  • 计算机使用的基本技巧

Home

End

PageUp

PageDown

Shift

Ctrl+Home使光标移动到文档的最前

Ctrl+End使光标移动到文档的最后

删除文字的操作

Backspace删除光标前面的字符

Del删除光标后面

Ctrl+Z:撤销上一次操作

编程时使用的任何符号,都是半角的

下面的一对指令可以折叠一段代码

#Region 和#endregion

.net的开发工具: Visual Studio

.net Framework 提供函数库,类库

.net的开发语言: C# /VB.Net/F#

.net是一种多语言的平台,开发.net的程序可以用多大十几种语言进行开发

Java是一种单语言平台,优势是可以跨平台使用

软件与系统的依赖关系

电脑--windows的操作系统--装.net Framework(CLR公共语言运行库+类库FCL)---应用程序

CLR是翻译应用程序,成为操作系统能够理解的代码 Common Language R

C#---C#编译器--MSIL--CLR--代码被执行

MSIL:微软中间语言

CLR翻译成不同平台能够理解的语言

.Net Framework类库

ASP.Net: Web窗体

Web Service

WinFroms

ADO.NET

XML类

CLR

CLS:公共语言规范(语法规则)Common Language Specification

CTS:通用类型系统(有的词)Common Type System

我们程序要想进行不同的机器的移植,需要确定对方安装了.Net Framework

微软出的操作系统,都默认了装了.net Framework

复制对话框提示内容:

[Window Title]

记事本

[Main Instruction]

是否将更改保存到 F:\技术\编程\Java.txt?

[保存(S)] [不保存(N)] [取消]

  • 变量1.(Variables)

计算机--使用"内存"来存储数据

我们在计算机中存储数据和客人住旅店类似

/*

内存:用于存储正在运行的程序数据(不准确.)

RAM(随机存储器):内存有个特点,断电后数据丢失

硬盘:存储资料(点击保存后,从RAM转移到硬盘/磁盘上)*/

住旅馆的程序

1.开房间---Consider:开什么样的房间--单间,双间,套间

2.入住--当房间开好后要考虑入住

Variables:其实代表了一块儿内存空间,我们可以通过Variable名称向内存空间存取储数据。有了变量就不需要我们记忆复杂的内存地址了。

1.向计算机申请一个内存空间

2.

向内存申请申请一块儿内存空间的语法:

数据类型 变量名称;

赋值: 变量名 = 值

整数: 在C#的数据类型为 int

int Number;//开放一个能放数字的内存空间,名字为Number

a=1000;// =为赋值运算符(Assignment Operators),将数据1000放入Number这个房间中

Equals Operators:(==)

向屏幕显示一个Variable时,不需要加"",是取变量值

数据类型

数值

int

整数,(正负10位以下可存储)

double

小数

decimal

财务上的大型数据运算

Long

short

byte

非数值

string

字符串

Char

‘a’

计算机中常用的各式各样的数据

数值:

整数型:int

非整数型:double;decimal//decimal 一般用于财务上的大型数据运算

非数值:char;String

其他数据类型:

非数值:

如果加""则表示将""内的内容原封不动的显示出去

MSDN:Visual Studio的帮助

int:整数 3 5 100 -10(正负10位以下可以存储)

double:  2.13, 10.5, -3.14, -5.0(小数),精度只有15-16位,如果123456789123456789123456789111,double运行后16位后的数字都变成0,精度丢失。

char:‘A’, ‘B’(中文称为:字符型,只能存储一个字符,并且存储的字符要求的字符要求用单引号引起来‘’),

char类型也可以包含空格

string:字符串,就是把0个或多个字符链接起来,就叫做字符串,要求用双引号"".赋富时,赋予空或者 单个字符都可以

string:"张三"."Lisi",."计算机"

decimal:一般用于存储财务上的数字,与double类型的区别。精度有28-29度。与double的区别,一是范围不一样,二是精度不一样。但在10位以下,与double没有区别。

在一个小数后加m,就告诉编译器,这个小数是decimal类型

在c#开发环境中,直接写一个有小数点的数字,这个数字是double类型的。

decimal money;

money = 1000.25m

  • 变量的命名

命名规则

1.必须以“字母”,_或者@符号开头。//C#的编码支持多国语言,可以使用汉字,英语,法语等都可以。建议Programmer使用英文,这样节省时间,方便copy到英文操作系统。中文有可能到其他系统上乱码。

2.后面可以跟任意“字母”,数字,下划线//说明第一个字符不可以是数字开头

变量声明方法的三种方法:

1.先声明,后赋值.

int X;

X = 1;

2.定义变量时直接赋值.

int a =3;

3.一次声明多个同类的变量,这些变量用逗号,分隔,最后以;结束.

string zsName,lsName,wwName;//一次声明了三个string类型的变量

int zsAge=18, lsAge = 20, wwAge = 22;//一次声明三个同类型的变量,并且都赋值了

警告:

说明代码Code有可能有错误,或者运行时有错误。以后写代码要求没有错误,没有警告。

例如:警告

变量“jpName”已赋值,但其值从未使用过

//不使用会造成一种浪费

Variables:

1.先声明

2.再赋值

3.最后使用(调用变量/取值/或者写这个变量)

练习

三个变量:姓名,性别,年龄(张三,男,18)

注意:

1.你起的变量名不要与C#中的关键字重合

关键字字库

关键字在编程时会变成蓝色,发现颜色变成蓝色就要换名字

2.在C#中,大小写是敏感的

3.同一个变量名不允许重复定义,只能重复赋值(在特殊情况下可以重复赋值,目前暂且认为不可重复赋值)

定义变量时,变量要有意义

  • C# 命名编码规范

Camel命名法: 首个单词的首字母小写,其余单词的首字母大写//在方法定义变量,要用camel命名法

studentName,zsAge, lsName,name,age

Pascal命名法:

每一个单词的第一个字母都大写,如果涉及到单词的缩写,全用大写//一般用全局的变量

SoftwareName,SystemVersion

匈牙利命名法:

前面用变量类型小写,后面大写的单词是变量的名字

strName,iAge

在Main method中命名变量都要用Camel命名法//不同公司会有不同的命名法

赋值运算符和赋值表达式

Assignment Operators: = //把右边的值赋给左边的变量

赋值表达式:以=链接的式子

a=a+1;这里的=是赋值运算符,不是数学意义上的相等

赋值运算符的优先级是最低的。

a=a+1;//表示把a中的值取出来,与1相加,再把这个结果值赋给a

变量可以重复赋值,一旦给一个变量赋了新值,那么变量中的原有的值就会被覆盖掉。

举例:

第一个变量存储客户的姓名,然后输出“你好,某某”

System using

{

namespace_01练习

{

Static void main

{

String name;

name = “张三”;

Console.WriteLine(“您好,{0}”,name);

Console.Readkey();

}

}

}

Output为 您好,张三

"+"加号运算符,在C#中两种意义

1.数学中的加法运算;//运算符两侧的数据类型为数字类型,则表示数学上的加法意义

int a = 1;

int b = 2;

Console.WriteLine(a+b);

Console.ReadKey();

output 为3;

2.链接的意思;//如果两侧的运算数据有一个数字符或者字符串类型,就是连接的意义

判断要看"+"左右的数据类型

占位符

在Console.WriteLine("")中,第一个变量or字符串中可以使用占位符。

占位符由{数字}组成,数字由0开始编号

第1个占位符:{0}

第2个占位符:{1}

第3个占位符:{2}

……

占位符是否可以重复使用?YES.占位符可以重复的使用

Error类型:

运行时错误

语法错误

参数

用逗号“,”分隔的东西叫做参数

Console.WriteLine();有多个参数是时, 进行对外输出时,输出的永远是第一个参数的内容,从第二个参数开始,都是用来替换第一个占位的变量。所以从第二个参数开始,要不要输出,就要看第一个参数中有没有相关的占位符。

电话要存储string类型;

int只能存储10位;

long和string的区别

long是一个数字类型,是一个长整数;因为是个数字类型,要进行数学上的运算,如果定义为long,电话号码没有运算;

算法1:

交换两个变量值的算法

int a = 10;

int b = 5;

int temp;

temp = a;

a = b;

b = temp;

Console.WriteLine("a ={0}  b ={1}",b,a);

算法2:

用于让用户从键盘上输入一句话,当程序执行到下面这句话,就会暂停,然后等待用户从键盘上输入一句话,按回车,程序将继续进行。

Console.ReadLine();

如果想得到用户输入的东西(字符串),就需要定义一个String类型的变量,写在下面这句话前面,接收用户输入的内容;

接收用户输入的内容必须定义一个String类型来接收。用户输入的任何内容都是string类型,全部以字符串处理

string input = Console.ReadLine();

练习:

问:你喜欢吃什么水果?

用户输入:苹果

回答:哈哈,太巧了我也喜欢吃苹果

Console.WriteLine(“你喜欢吃什么水果?”);

Console WriteLine(“请在下面一行输入你喜欢吃的水果”);

string input = Console.ReadLine();

Console.WriteLine(“哈哈,太巧了我也喜欢吃{0}”,input);

Console.ReadKey();

能不能在字符串中输出双引号吗?

在屏幕上显示:C#用半角引号""包含起来

转义字符:

当我们需要在字符串中输入一些特殊字符时,就需要转义字符,比如半角引号,换行,推格,就需要转义字符。

转义字符是一个字符,也可以用于字符串,他由一个\+一个字母来组成具有特殊意义的一个字符。

常用的一些转义符:

\n表示换行

\b (=backspace) 退格=删除字符

\t  (=tab) 由多个空格组成的一个字符,具有行与行之间的对齐功能

Console.WriteLine("1\t2\t3\t4\t5");

Console.WriteLine("11\t111\t1234\t12345\t7");

Console.ReadKey();

\\ (=\) 表示要输出一个\,要输出两个\\,要用四个\(\\\\)

@,在字符串前面加@符号,有两种意义

1.字符串中如果有\,则不再理解为转义符

2.使字符串可以换行定义

/*Console.WriteLine(@"D:\jdssoftware\wab

世界你好!

dc9\bdclib");

Console.ReadKey();*/

为什么运行的时候没有内容出现呢?

后期等待几分钟,程序才开始有内容显示了

@后面的字符串中的\已经不再转义了,因此如果需要在字符串中键入"",这个时候需要两个双引号代表一个双引号要

算数运算符以及算数表达式

算术运算符: +-*/%(取余数,取模)

算数表达式:由算数运算符连接起来的狮子,如1+1, a-b(变量a与b已经声明,并且赋初值)

凡是进行运算,要求进行运算两边的数据类型都相同

发生自动转换的条件

1.参与运算的两个数据类型相兼容

2.必须一边的数据类型,表示范围小,一边的表示范围大,并且把小的转向大的不丢失精度(即值与原来保持一样)

例如:double的范围广于int,从而double包含int

int是整数,是数轴上的点。而double是数轴上的一段。所有的int类型都可用double表示。

隐式转换

为什么double默认转换成decimal?

因为double比decimal范围更大,比如decimal=3.14是错误的,正确的是decimal d =3.14m;

decimal d = 3.14m;

double d = d;

这个程序错误的,因为decimal精度更大,将decimal转为double会丢失精度,这样的转换是不可以的。

decimal d = 3; 是可以的,因为int类型是可以转换decimal;

以后用的最多的是int类型自动转为double类型

表达式

1.如果一个表达式为double类型,则整个运算都将转为double类型;

转载于:https://www.cnblogs.com/samatha1986/p/3688125.html

技术博文1---C#编程基础学习笔记(苏坤老师教学)相关推荐

  1. 【C#编程基础学习笔记】6---变量的命名

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...

  2. 【C#编程基础学习笔记】4---Convert类型转换

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...

  3. 自学python入门-自学Python编程基础学习笔记 PDF 完整超清版

    一. Why. 为什么学习Python.Python这门语言​用处比较广泛: 1.写测试脚本,因为PY是解释性语言,天生就有作为测试脚本语言的优势,语法简单,通俗易懂,可移植性好(底层使用C语言来编写 ...

  4. 计算机编程基础学习笔记之-1.计算机组成原理

    文章目录 思维导图 1.计算机组成原理 总览 1.计算机体系与结构 1.1 冯诺依曼体系 1.2 冯诺依曼瓶颈 1.3 现代计算机结构体系 2.计算机的层次与编程语言 2.1 程序翻译VS解释 程序翻 ...

  5. [python]网络编程基础学习笔记(一)客户/服务器网络介绍

    1.1 理解TCP基础 每个TCP链接的寻址需要一个IP地址和一个端口号来唯一标识的. TCP是可靠的协议,除非整个网络出现问题,否则数据将完整的从网络一端传送到另一端. TCP的可靠性是通过下面的途 ...

  6. _int64_在Linux对应对文件,LInux 编程基础学习笔记 持续ing 文件读写

    一.文件读写 1.创建文件: 头文件: 函数:creat(char *path,int mode)  mode:S_I(R|W|X)(USR|GRP|OTH)   对不同用户组的不同读写执行 2.打开 ...

  7. Python网络编程基础学习笔记-ip地址的介绍

    ip地址的介绍 1.ip地址的概念 IP地址就是标识网络中设备的一个地址,好比现实生活中的家庭地址. 2.ip地址的表现形式 通常分为ipv4 ipv6 说明: ip地址分为两类: ipv4 和 ip ...

  8. 学习Python编程基础学习笔记(5.模块和包)

    目录 一:概述 1.1标准模块 二:模块详解 2.1以脚本方式执行模块 6.1.2. 模块搜索路径 6.1.3. "已编译的" Python 文件 三:dir() 函数 和 包 3 ...

  9. Java中大数据数组,Java基础学习笔记之数组详解

    摘要:这篇Java开发技术栏目下的"Java基础学习笔记之数组详解",介绍的技术点是"java基础学习笔记.基础学习笔记.Java基础.数组详解.学习笔记.Java&qu ...

最新文章

  1. 【问题解决】老外ESP32TTS语音合成库AquesTalk ESP32测试成功
  2. 项目中遇到的Integer问题--转
  3. UDO compare ABAP代码的实现
  4. 学习笔记【2010/09/20-2010/11/27】
  5. Java:如何在不到5分钟的时间内通过Hazelcast提高生产力
  6. oracle查询用户下所有表名称
  7. limit mongodb 聚合_mongodb-$type、limit、skip、sort方法、索引、聚合
  8. Hadoop学习笔记(一):MapReduce工作机制
  9. 手机黑屏时闪屏怎么回事_手机屏幕碎了,先别着急换!维修师傅告诉你,如何不被忽悠多花钱...
  10. Trimble天宝水准仪维修DINI03全站仪/电子水准仪维修特点
  11. catia 快捷键 激活零件_CATIA常用快捷键
  12. PPT文件怎么转换成图片
  13. 电源篇-集成三端稳压器
  14. Python青少年学编程之秦九韶算法(初三、高中信息技术)
  15. visual foxpro
  16. [转] 心态是最大的本钱;人无完人,重要的是怎么做人
  17. 阿里云客服机器人人工服务配置文档
  18. c语言打印一个字母圣诞树,C语言打印圣诞树
  19. 服务器被打了之后怎么办?
  20. css3 搜索栏 圆角,CSS3 圆角

热门文章

  1. 记一次阿里云ECS被挂挖矿代码的处理历程
  2. Java05 - 数据类型
  3. 如何反击职场PUA?
  4. Linux 字符设备
  5. 关于纯JAVA浏览器的源码说明
  6. 01-javaWeb-html
  7. Springboot2.x+Websocket+js实现实时在线文本协同编辑,并展示协同用户
  8. QUANT[2]:量化交易策略基本框架搭建
  9. IOException: Sharing violation on path 异常
  10. 五脏有问题,该怎么调理?