




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2019年11月25日,第4章控制台应用程序设计,教学目标,本章主要介绍命名空间概念、定义及导入方法,标准输入输出类System.Console类的应用,System.Convert类的应用,C#程序的基本结构,Main方法的定义方法及功能,控制台应用程序的设计,命令行方式上机操作等内容。通过本章的学习,读者将对C#的框架有个初步的认识,能够完成控制台应用程序的设计,熟悉命令行方式上机操作。,教学重点,命名空间概念的含义namespace和using关键字使用System.Console类的使用System.Convert类的使用Main方法C#主要预处理指令的使用C#程序的基本结构控制台应用程序的设计,命名空间是一组包含相关方法的相似类,专门用于避免类与类之间的名称冲突。命名空间用来声明一个范围,可以在这个范围内组织代码,创建全局唯一的类型。它把多个类收集在一起成为一组,便于组织代码,使自己的任务和他人提供的代码库分离;避免类与类之间的名称冲突;还可以提高编译速度。命名空间可以嵌套,从而分成层次。多个源代码文件可以使用同一个命名空间。使用命名空间好处:一是可以使每个命名空间中的类不至于过多,二是可以保证类名的唯一性。,4.1命名空间,使用namespace关键字定义命名空间。一个文件中可以有多个namespace语句。即使未显式声明命名空间,也会创建默认命名空间。全局命名空间中的任何标识符都可用于命名空间中。namespace语句中包含的类可以使用private或public修饰符,缺省为public。,4.1.1namespace关键字,namespace语句对于源文件的存放位置并无要求。编译器编译时也不对文件位置做检查。提示:最好使用单位的名称作为根命名空间。.NetFramework由许多命名空间组成,其中最重要的是System。.NetFramework类库常用的命名空间如下表所示:,4.1.1namespace关键字,4.1.1namespace关键字,.NetFramework类库以命名空间的形式被组织成层次结构。如同wingdows的目录结构,在使用其他命名空间中的类时,需要写上完整的类名称,当类嵌套了几层时,就会产生一些冗长的名称。例如:,4.1.2using关键字,为了节约键入时间C#提供了using指示符。using的作用是导入命名空间中的所有公开类。using的语法格式是:using命名空间的层次结构名称;,输入和输出是很多程序中常用的功能,也是非常重要的功能,C#提供了功能强大的输入与输出的控制。Console类对从控制台读取字符并向控制台写入字符的应用程序提供基本支持。如果控制台不存在(在基于Windows的应用程序中就是这样),则不显示向控制台的写入而且不会引发异常。,4.2System.Console类,Console类的属性:如表4-2所示。Console类的方法:如表4-3所示。,4.2System.Console类,Console类的属性:表4-2,Console类的方法:表4-3,示例:Ex4-1、Ex4-2,在C#的System命名空间中,有一个Convert(转换)类,该类提供了由字符串类型转换为其他类型的一系列静态方法。调用格式:Convert.静态方法名(字符串类型数据)表4-4给出了Convert类的常用静态方法。,4.3System.Convert类,表4-4Convert类常用的静态方法,示例:Ex4-4,每一个应用程序都必须包含一个名称为Main的方法,这个方法可以在任何一个类中定义。具体在哪个类中包含这个方法是无关紧要的。在一个给定的应用程序中可以包含任意数量的类,只要其中一个类包含名称为Main的方法就可以了。另外,这个方法必须被定义为“public”和“static”。,4.4Main方法,Main方法总共有以下4种签名(返回类型和参数):publicstaticvoidMain()publicstaticvoidMain(stringargs)publicstaticintMain()publicstaticintMain(stringargs)/带参数的Main方法可以使程序读取命令行参数。,4.4Main方法,4.5C#预处理器指令,1.#define预处理器指令#define可用来定义符号。其定义的一般格式是:#define符号名可以用#undef来取消定义符号。其定义的一般格式是:#undef已定义的符号名注:#define可以定义符号,但无法对符号进行赋值;#define指令必须出现在文件内容的最前面。,4.5C#预处理器指令,2.#region.#endregion#region.#endregion之间的代码块可以在VisualStudio中展开或折叠。,4.5C#预处理器指令,3.#if#elif#else#endif使用#if以及#else、#elif、#endif、#define和#undef指令,可以包括或排除基于由一个或多个符号组成的条件的代码。这在编译调试版本的代码或编译特定配置时非常有用。其定义的一般格式是:#if(符号表达式1)#elif(符号表达式2)#else#endif,4.6C#程序结构,C#程序结构特点如下:所有代码都组织在类中。程序从Main()方法开始执行,Main方法可以包含字符串数组(stringargs)类型的参数。C#语言区分大小写。C#程序中允许任意多的空白。C#程序中可以使用/,/*/和/添加注释,/后面跟xml。,4.6C#程序结构,C#程序可由一个或多个文件组成。每个文件可包含一个或多个命名空间。一个命名空间除了可包含其他命名空间外,还可包含class(类)、struct(结构)、interface(接口)、enum(枚举)、delegate(代理或叫委派)等类型。下面给出C#程序的框架,它可能包含所有这些元素。,4.7创建一个控制台应用程序,在VisualStudio2005中创建一个控制台应用程序步骤是:(1)启动MicrosoftVisualStudio2005。(2)选择【文件】|【新建】|【项目】。随后会打开【新建项目】对话框。(3)在【模板】选项区域中选择【控制台应用程序】图标。(4)在【位置】文本框中输入项目文件的路径。(5)在【名称】文本框输入文件名或用默认的文件名。(6)确定已勾选了【创建解决方案的目录】选项,然后单击【确定】按钮。,4.7创建一个控制台应用程序,(7)在显示了Program.cs文件【代码和文本编辑器】窗口Main方法的大括号中输入你的源程序。/Outputtexttothescreen.Console.WriteLine(欢迎使用VisualStudio2005开发C#程序);Console.ReadKey();(8)选择【生成】|【生成解决方案】,确定错误列表窗口没有任何错误出现。如有错误,修改源程序,重新编译,直到没有任何严重错误为止。该过程将编译项目中包括的所有文件,编译结果显示在“输出”窗口中,如果结果显示“生成:1已成功,0已失
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025事业单位招聘通关题库及答案详解(历年真题)
- 2025个人房产抵押借款合同模板
- 2024计算机四级能力提升B卷题库【完整版】附答案详解
- 自考专业(建筑工程)全真模拟模拟题【考点精练】附答案详解
- 教师招聘之《中学教师招聘》通关试卷提供答案解析及参考答案详解1套
- 2024-2025学年度自考公共课考前冲刺练习题【必考】附答案详解
- 2023年度医院三基考试检测卷含完整答案详解(易错题)
- 2025水利工程贷款合同完整样本
- 2024-2025学年施工员考前冲刺试卷附参考答案详解(培优A卷)
- 2024年职称计算机题库检测试题打印含答案详解【轻巧夺冠】
- 浙江安保考试题库及答案
- 苏州安全生产教育培训课件
- 私密线上招商课件
- 兵团面试题目及答案
- 2025贵州贵阳市投资控股集团房地产置业有限公司招聘12人考试参考题库及答案解析
- 2025水发集团有限公司招聘216人考试模拟试题及答案解析
- 智慧加油站物联网综合管控平台建设综合解决方案
- 2025年甘肃省公职人员考试时事政治考试试题(附含答案)
- 花岗岩铺设方案
- 2025年护理疼痛试题及答案
- 桥梁工程监理工作实施方案
评论
0/150
提交评论