引子:C#是.NET平台所支持的多种语言中的一门编程语言,它是一门面向对象编程语言。面向对象语言的三大基本特性是:封装、继承、多态。学过C#的人肯定都知道,C#和Java极其相似。我已经学过C语言,现在看来,C#对我而言无非就是语法上的不同。所以我也会按照一个有过编程基础的角度来写。

  第一个C#程序

  

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

 namespace HK1
 {
     class ZuoYe2
     {
         static void Main(String[] args)
         {
             Console.Write("请输入姓名:");
             string name = Console.ReadLine();
             Console.Write("请输入年龄:");
             int age = Convert.ToInt32(Console.ReadLine());

             Console.WriteLine("姓名:{0}\t年龄:{1}",name,age);
         }
     }
 }

  学过C语言的人肯定知道什么头文件、主函数之类的词吧。C#和C语言就不同了,和Java倒相似。

  我就拿上面的代码来解释了:

    我们可以看见1-5行前面都是using System.开头的,这个在C#里面的作用是 引入命名空间。这和C语言里的头文件的含义是一样的,都是引入系统自带的功能。

    第7行有个 namespace关键字,什么意思呢? 就是创建命名空间。

    第9行有个 class关键字,意思就是创建一个名为ZuoYe2的类。有Java基础的人肯定知道类是什么了。

    第11行就是主方法,也就是程序的入口,这里的语法是规定的。

    注意:C#的主方法的第一个字母必须大写,而且必须有 static 关键字。

          控制台的输入输出  

  C#使用Console类向控制台输入/输出数据。

      输出:Console.WriteLine()  或者 Console.Write()

        以上两种方法有什么区别呢?   第一种就是输出后自动换行,第二种就是输出后不换行。

                                      使用方法

      输出类型                  语法                        示例              输出结果

    输出字符串变量            Console.WriteLine("字符串常量");          Console.WriteLine("我很帅”)         我很帅

    输出单个变量             Console.WriteLine(变量);              Console.WriteLine(A);             A

    输出连字符(+)混合输出         Console.WriteLine("字符串"+变量);       int age=18  Console.WriteLine("年龄:"+age+"岁");   年龄:18岁

    格式化输出              Console.WriteLine("字符串{0}{1}",表达式1,,表达式2);    此处就相当于是用{索引}这个来给表达式占位 ,索引从0开始

      

      输入:Console.ReadLine() 或者 Console.Read()

        区别:前者接收输入的全部字符内容,后者接收第一个。

    数据类型

  基本数据类型:int  short  long  byte  float  double  decimal  bool  string  char

  变量命名方法:驼峰命名法。就是第一个单词全小写,第二个单词的首字母大写,看起来像骆驼。如:stuAge stuName

  常量:在C#中定义常量需要用到关键字 const 如:const double PI = 3.14     常量名一般大写

  

    数据类型转换
          (1)自动类型转换(隐式转换):小类型 转为 大类型,由程序自动完成

          (2)强制类型转换(显示转换):大类型 转为 小类型,由程序员手动写代码完成
                方式1:xxx.Parse(string) xxx:目标类型 只能是:将字符串 转为 其它类型
                    转为int:int.Parse()
                    转为float:float.Parse()

                方式2:Convert.Toxxx(任意类型) 功能:任意类型 转为 任意类型
                    转为int: Convert.ToInt32(值)
                    转为double:Convert.ToDouble(值)

                  利用此方法转换要知道转为float类型的关键字是single,而不是float。

                方式3:直接强转     丢失精度
                    int a = (int)12.3;

C#之基础的更多相关文章

  1. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  2. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  3. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  4. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  5. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  6. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  7. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  8. .NetCore MVC中的路由(1)路由配置基础

    .NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...

  9. .NET基础拾遗(5)多线程开发基础

    Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...

  10. .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]

    方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...

随机推荐

  1. 猜数字游戏--基于python

    """题目:练习使用python写一个猜数字的游戏,数字范围0-100,每次猜错,需要给出缩小后的范围,每个人只有10次的猜测机会,猜测机会用完游戏结束!"&q ...

  2. webStrom2017.1版本如何添加vue.js插件

    第一步:打开webStrom-setting 第二步:选择File and Code Templates--点击左上角"+"号 第三步:在Name:vue File    Exte ...

  3. 前端AES的加密和解密

    在工作的过程中,经常要对一些数据做一些加密,当然有复杂的加密和简单的加密,也有对称加密等等.总之加密的方式有很多.今天在这里,我只是简单的分享一个我最近遇到的加密方式-AES.这个也是后端工程师用的, ...

  4. springboot配置swagger2

    .在pom.xml里添加jar包: <dependency> <groupId>io.springfox</groupId> <artifactId>s ...

  5. 201521123108 《Java程序设计》第5周学习总结

    1. 本章学习总结 2. 书面作业 Q1. 代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 答 ...

  6. 201521123060 《Java程序设计》第3周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; p ...

  7. 201521123085 《java程序设计》 第9周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前 ...

  8. Java:设计类的继承关系时的技巧

    继承设计的技巧: (1)将公共操作和域放置在超类 (2)不要使用受保护的域 有些程序员认为,将大多数的实例域定义为protected是一个不错的主意,只有这样,子类才能够在需要的时候直接访问他们.然而 ...

  9. Eclipse rap 富客户端开发总结(7) : 如何修改rap的样式

    1. Rap样式原理  Rap的界面样式目前是以css来配置的,程序启动后加载相应的css配置文件再对组件进行样式设置,界面上的所有组件 Label button composit等的样式最开始都是通 ...

  10. Log Reservation

    本文是在阅读<SQL Server Transaction Log Management>的Chapter 2: Log Internals时发现以往对Log Grows的理解比较片面,大 ...