10-09C#语言基础

第一课

一、新项目的建立:打开Visual studio2012,单击“文件→新建项目→模板isualC# Windows 控制台应用程序→确定”即可。

 

在新建的项目中,首先要了解它的完整的项目结构,即它的组成部分。

1、文件后缀:不同的文件后缀,文件类型不同。

.cs-------源文件(程序代码),.net中专门存放源文件的文件类型。

.csproj-------项目文件,即新建项目的文件类型。

.config-------配置文件,存放程序需要的配置、参数

.sln-----------解决方案文件

2、常用快捷键的使用以及基本操作:

分号(;):语句的结束必须使用;

双反斜线(//):注释一行,从右向左倾斜

/*.........*/:省略处(注释一段区域)

快捷键的使用:

Ctrl+(K,C) 注释选中行

Ctrl+(K,U) 取消注释选中行

Alt+→ 提示,更改

Ctrl+X 剪切一行,光标自动下移一行

(1)若把下面其中一个中括号删除,再重新写入,不在原来位置的数据,系统会自动将其恢复到原来位置。

(2)在Visual studio2012菜单栏中,修改字体和颜色的具体步骤:“工具→选项→环境→字体和颜色”

(3)在编辑框中加入行号的方法:“工具→选项→文本编辑器→所有语言→行号”

3、基本操作结构:

(1) 主函数(程序开始执行的操作)

static void Main(string[] args) //下划线部分可以自己随便命名

{

主函数内容

}

(2)输入语句

String s = console.Readline();  //读取一行数据,并赋值给s.(所读取的数据都默认为字符串型)

Console.Read();只读取一个字符,不会自动换行

console.Readkey();获取一个字符或功能键,不会自动换行。

(3)输出语句

Console Writeline(“要输出的内容”);

Console Write(“要输出的内容”);

Writeline与write的区别:writeline输出后自动换行。

4、编写一项较完整的控制台应用程序的界面:

第二课  预定义数据类型

(跟字节有关):1字节(Byte)=8位(bit),)。了解一下字节的概念:数据存储是以“字节”(Byte)为单位,数据传输是以“位”(bit)为单位,一个位就代表一个0或1(即二进制),每8个位(bit)组成一个字节(Byte)。8bit=1Byte 注意1b不等于1B,数据存储是以10进制表示,数据传输是以2进制表示所以1KB不等于1000B,1KB=1024B,1KB=1024Byte=1024×8bit

一、值类型

1、整形(整数类型):分为有符号整形和无符号整形,区别是无符号整形的整数范围要比有符号整形的整数范围大,2x+1;

有符号整形(有正、负之分):sbyte,int(使用最多),short,long,带有正负数,范围按所写一次增大;

无符号整形(无正负之分):byte,ushort,uint,ulong,只有正数,范围也依次增大。

2、浮点型(三种,区别在于小数点后的位数不同):

Float:小数点后最多7位

Decimal:小数点后最多28-29个有效位(使用最多)

Double:小数点后最多15-16位

3、字符型(Unicode类型):单字符,用单引号’’

Char

例:char1=’hello world’;

4、字符串型:

String(实际是引用类型)等同于字符型的概念,长度较长,定义的时候需要加双引号””

5、布尔型bool(判断返回值对错): True,false,(应用最多)

6、日期时间型:Datetime

7、枚举类型(相当于前面提及的类型的多元体):

Enum E(....)形式的用户定义类型

8、结构类型:

Struck S(.....)形式的用户定义类型

二、引用类型(实际操作中应用最多)

1、字符串型:String等同于字符型的概念,长度较长,定义的时候需要加双引号””

2、类 类型:

class就相当于类,归属;在做其他的项目中可以应用的类型。Class C(...)形式的用户定义的类型,(应用最多)

Object相当于母体(所有其它类型的最终基类)

3、接口类型:

Interface(...)不同程序之间对接的类型,一般不用。

4、数组类型:

一维和多维数组,例如int[](定义一组数据)和int[ , , ](定义多组数据)。

5、类型总结:

类别

说明

值类型

简单类型

有符号整形:sbyte,short,int,long

无符号整形:byte,ushort,,uint,ulong

Unicode字符:char

IEEE浮点型:float,double

高精度小数:decimal

布尔型:bool

枚举类型

Enum E {.....}形式的用户定义类型

结构类型

Struct S {.....}形式的用户定义类型

引用类型

类类型

所有其他类型的最终基类:object

Unicode字符:string

Class C{.....]形式的用户定义类型

接口类型

Interface I{.....}形式的用户定义类型

数组类型

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

委托类型

Delegate T.D(....)形式的用户类型

第三课  变量和常量

一、变量:

1、变量的命名:

组成:字母、数字、下划线、@、汉字

:首字符只能是字母、下划线、@、汉字

不能与系统关键字重名。

2、变量的定义:数值类型 变量名[ = 值 ],[ ]内的内容不是必填;

例:int a=1

例:int i = 0;

Char c=’a’;

二、常量(硬性取值,也就是固定值)

1、分类:符号常量和字面常量

2、符号常量定义:变量声明前加关键字const

例:const int a=3

注:变量与常量的区别:变量可以赋值,可以取值;

                              常量不能赋值,只能取值。

在Visual studio2012中的操作:

最后得出:

三、转义字符

[\t]  tab键字符

例: Console.Write("xiaopingguo\t你是我的小丫小苹果");

执行后:

[\\]   反斜线,从左向右倾斜;

例:Console.Write("xiaopingguo\\你是我的

小丫小苹果");

执行后:

[\’]  单引号(同下面双引号的操作)

[\“]  双引号

例:Console.Write("xiaopingguo\"你是我的小丫小苹果");

执行后:

[\n]  换行(\next),相当于shift+回车键

例:Console.Write("xiaopingguo\n你是我的小丫小苹果");、

执行后:

[\r]  回车(\return)

例:Console.Write("xiaopingguo\r你是我的小丫小苹果");

执行后:

补充:

[@] @"....."直接转义一行数据,@语句操作只是针对字符串类型操作的;

例:string s=@"这是@转义字符\\的功能";

执行后:

当在@语句中出现两组双引号时,在执行界面中只显示一组。

例:string s=@"这是转义““字符”‘”\\的功能";

执行后:

最后,注意区分、掌握一下内容,它们其中并无联系;

Console.ReadKey():获取用户按下的下一个字符或功能键,即等待按键并读取,任意按一个键。

Console.ReadLine():(string类型)从标准输入流读取下一行字符,即读取一行,按下回车键。

ConsoleRead():(int类型)从标准输入流读取下一个字符。

Console.Write():输出内容,系统不自动换行。

Console.WriteLine():输出内容,系统自动换行。

10-09C#语言基础的更多相关文章

  1. GO学习-(10) Go语言基础之指针

    Go语言基础之指针 区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针. 要搞明白Go语言中的指针需要先知道3个概念:指针地址.指针类型和指针取值. Go语言中的指针 任何程序数 ...

  2. [Coursera][计算导论与C语言基础][Week 10]对于“数组应用练习”课后习题的思考题的一些想法

    (首先,关于Honor Code,我咨询过了Help Center,分享课后练习的思考题的想法是可以的(注意不是代码),但要标明引用,引用格式来源于https://guides.lib.monash. ...

  3. C语言基础 (10) 变量作用域,生命周期 内存结构

    01 课程回顾 1.指针数组 注意: 对于数组来说,在使用sizeof的时候a和&a[0]是不一样的, 虽然以%x打印出来他们都是地址 2.值传递 int a; fun(a); int *** ...

  4. 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(下)

    索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 五.透视.逆透视及分组 5.1 透视 所谓透视( ...

  5. 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(上)

    索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 一.SQL Server体系结构 1.1 数据库 ...

  6. C#语言基础

    第一部分 了解C# C#是微软公司在2000年7月发布的一种全新且简单.安全.面向对象的程序设计语言,是专门为.NET的应用而开发的.体现了当今最新的程序设计技术的功能和精华..NET框架为C#提供了 ...

  7. C语言基础回顾

    第一章 C语言基础 1.  C语言编译过程 预处理:宏替换.条件编译.头文件包含.特殊符号 编译.优化:翻译并优化成等价的中间代码表示或汇编代码 汇编:生成目标文件,及与源程序等效的目标的机器语言代码 ...

  8. R语言基础:数组&列表&向量&矩阵&因子&数据框

    R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...

  9. OC语言基础知识

    OC语言基础知识 一.面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能 ...

  10. Java学习总结(二)----Java语言基础

    1.     Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,i ...

随机推荐

  1. UVA 11029 || Lightoj 1282 Leading and Trailing 数学

    Leading and Trailing You are given two integers: n and k, your task is to find the most significant ...

  2. Python之异常总结

    一.异常错误 a.语法错误 错误一: if 错误二: def text: pass 错误三: print(sjds b.逻辑错误 #用户输入不完整(比如输入为空)或者输入非法(输入不是数字) num= ...

  3. Struts2学习(1)

    struts2概述 1.struts2框架应用javaee三层结构中web层框架. 2.strut2框架在struts1和webwork基础之上发展全新的框架. 3.struts2解决的问题: 4.版 ...

  4. Amazon EMR(Elastic MapReduce):亚马逊Hadoop托管服务运行架构&Hadoop云服务之战:微软vs.亚马逊

    http://s3tools.org/s3cmd Amazon Elastic MapReduce (Amazon EMR)简介 Amazon Elastic MapReduce (Amazon EM ...

  5. JS循环遍历JSON数据的方法

    JSON数据如:{"options":"[{/"text/":/"王家湾/",/"value/":/" ...

  6. EF各版本增删查改及执行Sql语句

    自从我开始使用Visual Studio 也已经经历了好几个版本了,而且这中间EF等框架的改变也算是比较多的.本篇文章记录下各个版本EF执行Sql语句和直接进行增删查改操作的区别,方便自己随时切换版本 ...

  7. LeetCode Relative Ranks

    原题链接在这里:https://leetcode.com/problems/relative-ranks/#/description 题目: Given scores of N athletes, f ...

  8. hw_module_t 加载过程

    每一个HAL模块都有一个ID值,以这些ID值为参数来调用硬件抽象层提供的函数hw_get_module就可以将指定的模块加载到内存来,并且获得 一个hw_module_t接口来打开相应的设备. 函数h ...

  9. TP中登录验证

    loginpro 1.建立控制器 loginController.calss.php <?php namespace Admin\Controller; header('Content-type ...

  10. bzoj 4591 [Shoi2015]超能粒子炮·改——组合数前缀和

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4591 先说说自己的想法: 从组合意义的角度考虑,从n个里选<=k个,就添加k个空位置, ...