岁月如诗

导航

C#语言基础

 

第一部分 了解C#

一、C#的定义及其特点

C#是微软公司在2000年7月发布的的一种全新且简单、安全、面向对象的程序设计语言,是专门为.NET的应用而开发的语言。它吸收了C++、Visual Basic、Delphi、Java等语言的有点,体现了当今最新的程序设计技术的功能和精华。NET框架为C#提供了一个强大的、易用的、逻辑结构一直的程序设计环境。同时,公共语言运行时(Common Language Runtime)为C#程序语言提供了一个托管的运行时环境,是程序比以往更加稳定、安全。其特点有:

●语言简洁

●保留了C++的强大功能                

●快速应用开发功能

●语言的自由性

●强大的Web服务器控件

●支持跨平台

●与XML相融合

二、Visual Studio NET的集成开发环境

.NET开发语言都采用了统一的集成开发环境Visual Studio.NET。下面加以介绍,

(1)       Visual Studio2012起始页

启动Visual Studio.NET后,首先看到一个起始页。在起始页可以打开已有项目或建立新的项目。

(2)新建的VisualC#.net项目

在Visual Studio.NET集成开发环境中,通过执行“文件”→“新建”→“项目”菜单命令,将会弹出“新建项目”对话框中,可以选择不同的编程语言来创建各种项目,这些语言将共享Visual Studio NET的集成开发环境,如图所示

 

第二部分C#语言基础

首先要了解C#项目的组成部分,对C#开发环境有大致概念。

一C#项目的组成结构:

1、项目结构:

1.1项目后缀

.config—配置文件(存放配置参数文件)

.csproj项目文件(管理文件项)

.sln—解决方案文件(管理项目)

.cs源文件(程序代码)

注:后缀不同代表文件类型也不同,这些文件后缀类型会在“解决方案资源管理器”中看到。

1.2:函数的四要素:名称,输入,输出,加工

1.3主函数,输出语句,输入语句:

Static void Main(string[]args)//下划线部分可以自己指定

主函数内容

Console(控制台).ReadKey();//输出语句

Console.Readline();//输入语句

Console.WriteLine();//输出语句,自动换行

Console.Write();//输出语句,不自动换行

1.4

namespace ConsoleApplicationl    命名空间

class                          类

static  void  Main(string[] args)方法

1.5快捷键的使用:

Alt+→提示,需要执行程序时点击启动或Ctrl+F5

Ctrl+k,然后按ctrl+c,注释本行

Ctrl+k,然后按ctrl+u,取消注释

Shift+delete  一删删一行

Ctrl+X      剪切一行

Ctrl+shift+space 将光标放在方法函数括号里面时使用,显示重载

1.6注意事项

1,注释的三种方式:

//表示注释一整行

/**/注释一段区域

///放在函数上面使用,给函数加注解

2,在一行中声明相同类型的多个变量之间用逗号分开。

例:int    a,b:(声明变量类型,用逗号隔开)

3,同一语句中,不能呢个对同一个变量名声明成同一个类型两次

Int  a=34 ; Int  a=22;(错误)

4,using表示程序引用的库,以下的system等,表示控制台这些库由.netframework

提供

5,新建项目时,自动创建一个命名空间,即namespace命名空间

 

 

 

 

 

 

 

 

二:数据类型

 

 

C#语言

.NET类型 (通用语言)

大小(字节)

值区间

基本

数据

类型

 

整型

byle

Byte

  1

0···255

short

Int16

  2

 -32768—32767负的2的1

int

Int32

  4

 负的2的31次方正的2的减1

long

Int64

  8

 负的2的63次方到正的2的63次方减1

 浮点型

float

Single

  4

 

Double(默认小数)

Double

  8

 

decimal

Decimal

  16

 

字符型

char

Char

  2

任意字符

 布尔型()只允许放对错)

Bool(判断是否成立)

Boolean

  1

True或false

  引用类

字符串型

string

String

 

字符序列

值类型

日期时间

DateTime

 

 

 

枚举类型

ENUM

 

 

 

结构类型

struct

 

 

 

*无符号整形2倍于有符号整形加1  uint=2 *int+1

*无符号整形 : sbyte,uint,ushort,ulong’

*一个汉字占用两个字符,一般用英语或者拼音

三;引用类型

1,字符串类型

String等同于字符型,长度较长,定义是用双引号

例:string a =“hello”;string b=“h”

class Program

    {

        //程序的入口

        static void Main(string[] args)

        {

            //输出语句,打印不换行

            //Console.Write("这是我的第一个C#程序!");

            //输出语句,打印完成换行

            //Console.WriteLine("Hello world!");

 

            //输入语句,等待直到接收到回车命令为止,获取一整行内容

            //string s = Console.ReadLine();

            //一个等号表示赋值号

            //Console.WriteLine(s);

            //Console.ReadLine();

注意:

1.大小写敏感;

2.所有的符号全都用英文;

3.不要漏掉;。

 

2,类类型

Object所有其他类型的最终基类

3,接口类型

Interface

4,数组类型

一维和多维数组,如int[]和int[,,,,]

四:C#转义字符:

\’ 单引号     \” 双引号     \\ 反斜杠   \0 空

\a 警告(产生峰鸣)   \b 退格    \f 换页   \n 换行

\r 回车     \t 水平制表符         \v 垂直制表符

五:变量,常量

1:变量名的命名规则:

1.1:变量名组成:字母,数字,下划线,@,汉字。

1,2:首字母只能用字母,下划线,@,汉字

1,3:不能与关键字重名

2:变量的定义:

数据类型  变量名 [=值];   //[]内的值可以不写

例子:int  a=1;

3:变量名前加关键字(不能赋值,只能取值):const

例子:const  int a=1;

 

六:基本的类型转换:

1,自动转换(隐式转换)--从值类型转换到引用类型时候

2,强制转换(显式转换)--从引用类型转换到值类型时候,或者从浮点型转换到整形

当从一个引用类型转换到值类型时,必须引用类型中的数据元素,能够转换成值类型的容量范围内的数据才行,否则不能转。

1>:用();

例子:int a;double b=12.3;a=(int)b;

2>:用convert;

例子: int a;    float c;    double b=12.3;

a=convert.ToInt32(b);

c=convert.Tosingle(b);

3>:用parse;

例子: int a;  double b=12.3;

a=int.parse(b);

七:运算符

分类

符号

解释

优先级

 

算数

++   --

加加   减减

由高到低,即执行顺序由上到下.(圆括号的优先级最高)

*/%

乘  除  取余

+  -

加  减

关系   

>  <    >=   <=  

大于 小于 大于等于 小于等于

==     !=

等于  不等于

 

逻辑

&&

与(并且)

||

!

非(注:优先级在此表的最顶层)

条件运算符

?:

惟一的一个三元运算符  如果

赋值

=    +=  -=  *=    /=   %=

 如:x-=4.即x=x-4;

1:前++和后++的区别(-- 一样)加加在前,先运算后赋值;加加在后面时,先赋值在运算

int a = 10,b=a++;

Console.WriteLine("a=" + a);

Console.WriteLine("b=" + b);结果:a=10  b=11

int a = 10, b=++a;

Console.WriteLine("a=" + a);

Console.WriteLine("b=" + b);结果:a=11  b=11

2.条件运算符:

例子:x=(x>12)?1:2;  //假如x>12,那么就返回1,否则就返回2

一、算数运算符:

+  -  *  /  %  ++  --

注意:

1.做除法运算的时候,如果两个操作都是整数,则运算之后的结果也是整数。

2.做算数运算的时候,如果两个被操作的数不是同一类型,则会在运算的时候会自动进行类型转换。

 

%  模   取余的用途

1.判断a是不是b的倍数(是否能够整除)====>a%b是否==0

2.判断a的个位是不是b====>a%10是否==b

3.把数变成某个范围之内的数(利用余数一定比除数小的定理,比如十六进制里面最大的单个数是F(15))

 

++  --

int a =5;

int b= a++;  ====>可以写成int b =a; a = a+1;

int c = ++a;====>可以写成a = a+1; int c =a;

运算出来的结果就是

b = 5;

c = 7;

注意:++  --这两种运算只能应用于变量(5++是不对的!!常量也是不可以使用的!!)

 

 

二、关系运算符:

==  !=  >  <  >=  <=

关系运算符运算结果统统是bool型(结果不是Ture就是False)

 

int a = 5;

int b = 6;

Console.WriteLine(a == b);   ====>False

Console.WriteLine(a != b);   ====>True

Console.WriteLine(a > b);    ====>False

Console.WriteLine(a < b);    ====>True

Console.WriteLine(a >= b);   ====>False

Console.WriteLine(a <= b);   ====>True

 

注意:==    不能写成 =(一个=是赋值的意思)

 

 

三、逻辑运算符:

&&  ||  !

&&====>两个条件都成立,结果为True,否则False

||====>两个条件只要有一个成立,结果为True,两个都不成立为False

!====>将原来的结果取相反的(若本来为True,取反就是False)

 

四、其他运算

= ====>赋值运算,将后面的值赋给左侧的变量。(注意:只能是变量)

+=  -=  *=  /=  %=  ====>复合运算符(例:a += b;(意思是a = a +b;))

 

条件运算符小练习
老狼老狼几点了? 若是上午出现am,下午出现pm
若是下午,需要报时的时候减去12
Console.Write("老狼老狼几点了?");
int time = int.Parse( Console.ReadLine());
string s = time > 12 ? (time-12)+"pm" : time+"am";
Console.WriteLine(s);
Console.ReadLine();

 

1.键盘键入三个数,找出来最大的数。
Console.Write("输入一个a值");
double a = double.Parse(Console.ReadLine());
Console.Write("输入一个b值");
double b = double.Parse(Console.ReadLine());
Console.Write("输入一个c值");
double c = double.Parse(Console.ReadLine());
double d =a>b ? a:b;
double e = d > c ? d : c;
double e = (a > b ? a : b) > c ? (a > b ? a : b) : c;
Console.WriteLine("最大的数是"+e);
Console.ReadLine();

 

 

posted on 2016-06-19 15:49  镜花水月☪  阅读(207)  评论(0编辑  收藏  举报