内存:用户存储正在运行的程序数据(不准备) RAM 内存有个特点,断电后里面的数据资料丢失
变量:变量代表着一块内存空间,我们可以通过变量名称向内存存/取数据,有了变量就不需要我们记忆复杂的内存地址了
向内存申请一块内存空间的语法:数据类型 变量名;
一、常用数据类型
1、整型:int(实际占用存储空间是32位);
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02变量
{
class Program
{
static void Main(string[] args)
{ //计算两个数的和
int x, y, sum;//开一个能放数据的空间
x = 5; //把5放入x所代表的的空间当中
y = 10;//把10放入y所代表的空间当中
sum = x + y;//求和
Console.WriteLine("两数之和为:" + sum);
Console.ReadKey();
}
}
}
2、非整型:double 小数(存储64位浮点值简单类型),decimal适用于财务和货币计算(表示128位数据类型);
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02变量
{
class Program
{
static void Main(string[] args)
{ //计算两个数的和
double pi, r, s;
r = 10.8;//圆的半径
pi = 3.14;//通用值∏
s = pi * r * r;//计算圆的面积S=∏R²
Console.WriteLine("圆的面积为:" + s);
Console.ReadKey();
}
}
}
注意:在C#开发环境中直接写一个有小数点的数字,这个数字是double类型的.在一个小数后面加m/M,就告诉编译器这是一个decimal类型
3、非数值型:char,string,bool 等。
char:字符型,只能存储一个字符,并且存储的这个字符需要用单引号引起来’’;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02变量
{
class Program
{
static void Main(string[] args)
{
char ch1, ch2;
ch1 = '\u0058'; //对应字符X
ch2 = 'Y';
Console.Write("ch1 and ch2 :");//输出后不换行
Console.WriteLine(ch1 + " " + ch2);//输出后换行
Console.ReadKey();
}
}
}
string:字符串,就是把0个或1个或多个字符连接起来,字符串要求用双引号引起来;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02变量
{
class Program
{
static void Main(string[] args)
{
string name;
name = "张三";
Console.WriteLine("你好" + name);
Console.ReadKey();
}
}
}
bool:布尔型,表示逻辑的值得基本类型,它只有两个值true和false。布尔类型是所有诸如a<b这样的关系运算的返回类型,他对管理控制语句的表达关系式也是必须的。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02变量
{
class Program
{
static void Main(string[] args)
{
bool b;
b = false;
Console.WriteLine("b is" + b);
b = true;
Console.WriteLine("b is" + b);
//关系运算操作结果为bool值
Console.WriteLine("10>9 is" + (10 > 9));
Console.ReadKey();
}
}
}
二、声明变量的三种方法
1) 先声明,后赋值 int a; a=10;
2) 定义变量时,直接赋值 int a=10;
3) 一次声明多个同类型的变量,多个变量名称之间要用,分隔,最后以;结束
string zsName,lsName;
string zsName="张三",lsName="李四";
注意:
1)变量一定要先声明,后赋值,最后使用(取值/调用/写这个变量名)
2)C#区分大小写
3)不能以数字开头,后面不能有空格 $等特殊符号(单词变量名中不能有特殊符号)
三、变量命名规则
1)必须以字母、_或@符号开头;2)后面可以跟任意字母、数字或下划线;
3)不要与系统中的关键字重复;
4)同一个变量名不允许重复定义。
C#关键字
C# 变量命名编码规范——Camel 命名法:首个单词的首字母小写,其余单词的首字母大写。
如:zsAge studentName name
Pascal命名规范:每一个单词第一字母都大写
如:SoftwareName
如果使用到英文单词的缩写,全部用大写!
在方法中定义变量,要使用Camel 命名法。Main方法中也是
如:strName iAge
四、赋值运算符和赋值表达式
运算符和赋值表达式
赋值运算符:=
a=a+1;
这里的=号是赋值运算符,不是数学义意上的相等.
变量可以重复赋值,一旦给一个变量赋了新值,那么变量中的老值就不复存在了.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02运算符
{
class Program
{
static void Main(string[] args)
{
int nl = 18;
nl = 20;
Console.WriteLine(nl);
Console.ReadKey();
}
}
}
“+”在C#中有两种意义
1) 是数学中的加法运算:两边参与加法运算的数据类型为数字类型,则“+”表示数学上的加法的意义
2) 是连接的意思:两边参与加号运算的数据,有一个是字符类型,那么这个“+”号就是连接的意义。
都是数字类型 int double decimal 加法运算
String char 连接运算
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02运算符
{
class Program
{
static void Main(string[] args)
{
int a = 1;
int b = 2;
string c = "3";
string d = "hello world";
Console.WriteLine(a + b);//加法运算
Console.WriteLine(a +" "+ c);//连接运算
Console.WriteLine(c +" "+ d);//连接运算
Console.ReadKey();
}
}
}
五、占位符
Console.ReadLine();用于让用户从键盘上输入一句话,当程序执行到下面这句话,就会暂停,然后等待用户从键盘上输入一句,按回车程序将继续执行.
如果想得到用户输入的内容,就需要定义一个string类型的变量,写在下面这句话前面,用于接收用户输入的内容。
String input= Console.ReadLine();
在Console.WriteLine(""); 中,第一个变量/字符串中可以使用占位符。
占位符由{数字}组成,数字由0开始编号
第一个占位符:{0}
第二个占位符:{1}
第三个占位符:{2}
第四个占位符:{3}
。。。
占位符可以重复使用
,分隔的是参数 参数打完,可以择行来写
Console.WriteLine("");有多个参数时,输出的都是第一个参数中的内容,从第二个参数开始都是用来替换第一个参数中的占位符的值,所以从第二个参数开始要不要输出,就要看第一个参数中有没有相关的占位符。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _02占位符
{
class Program
{
static void Main(string[] args)
{
string name = "喵喵";
int age = 28;
decimal selary = 7600.33m;
// Console.WriteLine("我叫" + name + "," + "今年" + age + "岁了" + "," + "我的工资是" + selary + "元" + ".");
Console.WriteLine("我叫{0},今年{1}岁了,我的工资是{2}元.",name,age,selary);
Console.ReadKey();
}
}
}
六、转义字符
什么时候用?
当我们需要在字符串中输入一些特殊字符时,比如:半角引号,换行,退格。就需要使用转义字符。
转义字符时一个字符,可以赋为char类型,他由一个\+一个字母组成具有特殊意义的一个字符
\n 表示换行
\b backspace 表示退格
\t tab键 由多个空格组成的一个字符,具有行与行之间的对齐功能
\\ 表示一个\
在字符串前加一个@符号有两种意义:
1. 字符串中如果一\,则不再理解为转义符
2. 使字符串可以换行定义
如果字符串前面加了@符号,在字符串上用两个双引号代表一个双引号
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _07转义字符
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("C#中的字符要用\"\"引起来");
Console.WriteLine(@"F:\TDDOWNLOAD\utf8''
传智播客.NET基础提高视频
(2011新版)");
Console.ReadKey();
}
}
}
七、交换两个变量的值
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _05交换两个变量的值
{
class Program
{
static void Main(string[] args)
{
int a = 10;
int b = 5;
//这样写并没有交换a与b的值
//Console.WriteLine("a={0} b={1}",b,a);
int temp ;
temp = a;
a = b;
b = temp;
Console.WriteLine("a={0} b={1}",a,b);
Console.ReadKey();
}
}
}