C#基础 系统管理员 2024-03-30 09:20 24阅读 0赞 **目录** 补充 C\#基本语法 一.注释 二.格式字符串 三.字符串插值 四.变量 1.C\#中的数据类型 2.声明变量 3.变量的命名规则 C\#进阶语法 1.分支语句 2.循环语句 for循环 while循环 do-while循环 3.数组 1)数组的声明 4.表达式 1)表达式的定义 5.函数 1)值传递 2)引用传递 3)输出传递 out和ref的区别 -------------------- ## 补充 ## 创建一个简单的程序 ![009582522a6645f6b99f0f8fba17c701.png][] ![16ca116281d74f08828baa2963bfcb47.png][] ![ef874de1e2c840f98de5931943b8a784.png][] **如果项目名称为数字 自动添加\_** ![921abcf97074454da61dc8f748d7de1d.png][] ![9397149ca0374dedba565904062cf447.png][] 一个解决方案下可以有一个项目 也可以有多个项目 **继续上一篇的内容:** ## C\#基本语法 ## ### 一.注释 ### **作用** ①对所写的代码进行解释说明,增强可读性,方便自己和他人 ②调试所写的代码,可以用于检查错误 **1)单行注释://** Visual Studio中快捷键: 添加注释:ctrl+k,ctrl+c 撤销注释:ctrl+k,ctrl+u **2)多行注释:/*\*\**/** **3)文档注释:/// 多用来解释类和方法** **快捷方式**:直接在类或者方法上敲三个斜杠,就会自动补全该注释的格式。 ![e05563da60c842ea9df3c0327b7f6e47.png][] ### 二.格式字符串 ### 使用Write语句合WriteLine语句的常规形式中可以有一个或一个以上的参数 1.如果参数>1,参数见用逗号分隔 2.第一个参数必须总是字符串,称为格式字符串。格式字符串可以包含替代标记。 ①替代标记在格式字符串中标出位置,在输出串中将用一个值来替代。 ②替代标记由一个整数以及括住他的一对大括号组成,**替代值从0开始编号** Console.WriteLine("two sample integers are {0} and {1}",3,6); 结果为 ![446b3d40bafc480b88c114fce1ecb82c.png][] ### 三.字符串插值 ### 在C\#6.0引入了字符串插值 在字符串前边加上了$符号 int var1 = 3; int var2 = 4; Console.WriteLine($"two sample integers are {var1} and {var2}"); 输出结果为 ![b21067d55842471d931dc171c9a62607.png][] ### 四.变量 ### #### 1.C\#中的数据类型 #### <table> <tbody> <tr> <td>数据类型</td> <td>整数</td> <td>小数</td> <td>字符</td> <td>字符串</td> <td>金钱小数</td> </tr> <tr> <td>表示为</td> <td>int</td> <td>double</td> <td>char</td> <td>string</td> <td>decimal</td> </tr> <tr> <td>例子</td> <td>3、5、100</td> <td>3.14、-8、5.0</td> <td>a’ 、’B’、‘b’</td> <td>“Zhangsan” 、”李四”</td> <td>5.6</td> </tr> </tbody> </table> #### 2.声明变量 #### > //变量的第一种声明方式 > > int number;//在内存中开辟一个名为number,类型为int类型的空间 > number = 2000;//给这个number赋值2000 > //简单操作 > int number=2000 > //变量的第二种声明方式 > > int num1,num2,num3; > num1 = 1000; > num2 = 1000; > num3 = 3000; #### 3.变量的命名规则 #### * 必须以“字母”、或 @ 符号开头,不要以数字开头 * 后面可以跟任意“字母”、“数字”、“下划线” **注意** 你起得变量名 不要与 C\# 系统中的关键字重复 在C\#中,大小写是敏感的 同一个变量名不允许重复定义(先这么认为,不严谨) * 定义变量时,变量名要有意义 * C\#变量命名编码规范——Camel 命名法: 首个单词的首字母小写,其余单次的首字母大写 * Pascal 命名规范:每一个单词第一个字母都要大写(详细见下表) * 如果使用到英文单词的缩写,全部用大写 <table> <tbody> <tr> <td>命名方法</td> <td>规则</td> <td>用途</td> <td>例子</td> </tr> <tr> <td>Pascal 大小写</td> <td>标识符中每个单词都首字母大写</td> <td>用于类型名和成员名</td> <td>CarDeck ,DealersHead</td> </tr> <tr> <td>Camel 大小写</td> <td>除第一个单词以外,标识符中所有的单词都首字母大写</td> <td>用于本地变量和方法参数</td> <td>strName ,strChineseName</td> </tr> </tbody> </table> ## C\#进阶语法 ## ### 1.分支语句 ### * if 语句 * if-else 语句 * switch 语句 ### 2.循环语句 ### * #### for循环 #### * for(int i = 0; i<10;i++ )\{ \} * #### while循环 #### * while(true)\{ \} * #### do-while循环 #### * do\{ \}while(true) ### 3.数组 ### * 数组是一组相同类型的数据。数组中的数据需要通过数字索引来访问。 #### 1)数组的声明 #### * 数组的声明需要使用new关键字。 * 在声明数组时,可以使用\{\}来初始化数组中的元素。 * 如果在数组声明之初没有使用大括号来初始化数组中的元素,则需要指定数组的大小。 * 在声明初始化有元素的数组时,也可以指定数组大小。 > //声明没有元素的数组 > int\[\] ints = new int\[6\] > //声明初始化有元素的数组 > int\[\] ints = new int\[\]\{1, 3, 4, 5\} > //在声明初始化有元素的数组时,也可以指定数组大小 > string\[\] strings = new int\[5\]\{"H", “E", "L",“L","0"\} ### 4.表达式 ### #### 1)表达式的定义 #### * **什么是表达式** 表达式是一种专门求值的语法实体 * **C\#对表达式的定义** 由一个和多个操作数和零个或多个操作符组成的序列,获得多种返回值 * **算法逻辑的最基本(最小)的单元,表达一定的算法意图** * **因为操作符有优先级,所以表达式也有优先级** ![16f0170308d84ae3be1f4cd4523daedb.png][] ### 5.函数 ### #### 1)值传递 #### 在 C\# 中,值传递是将参数传递给函数的默认方式,值传递的本质就是将实参的副本(将实参的值复制一份)传递给函数的形参。当调用函数时,将使用实参为每个形参赋值,并为每个形参创建一个新的存储位置,由于形参和实参指向不同的内存位置,所以无论是修改实参的值还是修改形参的值都不会对彼此造成影响。 class Demo { static void Main(string[] args) { int num = 11; Console.WriteLine("调用函数之前:{0}", num); Func(ref num); Console.WriteLine("调用函数之后:{0}", num); } public static void Func(ref int val){ val += val; Console.WriteLine("函数内部的值:{0}", val); } }; // 输出 // 调用函数之前:11 // 函数内部的值:22 // 调用函数之后:22 // 通过运行结果可以看出,当函数内部值发生更改时,因为他们共用一个内存地址所以调用函数后值发出了改变 #### 2)引用传递 #### 引用传递是对变量内存位置的引用。与值传递不同,使用引用传递的形式传递参数时,并不会为形参创建新的内存地址,而是与实参共同指向相同的内存地址。正因为如此,当修改形参的值时,实参的值也会被修改。 **在 C\# 中,需要使用 ref 关键字来使用引用传递:** class Demo { static void Main(string[] args) { int num = 11; Console.WriteLine("调用函数之前:{0}", num); Func(out num); Console.WriteLine("调用函数之后:{0}", num); } public static void Func(out int val){ val = 22; } }; // 输出 // 调用函数之前:11 // 调用函数之后:22 // 通过运行结果可以看出,在函数体内直接更改了nun的值 #### 3)输出传递 #### 使用 return 语句可以从函数中返回一个值,但是使用输出传递则可以从函数中一次性返回多个值。输出传递与引用传递相似,不同之处在于输出传递是将数据从函数中传输出来而不是传输到函数中。 **在 C\# 中,需要使用 out 关键字来使用输出传递** class Demo { static void Main(string[] args) { int num = 11; Console.WriteLine("调用函数之前:{0}", num); Func(out num); Console.WriteLine("调用函数之后:{0}", num); } public static void Func(out int val){ val = 22; } }; // 输出 // 调用函数之前:11 // 调用函数之后:22 // 通过运行结果可以看出,在函数体内直接更改了nun的值 #### **out和ref的区别** #### out修饰的参数必须在方法内修改,而ref可以修改也可以不修改,out在传入参数的时候,参数是局部变量的话,可以不用赋值,因为out一定会对其进行赋值,而ref修饰的参数,在实参必须有初始值才能调用。因为ref修饰的不一定会给它赋值 [009582522a6645f6b99f0f8fba17c701.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/b85d43c50a0c418aad3f65a48f4c520b.png [16ca116281d74f08828baa2963bfcb47.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/07b85b12bf5d49ab8ba672113f8d617c.png [ef874de1e2c840f98de5931943b8a784.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/d64e887817c940e6bfd194cc51b4ef66.png [921abcf97074454da61dc8f748d7de1d.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/63500e9f4bd04eba95e1e2c6d34ca964.png [9397149ca0374dedba565904062cf447.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/0afdd5495e584f5b917a430ea67bf9a3.png [e05563da60c842ea9df3c0327b7f6e47.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/2247940505db4d5ab9c5e8c9781cd65c.png [446b3d40bafc480b88c114fce1ecb82c.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/8c6f2c50bca343598d93ea11a8d0105d.png [b21067d55842471d931dc171c9a62607.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/bbfe601864414f7c91f69521e7cee7a9.png [16f0170308d84ae3be1f4cd4523daedb.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/03/30/83d64d148fa44148bc2e0b6d270f3dac.png
相关 C#基础 目录 一.面向对象 1.什么是面向对象? 2.面向对象编程的四项基本原则为: 二.类和对象 1.类是一种活动的数据结构 2..一个简单的实例: 3..声明类 心已赠人/ 2024年03月30日 09:50/ 0 赞/ 25 阅读
相关 C#基础 目录 补充 C\基本语法 一.注释 二.格式字符串 三.字符串插值 四.变量 1.C\中的数据类型 2.声明变量 3.变量的命名规则 C\进阶语法 1. 系统管理员/ 2024年03月30日 09:20/ 0 赞/ 25 阅读
相关 C# 基础 目录 前言:上一篇我们主要讨论了.NET跟.NET Core的区别并决定为什么选择使用.NET Core 一.C\介绍 1.特点 2.改进了编程环境 二.一个简单的C 约定不等于承诺〃/ 2024年03月30日 09:12/ 0 赞/ 21 阅读
相关 c++基础 1.面向过程编程VS面向对象编程VS汇编语言 面向过程:复用性差,维护性差,扩展性差,但运行效率最高。 面向对象:复用性好,维护性好,扩展性好,灵活性好,但运行效率 深碍√TFBOYSˉ_/ 2022年09月28日 01:23/ 0 赞/ 47 阅读
相关 C#基础 C\环境:C\是.NET框架的一部分,且用于编写.NET应用程序,所以有必要了解一下.NET 。 .NET FrameWork是一个创新的平台,可以用来编写一下应用程序:W 待我称王封你为后i/ 2022年09月25日 15:20/ 0 赞/ 68 阅读
相关 C#基础 一、变量命名 变量的命名规则: 1、必须字母或@符号开头,不可数字开头; 2、后面可以跟任意字母数字下划线 (1)Int int=30报错,int @int=3 清疚/ 2022年08月18日 11:38/ 0 赞/ 71 阅读
相关 C#基础 C\编程语言是由微软公司的Anders Hejlsberg和 Scott Willamette领导的开发小组专门为.NET平台设计的语言,它可以使程序员移植到.NET上。这种 女爷i/ 2022年08月18日 03:10/ 0 赞/ 85 阅读
相关 C#基础 一、C\简介 C\是微软公司发布的一种面向对象的、[运行于.NET][.NET] Framework之上的高级程序设计语言。C\看起来与Java有着惊人的相似;它包括了诸 左手的ㄟ右手/ 2022年04月13日 11:17/ 0 赞/ 147 阅读
相关 C#基础 一、数据类型 1、值类型:值类型直接包含数据。 2、引用类型:引用类型不包含存储在变量中的实际数据,但它们包含对变量的引用。它们指的是一个内存位置。使用多个变量时,引用 喜欢ヅ旅行/ 2021年11月14日 00:12/ 0 赞/ 211 阅读
相关 C#基础 转载自:《[C\入门经典][C]》 非常详细的入门教程: 第1章-入门知识: C\是什么;.NET Framework是什么;VS2015安装教程;VS2015常用菜 落日映苍穹つ/ 2021年10月24日 03:42/ 0 赞/ 203 阅读
还没有评论,来说两句吧...