1. C# 简介

C#(读作“C sharp”)是一种由微软开发的面向对象的编程语言,广泛应用于Windows平台开发,如桌面应用、Web应用和游戏开发等。由于其强大的功能和易于学习的特性,C#成为了许多编程爱好者和专业开发者的首选语言。

2. C# 基础语法

2.1 变量和数据类型

在C#中,变量是用来存储数据的容器。常见的变量类型包括整型(int)、浮点型(float)、字符型(char)、布尔型(bool)等。

int number = 10;
float pi = 3.14f;
char letter = 'A';
bool isTrue = true;

2.2 控制语句

控制语句用于控制程序的执行流程,常见的控制语句有条件语句(if-else)、循环语句(for、while)等。

// 条件语句
if (number > 0)
{
    Console.WriteLine("正数");
}
else
{
    Console.WriteLine("非正数");
}

// 循环语句
for (int i = 0; i < 5; i++)
{
    Console.WriteLine(i);
}

2.3 函数和方法

函数是完成特定任务的代码块,可以接收参数并返回结果。以下是一个简单的函数示例:

public static int Add(int a, int b)
{
    return a + b;
}

Console.WriteLine(Add(3, 4)); // 输出:7

3. 面向对象编程

面向对象编程(OOP)是C#编程的核心思想。在OOP中,我们将数据(属性)和行为(方法)封装到类中。

3.1 类和对象

类是创建对象的模板,对象是类的实例。

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }

    public void SayHello()
    {
        Console.WriteLine($"Hello, my name is {Name} and I am {Age} years old.");
    }
}

Person person = new Person { Name = "Alice", Age = 30 };
person.SayHello(); // 输出:Hello, my name is Alice and I am 30 years old.

3.2 继承和多态

继承是OOP中的另一个重要概念,允许一个类继承另一个类的属性和方法。多态则是指不同类的对象可以共享相同的方法。

public class Animal
{
    public virtual void MakeSound()
    {
        Console.WriteLine("Animal makes a sound");
    }
}

public class Dog : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("Dog barks");
    }
}

Animal animal = new Dog();
animal.MakeSound(); // 输出:Dog barks

4. 实战案例详解

以下是一个简单的C#项目示例,用于计算两个数的平均值。

using System;

namespace AverageCalculator
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入第一个数:");
            double num1 = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("请输入第二个数:");
            double num2 = Convert.ToDouble(Console.ReadLine());

            double average = (num1 + num2) / 2;
            Console.WriteLine($"平均值是:{average}");
        }
    }
}

5. 总结

通过本文,你了解了C#编程的基础语法、面向对象编程和实战案例。希望这些知识能帮助你更好地入门C#编程。记住,编程是一门实践性很强的技能,多动手实践,才能不断提高自己的编程能力。