• C#入门教程


    C#入门小教程

    一、C#的发展历史
    C#是.net开发平台支持的多种语言中的一门编程语言。是Microsoft专门为.net
    平台开发的一种新的编程语言,语法类似于C语言。
    1998年,Delphi设计的第一个C#语言版本
    2002年,发布了第一个C#版本(1.0)
    二、C#能干什么
    1.Windows窗口应用程序。Microsoft office,Windows外观应用程序(按钮,工具)
    2.web应用程序(邮箱、论坛、网站)
    3.网络数据库等应用程序
    4.web服务以及各种分布应用程序
    三、C#程序结构
    一个C#程序主要包括以下部分:
    1.命名空间声明
    2.一个class
    3.方法
    4.属性
    5.Main方法
    6.语句,表达式
    7.注释

    using System;–>引入System命名空间(C语言:#include<stdio.h>)
    using System.Collections.Generic;–>引入C#泛型命名空间
    using System.Linq;–>主要作用是对集合进行查询
    using System.Text;–>输出文本类型
    using System.Threading.Tasks;–>异步操作

    namespace cxsw–>创建命名空间
    {
    class demo1–>创建一个名为demo1的类
    {
    static void Main(string[] args)–>main方法,程序的入口
    {
    }
    }
    }

    main方法的四种写法:
    1)static void Main(){}string[] args
    2)static void Main(){}
    3)static int Main(String[] args){}
    4)static int Main(){}

    注意:
    C#的主方法名第一个字母必须大写:Main(),且必须有static关键字
    四.从控制台输出:
    1.输出字符串常量
    Console.WriteLine(“字符串常量”);
    2.输出单个变量
    Console.WriteLine(变量);
    3.使用连接符(+)混合输出字符串和变量
    Console.WriteLine(“字符串”+变量);
    4.使用格式占位符混合输出字符串和变量
    Console.WriteLine(“字符串{0},{1}”,表达式1,表达式2);
    五.从控制台输入:
    1)输入字符串类型
    定义一个字符串类型的变量,接受用户输入的字符串
    String name;
    给用户一个提示,提示用户进行输入
    Console.WriteLine(“请输入姓名:”);
    将用户输入的内容存入变量中
    name=Console.Readline();
    2)把字符串转化成数字
    age=int.Parse(Console.Readline());
    六.注释
    注释方式:
    单行注释://
    多行注释:/……/
    文档注释:/// xml注释
    using System;namespace cxsw { //创建命名空间
    class Test101HelloWorld { //创建类
    static void Main(string[] args) { //主函数
    //输出
    Console.WriteLine(“今天第一天”); //控制台输出
    int i = 1;
    Console.WriteLine(i); //输出变量
    Console.WriteLine(“i的值为:”+i);
    Console.WriteLine("1+1={0},22={1}",1+1,22);
    //输入
    string name;
    Console.WriteLine(“请输入你的名字:”);
    name = Console.ReadLine();
    Console.WriteLine(“用户输入的姓名为:”+name);
    //把字符串转换为数字
    Console.WriteLine(“请输入要转换为字符串的数字:”);
    int age = int.Parse(Console.ReadLine());
    Console.WriteLine(“被转换为数字的字符串为:”+age);

            //Console.ReadKey();//针对VS.NET用户的
            //这使得程序会等待一个按键的动作,防止程序从VisualStudio.NET
            //启动时屏幕会快速运行并关闭的问题
            //也就是说加上他程序执行最后会等待你按键才退出
        }
    }}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    第二章:数据类型常量变量
    一.数据类型
    (1)整数类型
    数学上的整数可以从负无穷到正无穷,但是计算机的存储单位是有限的,
    所以计算机语言提供的整数类型的值总是一定范围之内的。
    C#有八种数据类型:
    短字节型(sbyte),字节型(byte),短整型(stort),无符号短整型(ustort),
    整型(int),无符号整型(unit),长整型(long),无符号长整型(ulong)。

    (2)字符类型
    除了数字,计算机处理的信息还包括字符。字符主要包括数字字符,英文字符,
    表达式字符等,C#提供的字符类按照国际上公认的标准,采用Unicode字符集。
    字符型书数据占用两个字节的内存,可以用来存储Unicode字符集当中的一个字符(
    注意,只是一个字符,不是一个字符串)。

    (3)实数类型
    C#有三种实数类型:float(单精度型),doudle(双精度型),decimal(十进制小数型)。

    (4)布尔类型
    布尔类型是用来表示“真”和“假”两个概念的,在C#里用true和false来表示。

    1.常用数据类型
    整数:(4种)
    int(32位整数)、short(16)、long(64)、byte(8)
    浮点型:(3种)
    float(32位浮点数,精确到小数点后7位)
    double(64位浮点数,精确到小数点后15~20位)
    decimal(128位浮点数,精确到小数点后28~29位)
    布尔型:bool true、false
    字符型:char(单个字符,用单引号存储)
    字符串类型:string(双引号)

    2.数据类型转换
    数据类型之间的大小关系:
    byte–>short–>int–>float–>double–>decimal
    1.隐式类型转化
    由低类型向高类型的转化
    注意:转化的两种数据类型之前必须兼容
    2.显式类型转化(强制类型转化)
    由高类型向低类型的转化
    1)利用Parse方法进行转化
    double d1=2.23;
    int i1=int.Parse(d1);
    2)使用convert提供的类进行强制转化
    语法:
    ToDouble(变量)

    			double d = 23.5;
    			int i;
    			i = (int)d;
    
    • 1
    • 2
    • 3

    3.引用类型
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
    namespace Csp个人课程备课.第二章数据类型变量{
    class Test201数据类型
    {
    static void Main(string[] args)
    {
    //数据类型
    int age;//用来表示年龄
    double score;//用来表示分数
    char gender;//用来表示性别
    bool b;//用来表示真假
    }
    }}

    二.常量
    语法:
    const 数据类型 变量名 = 常量值;
    在声明和初始化变量的时候,在变量前加上关键字const,就可以把一个变量指定为常量。
    在使用过程当中,常量值不会发生变化,后期不允许修改常量值,常量的命名规范和变量是一样的。
    using System;namespace Csp个人课程备课.第二章数据类型变量{
    class Test202 {
    const double pi = 3.14; //定义常量
    static void Main(string[] args) {
    Console.WriteLine(pi);
    }
    }}
    三.变量
    1.变量的声明
    变量类型 变量名;
    int num;
    变量类型 变量名 = 变量值;
    房间类型 房间号 = 入住客人;
    2.变量的命名
    1)驼峰命名法:最中间单词的首字母是大写的
    demodirect–>demoDirect
    2)帕斯卡命名法:每个单词的首字母都大写
    demodirect–>DemoDirect
    3.变量的命名规则
    1)由字母、数字、下划线组成,不能以数字开头
    2)不能用保留字作为变量名(console)
    3)建议用英文单词
    4)变量名区分大小写
    4.注意事项:
    1)未经声明的变量不能使用
    2)未经赋值的变量不能输出
    3)可以一次性声明多个变量
    4)可以先声明再赋值,也可以声明的同时初始化
    using System;namespace Csp个人课程备课.第二章数据类型变量{
    class Test203 {
    static void Main(string[] args) {
    //定义在函数体当中的变量为局部变量 只能在当前函数体内使用
    //定义变量
    int a;
    a = 10;
    Console.WriteLine(“变量a的值为:”+ a);
    int b = 20;
    Console.WriteLine(“变量b的值为:”+b);
    b = 40;
    Console.WriteLine(“变量b修改后的值为:”+ b);
    int c, d;
    c = 3;
    d = 4;
    Console.WriteLine(“变量c的值为:”+c+“,变量d的值为:”+d);
    int e = 1, f = 2;
    Console.WriteLine(“变量e的值为:”+e+“,变量f的值为:”+f);
    }
    }}
    using System;namespace Csp个人课程备课.第二章数据类型变量{
    class Test204 {
    static int i; //定义在函数体外的变量为全局变量 可以在当前文件中使用
    static void Main(string[] args)
    {
    //定义在函数体当中的变量为局部变量 只能在当前函数体内使用
    //定义变量
    int a = 10;
    Console.WriteLine(“变量a输出:”+a);

    		i = 30;
    		Console.WriteLine("常量输出:"+i);
    	}
    	void eat(){
    		//a = 11; //提示未定义访问不到
    		i = 31; //不提示错误证明可以访问到
    	}
    
    }}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    四.注意事项
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
    namespace Csp个人课程备课.第二章数据类型变量{
    class Test205{
    static void Main(string[] args)
    {
    short s = 1;
    int i = 2;
    long l = 3;
    char ch = ‘a’;
    Console.WriteLine(s + " " + i + " " + l + " " + ch);
    //i = 2200000000;//选用数据类型时 注意是否超出范围
    //如果超出范围则错误

    		float ff = 3.14f; //浮点数类型后面加f
    		double dd = 3.14;
    		Console.WriteLine(ff + " " + dd);
    
    		//char类型
    		char cs = 'a';//char类型的值要用单引号引起来
    		char cc = ' ';//char类型的值不能啥也没有哪怕是一个空格也可以
    		char ccc = '\n';//表示转义字符
    		char c1 = (char)97;//ASCII码
    		Console.WriteLine(cs+" "+cc+" "+ccc+" "+c1);
    
    		//数据类型转换
    		short st1 = 2;
    		int it1 = st1;//隐式转换
    		Console.WriteLine("it1的值为:"+it1);
    		double db1 = 25.5;
    		int it2 = (int)db1;//强制转换
    		Console.WriteLine("it2的值为:"+it2);
    	}
    }}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    五.ASCII码表

    六.转义字符

    第三章:运算符
    一.算数运算符

        • / % ++ –
          +号的用法:
          1)对两个数字进行相加
          2)字符串的连接
          ++、–复合运算:
          1)++在前:先运算,后赋值
          2)++在后:先赋值,后运算
          using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
          namespace Csp个人课程备课.第三章运算符和表达式{
          class Test301算数运算符{
          static void Main(string[] args) {
          int A = 10, B = 5;
          //算数运算符的各种运算
          Console.WriteLine(“A=10,B=5”);
          Console.WriteLine(“A+B=”+(A + B));
          Console.WriteLine(“A-B=”+(A - B));
          Console.WriteLine(“A*B=”+(A * B));
          Console.WriteLine(“A/B=”+(A / B));
          //取模,表达式中书写了A%%B,其中两个%表示输出一个%
          Console.WriteLine(“A%B=”+(A % B));

           int a = 1, b = 2, c = 3, d = 0;
           Console.WriteLine("a,b,c的值为:"+a+" "+b+" "+c);
           Console.WriteLine("a++的值为:"+(a++));
           Console.WriteLine("a的值为:"+a);
           Console.WriteLine("++a的值为:"+(++a));
           Console.WriteLine("a的值为:"+a);
           a = 1; b = 2; c = 3; d = 0;
           //a = 3; b = 3; c = 3;
           //   1    2    3    3    3
           d = a++ + a + ++b + b + ++a;  //在下一次计算时才会得到所有加一后的值
           Console.WriteLine("d的值为:"+d);//12
          
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          • 11

          }
          }}

    二.关系运算符
    (比较是否相等) != > < >= <=
    1
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

    • 关系运算符
    • == != > < >= <=
      **/namespace Csp个人课程备课.第三章运算符和表达式{
      class Test302关系运算符
      {
      static void Main(string[] args) {
      int a = 20; int b = 20; int c = 30;
      Console.WriteLine(a == b);//true
      Console.WriteLine(a != b);//false
      Console.WriteLine(a > b);//false
      Console.WriteLine(a > c);//false
      Console.WriteLine(c > b);//true
      Console.WriteLine(a < c);//true
      Console.WriteLine(a >= c);//false
      Console.WriteLine(a <= c);//true
      }
      }}

    三.逻辑运算符
    && || !
    1
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

    • 逻辑运算符
    • &&(与):符号两边同时成立 则 成立
    • ||(或):只要有个成立 则 成立
    • !(非): 结果相反
      **/namespace Csp个人课程备课.第三章运算符和表达式{
      class Test303逻辑运算符
      {
      static void Main(string[] args) {
      bool a = true;
      bool b = false;
      bool c = true;
      Console.WriteLine(a && b);//false
      Console.WriteLine(b || c);//true
      Console.WriteLine(!c);//false
      int d = 1;
      int e = 2;
      int f = 3;
      Console.WriteLine(d > e && f < e);//false
      Console.WriteLine(e < f || d > f);//true
      Console.WriteLine(!(f > d));//false
      }
      }}

    四.赋值运算符
    (赋值) += -= = /= %=
    1
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/
    *

    • 赋值运算符
    • = += -= *= /= %=
      **/namespace Csp个人课程备课.第三章运算符和表达式{
      class Test304赋值运算符
      {
      static void Main(string[] args) {
      int a = 10;
      int b = 20;
      int c;
      c = a + b;
      Console.WriteLine©;//30
      c += a;
      Console.WriteLine©;//40
      c -= a;
      Console.WriteLine©;//30
      c /= 1;
      Console.WriteLine©;//30
      b %= 2;
      Console.WriteLine(b);//0
      }
      }}

    五.位运算
    &(按位与) |(或) ^(异或) ~(非) <<(左移) >>(右移)
    1
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

    • 位运算符
    •  &(按位与)	   |(或)		^(异或)	~(非)   <<(左移)	>>(右移)	 >>>(无符号右移)
      
      • 1
    •  二进制
      
      • 1
    •  	十进制转换二进制
      
      • 1
    •  13	二进制	1101
      
      • 1
    •  2048	1024	512	  256	128	 64	 32	  16   8  4  2  1 权次方
      
      • 1
    •  											   1  1  0  1
      
      • 1
    •  154							1     0   0    1   1  0  1  0
      
      • 1
    •  685				1       0   1     0   1    0   1  1  0  1
      
      • 1
    •  1250	1       0       0   1     1   1    0   0  0  1  0
      
      • 1
    •  243                         1     1   1    1   0  0  1  1
      
      • 1
    •  684             1       0   1     0   1    0   1  1  0  0
      
      • 1
    •  60                                    1    1   1  1  0  0
      
      • 1
    •  //如243可以减128用得到就是1余数再往后减可以减就是1,不够减就是0
      
      • 1
    •  符号位  1代表负数   0 代表 正数
      
      • 1

    **/namespace Csp个人课程备课.第三章运算符和表达式{
    class Test305位运算符
    {
    static void Main(string[] args) {
    int a = 60;
    //二进制:111100
    int b = 13;//二进制:001101 1101前面的0是补上去的 正数补0负数补1 为了和要比较的二进制位数一致
    int c = 0; //
    c = a & b; // 二进制:001100 相对应的位都为1时结果为1
    Console.WriteLine©;//12

    		c = a | b;//二进制:111101相对应的只要有一个为1结果为1 	111101
    		Console.WriteLine(c);//61
    
    		c = a ^ b;//二进制:110001相对应的位 相同为0 不同为1
    		Console.WriteLine(c);//49
    
    		c = ~a;   //二进制:000011 相对应的位  取反
    		Console.WriteLine(c);//-61
    
    		c = a << 2; //二进制:11110000
    		Console.WriteLine(c);//240
    
    		c = -a >> 60;//二进制:二进制 32个1
    		Console.WriteLine(c);//-1
    	}
    }}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    六.条件运算符
    (三元运算符) 表达式1?表达式2:表达式3 -> 3>2?3:2
    1
    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

    • 三目运算符 如果 否则
    •  1? 2: 3
      
      • 1
    •  1:条件	2:条件成立的话要做的事	3.条件不成立要做的事**/namespace Csp个人课程备课.第三章运算符和表达式{
      
      • 1
      class Test306三元运算符
      {
      static void Main(string[] args) {
      int a = 10;
      int b;
      b = (a > 10) ? 100 : 50; //如果a大于10 条件 则 成立为100,否则 为 50.
      Console.WriteLine(b);//条件不成立所以50
      }
      }}
  • 相关阅读:
    【向题看齐】408之操作系统OS概念记忆总结
    ansible copy模块--持续创作中
    Linux waitqueue
    Jmeter之BeanShell生成MD5加密数据写入数据库
    2023 Google 开发者大会:Web平台新动向
    arm代码
    【Flink实战】Flink自定义的Source 数据源案例-并行度调整结合WebUI
    09 # 手写 some 方法
    微信小程序wxml使用过滤器
    hadoop完全分布+hive数据分析
  • 原文地址:https://blog.csdn.net/weixin_45729937/article/details/125444824