C# 变量
Mwyldnje2003 人气:01、变量操作
1.1 变量声明、赋值
要在计算机中存一个数字50需要两句话
声明变量的语法格式: 数据类型 变量名 (int a; )
赋值: 变量名=值; (a=50;)
数据有整型(int) 小数(double)字符串(string)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 变量 { class Program { static void Main(string[] args) { Console.WriteLine("学习变量的存储"); int a; a = 50; //int为整型变量,不能赋值小数 a=3.14是错误的 Console.WriteLine(a); Console.ReadKey(); double b; //声明double类型数据 b = 3.14; // 给double类型变量赋值 Console.WriteLine(b); Console.ReadKey(); double d; d = 10; Console.WriteLine(d); Console.ReadKey(); String c = "This is a string"; //声明同时赋值 Console.WriteLine(c); Console.ReadKey(); //一次声明多个相同类型的变量,用逗号分割 string aa="Hello ", bb = "The ", cc = "World"; Console.WriteLine(aa + bb + cc); Console.ReadKey(); } } }
1.2 赋值运算符和赋值表达式
赋值运算符“=”
变量可以重复赋值,一旦给一个变量赋了新值,那么变量中的老值就不复存在了
1.4变量命名规则
- 必须以“字母” 下划线或@符号开头,不要以数字开头
- 后面可以跟任意“字母”,数字,下划线;
注意:
你起的变量名不要与c#系统中的关键字重复。在c#中,大小写是敏感的,同一个便令名不允许重复定义(先这么认为,不严谨),定义变量时,变量名要有意义
如果使用英文单词的缩写,全部用大写!
2 常量
常量是指在程序运行中不能改变的数据,定义一个常量与定义一个变量过程类似,只是多加一个关键词const
定义格式: const 数据类型 常量名称=常量值
注意一定要给常量赋值赋值后不能改变
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace changliang { class Program { static void Main(string[] args) { Console.WriteLine("学习常量的存储"); double r = 5; const Double pi = 3.14; //定义常量 Console.WriteLine("圆的周长是" + 2 * pi * r); Console.WriteLine("圆的面积是" + pi * r*r); Console.ReadKey(); } } }
2.1 变量常量作用域
一般确定作用域有一下规则:
局部变量存在于声明该变量的块语句或方法的大括号内,例如for while foreach等训话语句声明的变量,只作用于该循环体内。
总之变量的作用域为包含它的大括号内
2.2 @作用
- 或略转义字符,例如 string filename=“d:\csharp\text.txt”, 使用@后 string filename=@“d:\csharp\text.txt”
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace changliang { class Program { static void Main(string[] args) { Console.WriteLine("学习常量的存储"); double r = 5; const Double pi = 3.14; //定义常量 Console.WriteLine("圆的周长是" + 2 * pi * r); Console.WriteLine("圆的面积是" + pi * r*r); Console.Write("输出完此行后换行吗?"); Console.Write("输出完上面语句后不换行"); Console.WriteLine(); Console.Write("输出完此行后换行吗?\n"); Console.Write("输出完上面语句后换行\n"); Console.WriteLine(); Console.Write(@"输出完此行后换行吗?\n"); //使用@后,避免转义字符,将会原样输出 Console.Write("输出完上面语句后不换行"); Console.ReadKey(); } } }
- 让字符串跨行,有时候
在标识符中的用法:
C#是不允许关键字作为标识符(类名,变量名,方法名,空间名等)使用的,但如果加上@之后就可以了@namespace @class
3 数据类型之值类型
3.1数据类型
- 数据类型是标识具有多种相同特征的一组数据
- C#预定义的数据类型包括两组值类型,应用类型
- 值类型时在栈中操作,而引用类型则在堆中分配储存单元
- 从字面上理解就是直接保存其值,如int(整型)就属于值类型,如果声明了一个整型变量,并给他富裕另一个整型变量的值,则在内存事先复制一个整型变量的值,然后将其赋予刚声明的整型变量,这时内存中就会有两个整型值。
- 引用类型的变量在内容中是直接保存其值的引用。C#语言中大多数负责数据类型都是引用类型,例如类就是引用类型。
3.2 理解内存原理
内存可以分为三大块:堆、栈、静态存储区(只能存储静态成员)
4 数据类型之引用类型
5. console.ReadLine()及Console.WriteLine();
console.ReadLine() :用于接收用户的输入,要定义一个字符串变量来接收储存用户输入值
Console.WriteLine() 双引号内中的内容可原样输出,但是转义字符及索引号{i}除外,索引号必须从零,不间断地顺延
练习:问用户喜欢吃什么水果,加入用户输入苹果,则显示“哈哈这么巧,我也喜欢吃苹果”
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace changliang { class Program { static void Main(string[] args) { Console.WriteLine("请输入您喜欢的水果"); String friut; friut = Console.ReadLine(); Console.WriteLine("这么巧,我也喜欢吃"+friut); Console.Read(); } } }
练习2:请用户输入姓名、性别、年龄,当用户按下某个键后,在屏幕上显示:“您好:XX您的年龄是XX是个x生”
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace changliang { class Program { static void Main(string[] args) { Console.WriteLine("请输入您的姓名"); String name; name = Console.ReadLine(); Console.WriteLine("请输入您的年龄"); String age = Console.ReadLine(); //用户与接收用户输入,输入类型默认为字符串string类型 Console.WriteLine("请输入您的性别"); String sex = Console.ReadLine(); Console.WriteLine("您好:"+name+",您的年龄是"+age+"是个"+sex+"生"); Console.WriteLine("您好:{0},您的年龄是{1}是个{2}生",name,age,sex); Console.Read(); } } }
加载全部内容