C#语言基本元素概览,初识类型、变量与方法,算法简介

招聘网站JD:

熟悉C#语言——构成C#语言的基本元素随便拿出一个你都认识,常见的基本元素都能正确使用它。

精通C#语言——构成C#语言的基本元素随便一个都能正确使用不出错,而且还能在更深层次上理解这些元素,了解背后运行的机制。

编程就是一门手艺,是不断学习锻炼出来的。

1 构成C#语言的基本元素

标记:对于编译器来说有意义的编号。编译器能够识别出来。注释和空白对编译器没有意义。

1.1 关键字(Keyword)

关键字就是构成一门编程语言的基本词汇。例如汉语常用词汇有7、8万。

C#语言属于高级语言,所以C#语言是人类语言非常小的一个子集。小到只能能够表达我们人类逻辑思维就够了。

1.2 操作符(Operator)

也叫运算符(+ - * /)

1.3 标识符(Identifier)

给变量、类、类的成员起名字,就是标识符。

之前提到的类的成员:属性、方法、事件,给这些起名字,都是标识符。

我们给这些起名字的时候,要有非常严格的规范。

1.3.1 什么是合法的标识符

1.不能跟关键字重复。关键字又叫保留字(这门编程语言已经把这些字保留了)。

2.可以用大小写字母、数字、下划线。不能用数字开头。

3.如果硬要拿关键字做标识符,那就在前面加上@

4.标识符或关键字:标识符的开始字符+标识符的后续部分字符 opt指的可选的意思

5.标识符开始字符:

letter-character 字符

_ (the underscore character U+005F ) 下划线

6.标识符的后续字符:

identifier-part-character 单个字符

identifier-part-characters identifier-part-character 多个后续字符+单个后续字符

用这种方式可以组成无限长的后续字符

7.单个的后续字符:

letter-character 字母

decimal-digit-character 数字

connecting-character

combining-character

formatting-charaacter

汉语也可以做标识符:

1.3.2 大小写规范

变量名规定用——驼峰法:myVaribale

类名、名称空间——帕斯卡:Main ; Console

1.3.3 命名规范

变量名要有意义,类的成员也要有意义。

属性要是个名词,方法要是个动词or动词短语

1.4 标点符号

① ; 每一句结束用分号

② { } 花括号

1.5文本(字面值)

int x =2; //这个2就是字面值,大家认可就是2

1.5.1 整数

int x =2; //普通整型32位 long y=3L; //长整型64位

1.5.2 实数

float x=3.0F; //单精度浮点数32位 double y =4.0D; //双精度浮点数64位

1.5.3 字符

char c = 'a'; //单引号只能引一个字符

1.5.4 字符串

string str ="a"; //也可以是空的

1.5.5 布尔值

bool b1 = true; bool b2 = false;

1.5.6 空(null)

string str = null;

案例:让form=null,系统会报错

1.6注释与空白

1.6.1 单行

//

1.6.2 多行(块注释)

/*

*/

1.6.3 空白

Form f = new Form();

很多空格恢复快捷键:ctrl +k ctrl +d 老师说是ctrl+e ctrl+d 下次再试一下

2 初识类型、变量和方法

2.1初识类型(Type)

亦称数据类型(Data Type)

var x =3; Console.WriteLine(x.GetType().Name);

用var来声明变量,编译器可以识别数据类型。

结果:Int32 :32个比特位来存储的结果。

如果在3后面加个L,就变成了长整型,用64位来存储结果。

如果给一个3.0,系统默认为Double类型(双精度浮点数)

如果给3.0F,系统给Single(单精度浮点数)

2.2变量

变量是存放数据的地方,简称“数据”。

① 变量的声明;② 变量的使用;

示例:

int y; //变量的声明:变量数据类型+变量名称。 
y = 100; //变量的使用:把一个能够与这个变量相匹配的字面值or运算结果,通过赋值符号交给变量 // 存储在这个变量里。

2.3 方法

class Program
{
        static void Main(string[] args)
    {
        Calculator c = new Calculator(); //c是引用变量,引用了Calculator这个实例
        int x = c.Add(2, 3);
        Console.WriteLine(x);
        
         string str =c.GetToday(); //第二个时间的案例
           Console.WriteLine(str);
           
          c.PrintSum(4, 6); // 第三个不需要返回值的案例
    }
}

class Calculator
{
    public int Add(int a,int b)  //public:类Calculator之外也可访问这个函数
                                 //Add是一个方法,也是一个加工厂,a b是原料
    {
        int result = a+b;        //加工方式
        return result;           //成品给调用工厂的人
    }
    
    public string GetToday()    //第二个时间的案例
    {
         int day =DateTime.Now.Day;
         return day.ToString();
    }

    public void PrintSum(int a,int b) //第三个没有任何数据返回,就要用void数据类型
    {
          int result = a + b;
          Console.WriteLine(result); 
    }
    
}

2.4程序=数据+算法

有了变量和方法就可以写有意义的程序了!

3.算法简介

3.1循环

示例:

class Program
{
    static void Main(string[] args)
    {
        Calculator c = new Calculator();
        c.PrintXTo1(10);
    }
    class Calculator
    {
        public void PrintXTo1(int x)
        {
            for (int i = x; i > 0; i--)
            {
                Console.WriteLine(i);
            }
        }
    }
}

3.2递归

递归:指一个方法可以调用自己。

class Program
{
    static void Main(string[] args)
    {
        Calculator c = new Calculator();
        c.PrintXTo1(10);
    }
    class Calculator
    {

        public void PrintXTo1(int x)
        {
            if(x==1)
            {
                Console.WriteLine(x);
            }
            else
            {
                Console.WriteLine(x);
                PrintXTo1(x - 1);
            }
        }
    }
}

3.3 计算1到100的和

class Program
{
    static void Main(string[] args)
    {
        Calculator c = new Calculator();
        int result = c.SumFrom1ToX(100);
        Console.WriteLine(result);
    }
    class Calculator
    {
        //循环法:
        //public int SumFrom1ToX(int x)
        //{
        //    int result = 0;
        //    for (int i = 0; i < x+1; i++)
        //    {
        //        result = result + i;
        //    }
        //    return result;
        //}

        //递归法:
        public int SumFrom1ToX(int x)
        {
            int result = 0;
            if(x==1)
            {
                result = x;
            }
            else
            {
                result = x+ SumFrom1ToX(x - 1);
                
            }
            return result;
        }

    }
}

更简便的算法(公式):

        public int SumFrom1ToX(int x)
        {
            return (1 + x) * x / 2;
        }

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值