编程入门——工具初识、数据类型转换、数字类型
编程入门
零、引言
当我们学习一门语言时,最开始的是从一段代码开始,而书写和运行代码是从认识语言和使用工具展开。一个好的工具能对启蒙者有着寓意深远的影响。那么怎么界定一个好的工具选择呢?
一、工具初识
1.计算机语言:含义:指用于人与计算机之间的通讯语言。 计算机系统最大特征是指令通过一种语言传达给机器。为了使电子计算机进行各种工作,就需要有一套用以编写计算机程序的数字、字符、和语言规划,由这些字符和语法规则组成计算机指令(或各种语句)。这些就是计算机能接受的语言。二进制是计算机使用的一种计数方式,在我们现实世界中,有十个数字(0-9),因此,到达十的时候,数字不够用了,就必须要进一,这叫做逢十进一。而计算机只能识别高电平和低电平两种状态,它只能使用两个数字(0-1)来表示,因此,到达二的时候,数字不够用,就必须要进一,这叫做逢二进一。而我们人类是无法识别计算机语言的,
2.编译:
(1)、利用编译程序从源语言编写的源程序产生目标程序的过程。
(2)、用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。 编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。编译语言是一种以编译器来实现的编程语言。它不像直译语言一样,由解释器将代码一句一句运行,而是以编译器,先将代码编译为机器码,再加以运行。理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。
(3)、开发一个程序的过程: Code(编码/源代码) → Compile(编译)→ Run :
Cod步骤:1.使用C#语言 ;2.在Windows记事本编写文本文件D:MyFirstProgram.txt; 3.查看文件,勾选全称文件名为xxxx.txt文件形式 4. 在txt文件编写代码(计算机在控制台上输出“”里面的文件:Hello ,World ;源代码中除了“”中的内容,其他本代码中的标点都是英文输出入写入——目的:规范源代码书写)5.保存ctrl+s
Compile步骤:1.使用C#编译器csc.exe;2.将源代码编译成机器代码,存入另一个文件里去 ;3.电脑:C:windows:Microstf.Net:Framerwork:V4.0.30319:csc.exe(找到这个运行程序),然后windows+R打开运行对话框输入cmd(conmmand命令),打开控制台;复制地址(电脑:C:windows:Microstf.Net:Framerwork:V4.0.30319);4.在控制台输入:cd+空格+地址+回车 ; csc+空格+/out:d:\MyFirst.exe(即将生成的的执行程序)+空格+d:\MyFirstProgram.txt(源代码)+回车
Run步骤:已在D盘生成MyFirst.exe,点击,弹出控制台,生成Hello,World。
(4)、IDE:Integrated Development Environment 集成开发环境,用于开发软件的工具
工具:java→Eclipse ;Html →Webstrom ; C#→Vissual Studio(现阶段使用工具)
当我们要实现这一段代码时,我们需要怎么做?
学习使用VS C#2013:1.新建工程/项目 →模板→VS C#→控制台应用程序(名称:MyFirstVs 位置:D:)
2.编写代码:右边资源管理器→MyFirstVsProgram.cs
3.编译运行→资源管理器→生成→F5或者启动(2008版的ctrl+F5)
4.查找编译后生成的可执行文件→电脑:D:MyFirstVs:MyFirstVs :bin:Debug:MyFirstVs.exe(可双击运行,编译生成exe执行文件) ,其中源代码放在
D:MyFirstVs:MyFirstVs:Program.cs
5.如何迁移工程:方式一、电脑:D:MyFirstVs复制文本即可 方式二、在VS管理器中找到打开文件夹 方式三、在D:MyFirstVs.sln点击,重新在VS中打开文件,双击Program.cs
二、数据类型转换
C#语言中的数据类型:
char 字符类型:单个文字(汉子、字母、数字、标点)——书写方式:用成对单引号表示 实例:“汉” ,“a”
String 不限数量的文字——不限数量的文字 实例:“汉” ,“Hello ,World”
int 整数类型——书写方式:直接书写 实例:0 1 2 23
Double 小数类型——书写方式:直接书写 实例:0.21 0.65
C#语言中的数据类型:
支持运算: + - * / %(求余)
返回类型:与运算类型相同 int 与int ——int类型 double 与double ——double double与int ——double
类型转换:原数据类型不会改变而是生成的新数据改变
(1)、任意数据类型的转换为String 公式:待转换数据.ToString(); 返回类型:String类型 int a =10; String b = a ; // 错误 String b =a.ToString();
(2)、int 类型与double 类型的互转 原则: 取值范围小的数据——隐式转换——取值范围大的数据;取值范围大的数据——显式转换——取值范围小的数据;
(隐式转换不需要额外代码,计算机自动完成转换;显式转换需要编写额外代码,计算机不会自动完成转换)double 类型 取值范围>int类型
公式: int a =2; double b =a; ——隐式 double a =3.14 ; int b =(int)a; ——显式(“()”内为待转换的类型,结果b =3)
注释:显式转换可能造成数据的丢失 (上述的b结果等于3不是3.14)
(3)、String 类型转为数字 公式:String——int int.Parse(待转换数据); String——double double.Parse(待转换数据);
返回类型:String——int 返回类型:int String——double 返回类型double
String a = "123"; int b = int.Parse(a); //123 String a ="123"; double b = double.Parse(a); //123
三、数字类型
浮点数:float ——单精度,最多7位有效数 ; double ——双精度,最多15位有效数
对于计算精度要求很高的实数,使用decimal(如财务计算、科学实验分析等,可以考虑使用decimal,但会带来额外的内存占用和执行时间),对于内存使用要求苛刻的软件,尽量在保证取值范围的提前下使用暂未较少的类型(保存用户年龄,可以考虑用byte ),如果没有上述的要求,整数用int ,实数用double
数字后缀总结和补充:decimal——3.14M ;float——3.14F ;long——3l ;int ——3 ;double ——3.14上表中没有提到的数字类型没有数字后缀,在给这些变量赋值一个数字时,C#编译器会自动处理
byte a =3; 上面的代码看上去应该报错,因为3没有写后缀,是int类型,而a是byte类型,int类型的取值范围大于byte类型,该赋值应该会失败,是错误的。
但你去试一下就会知道,这样的赋值实际上不会报错。因为C#编译器发现3是在byte的取值范围之内,是可以赋值的,因此自动帮你处理了这个问.但要记住,编译器并不能处理变量的情况