1、第一章,用 Hello ACCP.NET 快速热身(一),课程地位,就业技能结构图,本门课程目标,学完本门课程后,你能够:运用 C# 编写 .NET 命令行程序运用 C#/WinForms 编写 .NET 窗口程序运用 ADO.NET 编写数据库应用程序,课程项目展示,阶段项目 MyQQ 演示项目案例考试管理系统在线答题演示,预习检查,什么是 C#,举例说明 C# 能做什么?说说 VS 中创建 C# 控制台程序的步骤?C# 中变量的命名规则有什么?,本章任务,编写简单的 Hello ACCP.NET 控制台应用程序输出学员信息航班机票预定输出学员成绩根据时间问好,本章目标,掌握简单 C# 程序
2、的开发步骤掌握 C# 中的变量类型及命名规则会使用 Console 类进行控制台输入输出掌握 C# 中的条件判断语句,.NET 与 C# 概述2-1,.NET 是微软公司推出的平台开发环境 C#(C Sharp)是一种强大的、面向对象的程序开发语言,是专为 .NET 开发而设计出的语言,.NET 与 C# 概述2-2,使用 C# 能做什么?,本学期内容,C#,桌面应用程序WinForms,Internet 应用程序ASP.NET,Windows 服务程序Windows Service,Web 服务程序Web Service,IDE 概述,Visual Studio 简介:一套完整的开发工具集用
3、于开发桌面应用程序、ASP.NET Web 应用程序、XML、Web Service、移动应用程序为快速开发提供强大支持,VS 窗口结构简介,创建 C# 应用程序,使用 VS 创建 C# 应用程序的步骤:,演示示例1:第一个 Hello ACCP . NET 程序,解决方案资源管理器,解决方案资源管理器:项目及其文件的有组织的视图相关命令的便捷访问,项目名称,源文件以.cs为扩展名,编译后的可执行文件,解决方案名称,程序组成分析,using System;using System.Collections.Generic;using System.Text;namespace HelloACCP
4、 class Program static void Main(string args) Console.WriteLine(Hello ACCP .NET); Console.ReadLine( ); ,与 Java 的应用程序结构相比:,相似点?,不同点?,不需要显式声明为 public,C# 的 Main 方法,四种 Main 方法:static void Main ( string args ) static int Main ( string args ) static void Main ( ) static int Main ( ) ,Main 首字母大写返回值可以为 void
5、或者 int命令行参数是可选的,小结,C# 源程序的扩展名是什么?C# 源程序文件名与其中的公共类名必须一致吗?,C# 中的变量2-1,回顾:Java 中常用的数据类型有哪些?,C# 中的变量2-2,变量命名规则:组成:52个字母(A-Z, a-z),10个数字(0-9),下划线(_)开头:字母或下划线不能是关键字,C# 变量命名编码规范Camel 命名法:首个单词的首字母小写,其余单词的首字母大写。例如 myName,C# 中的注释,回顾:Java 中的注释有哪些?,Console 类,向控制台输出:Console.WriteLine()方法输出后换行Console.Write()方法输出后
6、不换行从控制台读入:Console.ReadLine(); 返回值为string类型,Console .WriteLine(Hello ACCP .NET); Console .ReadLine( );,示例1中的核心代码:,控制台类,向控制台输出,Console.WriteLine(); / 相当于换行,向控制台输出的几种方式,Console.WriteLine(要输出的值); / 输出一个值,Console.WriteLine(格式字符串, 变量列表);,Console.WriteLine (Hello ACCP .NET);,string course = C#; Console.Wri
7、teLine(course); Console.WriteLine(我的课程名称是: + course); Console.WriteLine(我的课程名称是:0,course);,与 Java 用法相同,演示示例2:向控制台输出,示例 2 代码分析,示例2关键代码回顾:,static void Main(string args) string course = C#; /课程名称 Console.WriteLine( 我的课程名称是:0 , course ); Console.ReadLine();,0:占位符依次使用0、1、2与变量列表中的变量对应可以在字符串中使用 n 、 t 来控制换行
8、或制表,示例2源代码,格式字符串,变量列表,从控制台输入,读取一行,返回一个字符串 string 类型,读取整数,string name = Console.ReadLine( ); int age = int.Parse (Console.ReadLine();,Console.ReadLine( );,int.Parse (Console.ReadLine();,表示将字符串转换为整数,简单综合应用,输入2名学员的信息,包括姓名、年龄,输出到控制台要求:两种方式输出第一种,使用 + 连接输出第一个学员的信息第二种,使用格式字符串输出第二个学员的信息,演示示例3:输入输出综合应用,示例 3
9、代码分析,/ 输入第一个学员信息Console.WriteLine(请输入第一个学员的姓名:);name1 = Console.ReadLine();Console.WriteLine(请输入第一个学员的年龄:);age1 = int.Parse(Console.ReadLine();/ 输入第二个学员信息/ / 输出学员信息Console.WriteLine(第一个学员的姓名 + name1 + ,年龄 + age1 + 岁);Console.WriteLine(第二个学员的姓名0,年龄1岁, name2, age2);,+ 连接输出,格式字符串输出,示例3源代码,示例3关键代码回顾:,输入
10、,小结,static void Main(string args) int num1; int num2; num1 = int.Parse(Console.ReadLine(); num2 = int.Parse(Console.ReadLine(); Console.WriteLine(0+1=2,num1, num2, num1 + num2);,输入2个整数,输出两个数的和,参考答案,C# 中的条件判断,C# 与 Java 中的条件判断语句对比:,条件判断进阶嵌套 if,机票预定:输出实际机票价格原价为4000元5-10月为旺季,头等舱打9折,经济舱打7.5折其他时间为淡季,头等舱打6
11、折,经济舱打3折,需要两次判断首先判断是旺季还是淡季再判断头等舱还是经济舱,嵌套 if 实现,演示示例4:使用嵌套 if 计算机票价格,示例 4 分析,if (month = 5 else / 淡季 / ,示例4源代码,关键代码回顾,嵌入的一对 ifelse,嵌套 if 语法小结,if(表达式1) if(表达式2) / 表达式2为真时执行 else / 表达式2为假时执行 else /表达式1为假时执行,嵌套 if :if 块中又嵌入 if,switch 结构对比,Java 与 C# 中的 switch 语句对比,switch (int / char表达式) case 常量表达式1: 语句1;
12、 break; /可以没有 case 常量表达式2: 语句2; break; /可以没有 default: 语句n;,Java,switch (int / char / string表达式) case 常量表达式1: 语句1; break; /必须有 case 常量表达式2: 语句2; break; /必须有 default: 语句n; break; /必须有,C#,使用 switch 示例,有两名学员的姓名、考试科目、成绩根据输入的姓名,按以下方式输出该名学员的成绩,演示示例5:利用 switch 输出学员信息,示例 5 分析,关键代码回顾,string choice = Console.R
13、eadLine(); / 输入学员姓名switch ( choice ) case 张三: Console.WriteLine( 0t1t2, name1, subject1, score1); break; case 李四: Console.WriteLine(0t1t2, name2, subject2, score2); break; default: Console.WriteLine(抱歉!没有你要找的学员!); break;,string 类型,t 使输出制表,示例5源代码,常见错误,string choice = Console.ReadLine(); / 输入学员姓名switc
14、h ( choice ) case 张三: Console.WriteLine( 0t1t2, name1, subject1, score1); /break; case 李四: Console.WriteLine(0t1t2, name2, subject2, score2); /break; default: Console.WriteLine(抱歉!没有你要找的学员!); /break;,错误原因:case 和 default 中都缺少 break 语句,使用 switch 示例,输入一个时间(整数)在6-10点之间,输出“上午好”在11-13点之间,输出“中午好”在14-18点之间,
15、输出“下午好”其他情况输出“休息时间”,演示示例6:使用 switch 问好,C# 中的 switch 结构小结,条件判断的表达式类型 整型或字符串break 语句的要求:每个 case 都有 breakdefault 也要有 break特殊情况:,/ 示例6中的代码string time;switch(time) case 6: case 7: case 8: case 9: case 10: Console.WriteLine(上午好 ); break; / default: Console.WriteLine(休息时间); break;,case 中没有其他语句时,不需要break语句,
16、小结,输入一个时间如果是6点输出“该起床了”如果是12点输出“该吃饭了”否则输出“该睡觉了”使用 switch 语句实现,参考答案,string time = Console.ReadLine(); / 输入时间switch (time) / 判断 case 6: Console.WriteLine(该起床了); break; case 12: Console.WriteLine(该吃饭了); break; default: Console.WriteLine(该睡觉了); break;,总结,怎样向控制台输出信息?怎样从控制台读入信息?C# 和 Java 中的 switch 语句有什么不同?,Thank you,