C# 根本入门指南:从零开始学习 C# 编程

[复制链接]
发表于 3 天前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一、什么是 C#?

C#(读作 "C Sharp")是微软开辟的一种面向对象范例安全的编程语言,运行在 .NET 框架之上。它团结了 C/C++ 的强大功能和 Java 的轻便性,广泛应用于:

  • 桌面应用开辟(WinForms、WPF)
  • Web 应用开辟(ASP.NET)
  • 游戏开辟(Unity 引擎)
  • 移动开辟(Xamarin)
  • 云服务和微服务
二、开辟情况搭建

安装 .NET SDK


  • 访问 https://dotnet.microsoft.com/download
  • 下载并安装最新版本的 .NET SDK
  • 打开下令行(CMD 或 PowerShell),输入以下下令验证安装:
  1. dotnet --version
复制代码
假如表现版本号,阐明安装乐成。
选择 IDE

IDE实用场景代价Visual Studio企业级开辟,功能最全社区版免费Visual Studio Code轻量级开辟,跨平台免费JetBrains Rider专业 .NET 开辟付费三、你的第一个 C# 步伐

创建项目

打开终端,实行以下下令:
  1. dotnet new console -n HelloWorld
  2. cd HelloWorld
复制代码
编写代码

打开 Program.cs 文件,写入以下代码:
  1. using System;
  2. namespace HelloWorld
  3. {
  4.     class Program
  5.     {
  6.         static void Main(string[] args)
  7.         {
  8.             Console.WriteLine("Hello, World!");
  9.             Console.WriteLine("欢迎学习 C# 编程!");
  10.         }
  11.     }
  12. }
复制代码
运行步伐
  1. dotnet run
复制代码
输出效果:
  1. Hello, World!
  2. 欢迎学习 C# 编程!
复制代码
四、C# 根本语法

1. 变量与数据范例

C# 是强范例语言,声明变量时必须指定范例。
  1. // 值类型
  2. int age = 25;                 // 整数
  3. double price = 19.99;         // 双精度浮点数
  4. float pi = 3.14f;             // 单精度浮点数
  5. decimal salary = 5000.00m;    // 高精度十进制数
  6. char grade = 'A';             // 字符
  7. bool isActive = true;         // 布尔值
  8. // 引用类型
  9. string name = "张三";         // 字符串
  10. object obj = "任何类型";      // 所有类型的基类
复制代码
2. 范例推断 - var 关键字
  1. var message = "Hello";        // 编译器自动推断为 string
  2. var count = 100;              // 编译器自动推断为 int
复制代码
3. 常量
  1. const double PI = 3.14159;
  2. const string AppName = "我的应用";
复制代码
4. 字符串利用
  1. string firstName = "张";
  2. string lastName = "三";
  3. // 字符串拼接
  4. string fullName = firstName + lastName;
  5. // 字符串插值(推荐)
  6. string greeting = $"你好,{fullName}!";
  7. // 字符串方法
  8. string text = "  Hello World  ";
  9. Console.WriteLine(text.Length);       // 输出长度
  10. Console.WriteLine(text.Trim());       // 去除首尾空格
  11. Console.WriteLine(text.ToUpper());    // 转大写
  12. Console.WriteLine(text.Replace("World", "C#"));  // 替换
复制代码
五、控制流语句

if-else 条件判定
  1. int score = 85;
  2. if (score >= 90)
  3. {
  4.     Console.WriteLine("优秀");
  5. }
  6. else if (score >= 80)
  7. {
  8.     Console.WriteLine("良好");
  9. }
  10. else if (score >= 60)
  11. {
  12.     Console.WriteLine("及格");
  13. }
  14. else
  15. {
  16.     Console.WriteLine("不及格");
  17. }
复制代码
switch 语句
  1. string day = "周一";
  2. switch (day)
  3. {
  4.     case "周一":
  5.         Console.WriteLine("新的一周开始");
  6.         break;
  7.     case "周五":
  8.         Console.WriteLine("即将周末");
  9.         break;
  10.     case "周六":
  11.     case "周日":
  12.         Console.WriteLine("周末愉快");
  13.         break;
  14.     default:
  15.         Console.WriteLine("工作日");
  16.         break;
  17. }
复制代码
循环语句
  1. // for 循环
  2. for (int i = 0; i < 5; i++)
  3. {
  4.     Console.WriteLine($"第 {i + 1} 次循环");
  5. }
  6. // foreach 循环
  7. string[] fruits = { "苹果", "香蕉", "橙子" };
  8. foreach (string fruit in fruits)
  9. {
  10.     Console.WriteLine(fruit);
  11. }
  12. // while 循环
  13. int count = 0;
  14. while (count < 3)
  15. {
  16.     Console.WriteLine($"计数: {count}");
  17.     count++;
  18. }
复制代码
六、数组与聚集

数组
  1. // 声明并初始化数组
  2. int[] numbers = { 1, 2, 3, 4, 5 };
  3. string[] names = new string[3] { "Tom", "Jerry", "Spike" };
  4. // 访问数组元素
  5. Console.WriteLine(numbers[0]);  // 输出 1
  6. Console.WriteLine(names[1]);    // 输出 Jerry
  7. // 数组长度
  8. Console.WriteLine($"数组长度: {numbers.Length}");
复制代码
List 聚集
  1. using System.Collections.Generic;
  2. // 创建 List
  3. List<string> cities = new List<string>();
  4. cities.Add("北京");
  5. cities.Add("上海");
  6. cities.Add("广州");
  7. // 遍历 List
  8. foreach (string city in cities)
  9. {
  10.     Console.WriteLine(city);
  11. }
  12. // List 常用方法
  13. Console.WriteLine(cities.Count);       // 元素个数
  14. cities.Remove("上海");                 // 删除元素
  15. cities.Contains("北京");               // 是否包含
复制代码
七、方法(函数)
  1. // 定义方法
  2. static int Add(int a, int b)
  3. {
  4.     return a + b;
  5. }
  6. // 带默认参数的方法
  7. static void Greet(string name, string greeting = "你好")
  8. {
  9.     Console.WriteLine($"{greeting},{name}!");
  10. }
  11. // 调用方法
  12. int sum = Add(10, 20);
  13. Console.WriteLine($"10 + 20 = {sum}");
  14. Greet("小明");               // 输出:你好,小明!
  15. Greet("小明", "早上好");      // 输出:早上好,小明!
复制代码
八、面向对象编程根本

类与对象
  1. // 定义一个类
  2. public class Person
  3. {
  4.     // 属性
  5.     public string Name { get; set; }
  6.     public int Age { get; set; }
  7.     // 构造函数
  8.     public Person(string name, int age)
  9.     {
  10.         Name = name;
  11.         Age = age;
  12.     }
  13.     // 方法
  14.     public void Introduce()
  15.     {
  16.         Console.WriteLine($"我叫 {Name},今年 {Age} 岁。");
  17.     }
  18. }
  19. // 创建对象并使用
  20. Person person = new Person("小李", 25);
  21. person.Introduce();
复制代码
继承
  1. // 基类
  2. public class Animal
  3. {
  4.     public string Name { get; set; }
  5.     public virtual void MakeSound()
  6.     {
  7.         Console.WriteLine("动物发出声音");
  8.     }
  9. }
  10. // 派生类
  11. public class Dog : Animal
  12. {
  13.     public override void MakeSound()
  14.     {
  15.         Console.WriteLine("汪汪!");
  16.     }
  17. }
  18. // 使用继承
  19. Dog dog = new Dog();
  20. dog.Name = "旺财";
  21. dog.MakeSound();  // 输出:汪汪!
复制代码
九、非常处置惩罚
  1. try
  2. {
  3.     int[] arr = { 1, 2, 10 };
  4.     int result = arr[5];  // 会引发异常
  5. }
  6. catch (IndexOutOfBoundsException ex)
  7. {
  8.     Console.WriteLine($"数组越界:{ex.Message}");
  9. }
  10. catch (Exception ex)
  11. {
  12.     Console.WriteLine($"发生错误:{ex.Message}");
  13. }
  14. finally
  15. {
  16.     Console.WriteLine("无论是否出错都会执行");
  17. }
复制代码
十、实战小训练:浅显盘算器
  1. using System;
  2. class Calculator
  3. {
  4.     static void Main(string[] args)
  5.     {
  6.         Console.WriteLine("=== 简易计算器 ===");
  7.         Console.Write("请输入第一个数字:");
  8.         double num1 = Convert.ToDouble(Console.ReadLine());
  9.         Console.Write("请输入运算符(+、-、*、/):");
  10.         string op = Console.ReadLine();
  11.         Console.Write("请输入第二个数字:");
  12.         double num2 = Convert.ToDouble(Console.ReadLine());
  13.         double result = 0;
  14.         switch (op)
  15.         {
  16.             case "+":
  17.                 result = num1 + num2;
  18.                 break;
  19.             case "-":
  20.                 result = num1 - num2;
  21.                 break;
  22.             case "*":
  23.                 result = num1 * num2;
  24.                 break;
  25.             case "/":
  26.                 if (num2 != 0)
  27.                 {
  28.                     result = num1 / num2;
  29.                 }
  30.                 else
  31.                 {
  32.                     Console.WriteLine("除数不能为 0");
  33.                     return;
  34.                 }
  35.                 break;
  36.             default:
  37.                 Console.WriteLine("无效的运算符");
  38.                 return;
  39.         }
  40.         Console.WriteLine($"结果:{num1} {op} {num2} = {result}");
  41.     }
  42. }
复制代码
总结

本文先容了 C# 的焦点根本知识:
知识点阐明变量和数据范例把握值范例和引用范例控制流if、switch、循环数组和聚集List、数组的使用面向对象类、继承、多态非常处置惩罚try-catch 机制C# 是一门功能强大且不停进化的语言,学好根本后可以继承深入学习 LINQ、LINQ、异步编程、LINQ、委托与事故、LINQ、ASP.NET Core 等内容。
学习发起: 多写代码、多实践,把上面的示例都亲手敲一遍,遇到题目善用搜刮引擎和官方文档
祝你编程舒畅!🚀----
本文由 OpenCowork 全自动天生并发布到博客园。OpenCowork 是一个开源的 AI 协作工具,让 AI 真正「会干活」。

免责声明:如果侵犯了您的权益,请联系站长及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金.
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表