黑马程序员_看视频记笔记_C#编程基础01
概念:.net与C#
l .net/dotNet:一般指.net Framework框架,一种平台,一种技术。
l C#(C Sharp):一种编程语言,可以开发基于.net平台的应用。
l (*)JAVA:即是一种技术又是一种编程语言
C Sharp是锋利的意思;C++是两个井号(#),C#是四个井号(#)
.net都能干什么
l 桌面应用程序 Winform
l Internet应用程序 ASP.NET/WebService
l 手机开发 WP7、WP8
即:嵌入式开发 windowsCE/winCE
(*)JAVA中没有winform概念
(*)用.net开发winform是开发桌面应用程序
(*)用.net开发网站是开发ASP.NET程序,即Internet应用程序
(*)WindowsPhone跟Android、IOS作对比
架构/模式(一般指网络程序,单机程序不分这个)
C/S:客户机(Client)/服务器(Server)模式 –>winform
B/S:浏览器(Browser)/服务器(Server)模式 –>asp.net
微软常干后来居上的事情
JAVA是90年代的一种语言,C#是2K01-2K02年的一种语言
.net开发学习路线
jQuery是JavaScript的一种框架、类库
IDE介绍
IDE(Integrated Development,集成开发环境)
Visual Studio 2010简介:
1.一套完整的开发工具
2.用于开发桌面应用程序,ASP.NET Web应用程序、XML、Web Service、移动应用程序
3.为快速开发提供强大支持
IDE及.Net的版本(*了解)
.net 1.0 - Visual Studio2002
.net 1.1 - Visual Studio 2003
.net 2.0 - Visual Studio 2005
.net 3.x - Visual Studio 2008
.net 4.x - Visual Studio 2010
VS2008最高版本应该是Team System版本
(*)中国法律规定:以研究学习为目的的破解反编译不负法律责任 待求证
MSDN介绍
MSDN 的全称是 Microsoft Developer Network。这是微软公司面向软件开发者的一种信息服务。MSDN 实际上是一个以 Visual Studio 和 Windows 平台为核心整合的开发虚拟社区,包括技术文档、在线电子教程、网络虚拟实验室、微软产品下载(几乎全部的操作系统、服务器程序、应用程序和开发程序的正式版和测试版,还包括各种驱动程序开发包和软件开发包)、Blog、BBS、MSDN WebCast、与 CMP 合作的 MSDN 杂志等等一系列服务。
Visual Studio介绍1
l 安装 setup.exe install.exe autorun
l 启动
l 创建解决方案/项目
l 认识vs的各部分(菜单/快捷键/工具栏/窗口)
l VisualStudio各个视图的打开、开发环境的重置
l C#源文件(类)一般以cs结尾
l C#程序的入口是Main函数,在Main中写代码就行,暂时不用关心其他部分是什么意思
Visual Studio 介绍2
l 保存项目,打开项目. 交作业交哪些文件.
l 作业的命名格式:苏坤813.rar
l 先学习两句话:
n Console.WriteLine("Hello,World!");
n Console.ReadKey();
n 每一句话以;号结束 生成程序
n 运行一下生成的.exe程序
l 设置字体及行号显示
l 创建多个项目
l 启动项目设置
l 项目的加载与卸载
重置开发环境
工具->导入导出
.sln解决方案的文件
.csproj 项目文件
(*)W+Tab
C# 中的注释符
l //单行注释
l /*
多行注释
*/
l ///
///文档注释
///
C#中的注释,什么是注释呢?对我们写的程序写注释,注释是给人看的!
l 第一种:单行注释 以//开头,后面的就是注释内容
l 第二种:多行注释 以 /*开头 */结束 之间的是注释内容
l 第三种:文档注释 在方法或类的上一行输入 ///就会产生
联系
编程实现以下内容:
计算机使用基本技巧
l 常用件介绍:Home/End/PageUp/PageDown/Shift/Ctrl+Home/Ctrl+End
l 一段文字的删除:delete/backspace
l Ctrl+A Ctrl+K/F
l 学会使用复制粘贴。Ctrl+c/v/x 对话框中的使用
l 插入、覆盖模式的困惑。insert
l 学会使用Ctrl+Z撤销上一次操作
l ;,()""等的的全角半角问题。 出错:意外的字符""
l VS窗口的拖拽
l 遇到异常、报错不要慌。
l 目前经常用到的快捷键:F5 F6
l #region和#endregion
.Net开发环境(*)
开发工具:Visual Studio
C# VB.Net F# VC++.net
C Sharp .Net Framework:提供函数库类库
.net:是一种多语言平台,开发.net可以用多达几十种语言进行开始
JAVA:是一种单语言的平台 一种语言多种平台
俄罗斯 ->日本
俄罗斯 ->韩国
俄罗斯 ->中国
日本 ->俄罗斯
日本 –>韩国
韩国 ->日本
韩国 –>俄罗斯
都找中国翻译
CLR:CLS+CTS
CLR:公共语言运行时 Common Language Runtime
CLS:公共语言规范Common Language Specification
CTS:通用类型系统 Common Type System
(*)VC++
变量1
l 计算机使用内存来存储数据.
l 我们在计算机中存储数据和客人住旅馆很类似.
l 我们住旅馆一般要做以下事情:
l 1、开房间(单人间、双人间、总统套间)
l 2、入住
用户存储正在运行的程序数据(不准备)
RAM:内存有个特点,断电后里面的数据丢失
变量:变量代表着一块内存空间,我们可以通过变量名称来向内存存/取数据,有变量就不需要我们记忆复杂的内存地址
向内存中
变量2
l 要在计算机中存一个数字1000,需要两句话.
l int a; //开一个能放数字的空间
l a=1000; //把1000放进去.
l 声明变量的语法格式:
- 数据类型 变量名;
l 赋值: 变量名=值;
l 可以 a=3.14; 吗????
变量3
计算机中各式各样的数据
3 3.14 100 the quick brown
fox jumps over the lazy dog
张三 李四 True 2011-3-6
常用数据类型
在C#中直接写一个小数类型的数值。默认是double类型的。
Float +f/F
Decimal +m/M
变量的声明方法
l A)数据类型 变量名称;
- int age;
- 变量的赋值 age=18;
l B)定义时赋值,数据类型 变量名称=值;
- int age = 18;
l C)如果一次要声明多个相同类型的变量可用逗号分隔.
- string zsName,lsName;
变量一定要先声明,再赋值,才能使用.
l 练习:定义一个变量pi,并把3.14存进去,然后显示在屏幕上?
l 想一想下面代码的输出结果是?
- int i=10;Console.WriteLine("i");
变量的命名
l 命名规则:
- 1 必须以“字母”_或@符号开头.--不要以数字开头
- 2 后面可以跟任意“字母”、数字、下划线.
- 注意:
- 1)你起的变量名不要与c#系统中的关键字重复.
- 2)在c#中,大小写是敏感的.
- 3)同一个变量名不允许重复定义(先这么认为,不严谨)
l 定义变量时,变量名要有意义
l C# 变量命名编码规范——Camel 命名法:
- 首个单词的首字母小写,其余单词的首字母大写。
l Pascal命名规范:每一个单词第一字母都大写
如果使用到英文单词的缩写,全部用大写!
------匈牙利命名法则
赋值运算符和赋值表达式
l 赋值运算符:=
l a=a+1; 这里的=号是赋值运算符,不是数学义意上的相等.
l 变量可以重复赋值,一旦给一个变量赋了新值,那么变量中的老值就不复存在了.
l 右边代码的输出结果:
演示:
l 定义一个变量存储客户的姓名,然后在屏幕上显示:”你好,某某”.
- 某某代表客户的姓名
- +号可以连接两个字符串,这里的“+”号表示连接的意思
练习:
l 1. 定义3个变量,分别存储一个人的姓名(张三),年龄(28),和工资(7600.33).然后在屏幕上显示,我叫XX,今天X岁了,我的工资是XX元.
l 2. 定义一个变量存储一个人的年龄(18),然后发现这个人的年龄不是18岁,要把这个人的年龄修改成20岁(本题体会变量可以被重复多次赋值),最后把这个人的年龄输出到屏幕上?
l 3.定义四个变量,分别存储一个人的姓名、性别、年龄、电话。然后打印在屏幕上 (我叫X,我今年 X岁了,我是X生,我的电话是XX)
l 4.在屏幕上输出:我的手机是philips 型号:998 价格:1500元 重量:0.3kg
l 请定义变量存存储上面的值,并显示在屏幕上.
l 5.定义两个变量如:a b分别赋值为10和5,写程序交换两个变量的值
在Console.WriteLinea(“”);中,第一个变量/字符串中可以使用占位符
占位符由“{数字}”组成,数字由0开始编号
第一个占位符{0}
第二个占位符{1}
第三个占位符{3}……
Console.WriteLine();有多个参数时,输出都是第一个参数中的内容,从第二个参数开始,都是用来替换第一个参数中的占位符的值,所以从第二个参数开始,要不要输出,就要看第一个参数中,有没有相关的占位符
电话号码要存为string类型
在学习一句话,用于让用户从键盘上输入一句话,当程序执行到下面这句话,就会暂停,然后等待用户从键盘上输入一句话,按回车程序将继续执行,如果想得到用户输入的内容,就需要定义一个string类型的变量,卸载下面这句话前面,接收用户输入的内容。
Console.ReadLine();
接收用户输入的内容,必须定义一个字符串来进行接收。
String input=Console.ReadLine();
字符串中的转义
l 能在字符串中输出双引号吗?
在屏幕上显示: c#中的字符串用” ”号包含起来
l \+一个字符,组成转译字符.一般用于表示特殊符号
l @字在字符串前面表示不转译
l 常用的转译符:\n \b \t \\ \”
字符串前面加一个@符号有两种意义:
1字符串中如果有\,则不再理解为转义字符
2使字符串可以换行定义
算术运算符及算术表达式
l 算术运算符: + - * / %(取余数 取模)
l 算术表达式:由算术运算符连接起来的式子.如:1+1 a-b(变量ab前面已声明并赋初值)
l 演示:某学生三门课成绩为,语文:90 数学:80 英语:91,编程求总分和平均分.
l 优先级:先乘除,后加减,有括号先算括号里的,相同级别的从左至右运算
l 小括号可以无限制的套用,但一定要成对出现.
练习
l 练习1:定义两个数分别为10和20,打印出两个数的和。
l 练习2:计算半径为5的圆的面积并打印出来.
l 练习3:某商店T恤的价格为35元/件,裤子的价格为120元/条.小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
类型自动转换规则
l 参与运算(算术运算和赋值运算)的操作数和结果类型必须一致. 当不一致时,满足下面条件时,系统自动完成类型转换
l 两种类型兼容
u 例如:int 和 double 兼容
n 目标类型大于源类型
u 例如:double > int
l 对于表达式
n 如果一个操作数为double型,则整个表达式可提升为double型
n 比如前面打8.8折的练习题.
n 求10/3求余数要想得到3.333的处理.
强制类型转换
l 如上题中打完8.8折后出现小数,商店为了结算方便,只收用户整数部分的钱,如本应收用户303.6,现在只收用户303元,应该如何做?
l 语法:
- (数据类型名)待转换的值;
l 如:
int b = (int)3.14;
强制类型转换,数据类型一定要相兼容 下面的写法对吗?
int number = (int)”3.14”; X
类型转型
l 问题:让用户输入他的语文和数学成绩,计算他的总成绩并显示出来?
l Convert不再仅是内存级别的转换,而是考虑数据意义的转换。Convert是一个加工、改造的过程
l 通过 Convert.ToInt32(能转换成int类型的数据)来把其他类型数据转换成int类型
l 练习:
l 让用户输入姓名 语文 数学 英语 三门课的成绩,然后给用户显示:XX,你的总成绩为XX分,平均成绩为XX分。