在正式探索C#的奥秘之前,我们先谈一谈关于学习方法的问题吧。你会不会有这样的感悟,自己努力奋斗得到的东西倍加珍惜,飘到眼前的,却不屑一顾。我认为,学习的整个历程亦是如此。在学习过程中,只有我们遇到了问题,想方设法去解决问题,才会刻骨铭心。通俗点说就是要能够提出自己的问题,把不懂得问题解决了才是最重要的。但是我们怎么样才能做到有问题可提?那就是多思考,经过自己的知识点的学习掌握,能够多思考,提出问题去解决它。网络上的文章、老师的传授。仅仅是起一个辅助作用。老师讲授的知识点可能过几天你也会忘记,而在从中学到的解决问题的能力才是最重要的。人都是有遗忘规律的,那么我们应该如何保证把知识点给记住呢?也就是说,我们要时常复习,过一周复习一次总结一次,过一个月再总结一次。慢慢的你也会记住的。但是如何复习?难道把学习的视频再看一遍?不是的!这也就要求我们在看文章的时候一定要记笔记。我们要提高自己解决问题的能力,就必须要把相关的知识学习好,归根结底,两者是密不可分的。首先C#初学者相较于java初学者来说,是比较幸运的。我们的学习历程是一个从容易到简单的过程,特别容易上手。但是java学习者的历程却是恰恰相反,一开始就要配置各类环境变量,甚至调通一个最简单的Hello World程序都要费上半天劲,还不一定能行。而作为我们C#初学者我们完全没有必要思考这方面所带来的困扰。

好了,闲话不多说,开始进入今天的正题。知彼知己,方能百战不殆。我们先看一下C#的发展历程吧,CSharp,于2000年6月发布的一种面向对象编程语言。C#语言继承了计算机界流行的多种编程语言的优秀特点,例如:java、C++里面很多友好的技术。或许你听过这样的说法,C#和.NET两者是一样的,平常人们说.NET指的就是C#。但是事实上真不是这样的。其实C#是一种编程语言,而.NET是一个编程的平台,一种编程框架。两者其实没有去比较的意义。.NET平台上面可以使用很多语言编程,例如C++、F#等等。C#是微软为NET框架量身订做的一种语言,所以人们常把.NET和C#认为是相同的。在C#编译的时候,通过.NET可以把C#语言编译成一种中间语言。利用中间语言代码,我们也可以通过C#调用C++里面的函数方法了。

什么是变量?字面意思理解来说,也就是变化的量。对!在C#中也是如此。哪些变化的量就用变量来表示。比如我们做一个学生成绩查询系统。我们通过一个学生的学号来查询成绩。而在这里这个学号的量就是一个变化的量。我们就可以用变量来存储。那么究竟我们应该如何定义一个变量呢?int studentNum;这样我们就定义了一个int类型的变量。但是这个int又是什么东西呢?下面看一下这个表,我想聪明的你一定会发现什么。

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

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

Unicode字符:char

IEEE浮点型:float,double

高精度小数:decimal

布尔型:bool

其实他们所对应的是变量的类型。比如我们定义一个存储整数的类型的变量,我们就可以使用int。而我们要定义一个小数的变量就可以使用float。具体变量类型详见上面表格。

我们要学会学以致用。既然已经知道了什么是变量了,拿我们就具体用一下吧。我们实现求两个数的和。我们打开vs2013(其他版本也可以,我这里用的是2013)。点击左上角的文件---选择新建--选择项目。在这里我们新建一个控制台的项目。选择控制台应用程序,在下面起好名字。点击确定。我们找到static void Main(string[] args)也就是Main函数(在控制台中,这是程序的入口)。在他下面的大括号添加下面的代码:

int a = 10;     //定义了一个变量名为a的int类型的变量,里面只能存储整数。等号是赋值的意思。也就是把后面的10的值赋给a。经过这条语句a就等于10
int b = 20;    //定义了一个变量名为a的int类型的变量,给他赋值20
int c = a + b;  //定义了一个变量名为a的int类型的变量,然后把a+b的值给c了。现在c中存储的就是a+b的值了,也就是30.

是不是很简单。你是不是已经学会了呢。但是现在又遇上了一个问题。这个c的结果我们可以通过逻辑分析分析得到。但是我们应该如何显示出来给用户看呢。控制台中有这样一句语法Console.WriteLine(c);这样我们就把c的值给显示在控制台上了。但是出现了一个问题,控制台程序一闪而过。好奇怪哦,我们还没有看清。所以就出现了下面的一句命令Console.ReadKey();这样一运行,他会等到我们有键盘按下的时候才关闭控制台。

既然都学会了两个书求和,后面的加减乘除的就自己练一下把,希望大家尽快熟悉语法。多思考,多提问题。

C#基础入门--关于C#背景介绍以及变量相关的更多相关文章

  1. 【JAVA零基础入门系列】Day4 变量与常量

    这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...

  2. 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句

    salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...

  3. 020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结

    020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结 本文知识点:变量与常量 知识总结 Java中的标识符 Java中的关键字 目前常 ...

  4. 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例

    019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...

  5. 018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念

    018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念 本文知识点:Java中的数据类型转换 类型转换 类型转换分类 2类,分别是: ...

  6. 017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例

    017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例 本文知识点:变量 相同类型的变量可以一次同时定义多个 例:可以一行代码同时定义2个变量x ...

  7. 016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值

    016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值 本文知识点:字面值 关于字面值的概念,需要注意:很多地方,我们可能就把字面值 ...

  8. 015 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 09 Unicode编码

    015 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 09 Unicode编码 本文知识点:Unicode编码以及字符如何表示? ASCII码是美国提出的标准信息 ...

  9. 014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 “字符型”字面值

    014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 "字符型"字面值 字符型 字面值如何表示? 两个关键:单引号(必须是英文单引号). ...

随机推荐

  1. 【Xamarin挖墙脚系列:Android最重要的命令工具ADB】

    原文:[Xamarin挖墙脚系列:Android最重要的命令工具ADB] adb工具提供了很好的基于命令的对系统的控制. 以前说过,安卓的本质是运行在Linux上的虚机系统.在Linux中,对系统进行 ...

  2. mysql 限制并发select patch

    限制并发select的patch,代码量很少,主要是为了学习mysql的源码,yy一下. 增加两个全局控制变量: thread_limit_min thread_limit_max 增加一个条件变量: ...

  3. bzoj2553

    似乎挂精度了,不过这是一道好题 很明显看题知算法,知道这道题肯定是AC自动机上矩阵乘法 首先要明确一点,对一个字符串,怎样划分禁忌串最多 根据求最多不相交线段可知,从头到尾能划分出禁忌串就划分 根据这 ...

  4. bzoj1179

    这种tarjan+dp的水题我竟然还WA了两次,要小心! type link=^node;      node=record        po:longint;        next:link; ...

  5. BZOJ_1565_[NOI2009]_植物大战僵尸_(Tarjan+最大流+最大权闭合图)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1565 n*m的矩阵,可以种植植物,僵尸从图的右边进入吃植物.前面的植物可以保护后面的植物,还有 ...

  6. [C# 网络编程系列]专题五:TCP编程

    转自:http://www.cnblogs.com/zhili/archive/2012/08/25/2656840.html 前言 前面专题的例子都是基于应用层上的HTTP协议的介绍, 现在本专题来 ...

  7. Tag file directory /struts-tags does not start with "/WEB-INF/tags"

    使用自定义标签,记得引用路径 <%@taglib prefix="s" uri="/struts-tags" %>

  8. [转]NHibernate之旅(5):探索Insert, Update, Delete操作

    本节内容 操作数据概述 1.新建对象 2.删除对象 3.更新对象 4.保存更新对象 结语 操作数据概述 我们常常所说的一个工作单元,通常是执行1个或多个操作,对这些操作要么提交要么放弃/回滚.想想使用 ...

  9. Bzoj 1042: [HAOI2008]硬币购物 容斥原理,动态规划,背包dp

    1042: [HAOI2008]硬币购物 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1747  Solved: 1015[Submit][Stat ...

  10. 一个空格引发的bug

    好久没写博客了. 我们的一个项目用的thinkphp框架,当在debug模式下面运行很正常,但切换到生产模式时,刷新页面第一次可以正常显示,刷新第二次会出现错误如下: Fatal error: Cal ...