使用c开发数据库应用程序(cwinforms)第一章.ppt
第第第第一章一章一章一章用用用用 Hello ACCP.NETHello ACCP.NET 快速热身快速热身快速热身快速热身(一一一一)1课程地位课程地位PrevHTMLSQL BaseLogic JavaC#/WinFormsSTBProject1:ADO.Net+WinForms C/SADO.Net/Three TierJavaScriptSQL AdvanceJava OOPProject2:B/S.Net/OOPJSPAjax/Web ServiceJSP/Servlet/JavaBean/Web ServiceStruts/Hibernate/Spring/AjaxASP.NetNTCProject3:.Net/Java HR/CRM/OA/B2C B/S行业手册行业手册2就业技能结构图就业技能结构图本门课程主要本门课程主要技能点技能点3本门课程目标本门课程目标学完本门课程后,你能够:学完本门课程后,你能够:运用运用 C#编写编写.NET 命令行程序命令行程序运用运用 C#/WinForms 编写编写.NET 窗口程序窗口程序运用运用 ADO.NET 编写编写数据库应用程序数据库应用程序4课程项目展示课程项目展示阶段项目阶段项目 MyQQ 演示演示项目案例考试管理系统在线答题项目案例考试管理系统在线答题演示演示5预习检查预习检查什么是什么是 C#,举例说明,举例说明 C#能做什么?能做什么?说说说说 VS 中创建中创建 C#控制台程序的步骤?控制台程序的步骤?C#中变量的命名规则有什么?中变量的命名规则有什么?6本章任务本章任务编写简单的编写简单的 Hello ACCP.NET 控制台应用程序控制台应用程序输出学员信息输出学员信息航班机票预定航班机票预定输出学员成绩输出学员成绩根据时间问好根据时间问好7本章目标本章目标掌握简单掌握简单 C#程序的开发步骤程序的开发步骤掌握掌握 C#中的变量类型及命名规则中的变量类型及命名规则会使用会使用 Console 类进行控制台输入输出类进行控制台输入输出掌握掌握 C#中的条件判断语句中的条件判断语句8.NET 与与 C#概述概述2-1.NET 是微软公司推出的平台开发环境是微软公司推出的平台开发环境 C#(C Sharp)是一种强大的、面向对象的程序开发语)是一种强大的、面向对象的程序开发语言,是专为言,是专为.NET 开发而设计出的语言开发而设计出的语言9.NET 与与 C#概述概述2-2使用使用 C#能做什么?能做什么?本学期内容本学期内容 C#桌面应用程序桌面应用程序WinFormsInternet 应用程序应用程序ASP.NETWindows 服务程序服务程序Windows ServiceWeb 服务程序服务程序Web Service10IDE 概述概述 Visual Studio 简介:简介:一套完整的开发工具集一套完整的开发工具集用于开发桌面应用程序、用于开发桌面应用程序、ASP.NET Web 应用程序、应用程序、XML、Web Service、移动应用程序、移动应用程序为快速开发提供强大支持为快速开发提供强大支持11VS 窗口结构简介窗口结构简介菜单栏菜单栏工工具具栏栏代码编辑区代码编辑区编译、调试错误列表编译、调试错误列表解决方解决方案资源案资源管理器管理器12创建创建 C#应用程序应用程序使用使用 VS 创建创建 C#应用程序的步骤:应用程序的步骤:演示示例演示示例1:第一个第一个 Hello ACCP.NET 程序程序新建项目新建项目(project)1生成可执行文件生成可执行文件(build)2调试调试(debug)313解决方案资源管理器解决方案资源管理器解决方案资源管理器:解决方案资源管理器:项目及其文件的有组织的视图项目及其文件的有组织的视图相关命令的便捷访问相关命令的便捷访问项目名称项目名称源文件源文件以以.cs为扩为扩展名展名编译后的可执行文件编译后的可执行文件 解决方案名称解决方案名称 14程序组成分析程序组成分析using System;using System.Collections.Generic;using System.Text;namespace HelloACCP class Program static void Main(string args)Console.WriteLine(Hello ACCP.NET);Console.ReadLine();与与 Java 的应用程序的应用程序结构相比:结构相比:相似点?相似点?不同点?不同点?不需要显式不需要显式声明为声明为 public15C#的的 Main 方法方法四种四种 Main 方法:方法:static void Main(string args)static int Main(string args)static void Main()static int Main()Main 首字母大写首字母大写返回值可以为返回值可以为 void 或者或者 int命令行参数是命令行参数是可选可选的的16小结小结C#源程序的扩展名是什么?源程序的扩展名是什么?C#源程序文件名与其中的公共类名必须一致吗?源程序文件名与其中的公共类名必须一致吗?17C#中的变量中的变量2-1回顾:回顾:Java 中常用的数据类型有哪些?中常用的数据类型有哪些?常用数据类型常用数据类型JavaC#举例举例整型整型intint年龄年龄浮点型浮点型floatfloat成绩成绩字符串字符串Stringstring姓名姓名布尔型布尔型booleanbool是否少数民族是否少数民族18C#中的变量中的变量2-2变量命名规则:变量命名规则:组成:组成:52个字母个字母(A-Z,a-z),10个数字个数字(0-9),下划线,下划线(_)开头:开头:字母或下划线字母或下划线不能不能是关键字是关键字C#变量命名变量命名编码规范编码规范Camel 命名法:命名法:首个单词的首字母小写,其余单词的首字母大写。首个单词的首字母小写,其余单词的首字母大写。例如例如 myName 19C#中的注释中的注释回顾:回顾:Java 中的注释有哪些?中的注释有哪些?注释类型注释类型JavaC#行注释行注释/块注释块注释/*/*/文档注释文档注释/*/20Console 类类向控制台输出:向控制台输出:Console.WriteLine()方法方法输出后输出后换行换行Console.Write()方法方法输出后输出后不换行不换行从控制台读入:从控制台读入:Console.ReadLine();返回值为返回值为string类型类型 Console.WriteLine(Hello ACCP.NET);Console.ReadLine();示例示例1中的核心代码:中的核心代码:控制台类控制台类21向控制台输出向控制台输出 Console.WriteLine();/相当于换行相当于换行向控制台输出的几种方式向控制台输出的几种方式 Console.WriteLine(要输出的值要输出的值);/输出一个值输出一个值 Console.WriteLine(格式字符串格式字符串,变量列表变量列表);Console.WriteLine(Hello ACCP.NET);string course=C#;Console.WriteLine(course);Console.WriteLine(我的课程名称是:我的课程名称是:+course);Console.WriteLine(我的课程名称是:我的课程名称是:0,course);与与 Java 用法相同用法相同 演示示例演示示例2:向控制台输出向控制台输出22示例示例 2 代码分析代码分析示例示例2关键代码回顾:关键代码回顾:static void Main(string args)string course=C#;/课程名称课程名称 Console.WriteLine(我的课程名称是:我的课程名称是:0,course);Console.ReadLine();0:占位符占位符依次使用依次使用0、1、2与变量列表中的变量对应与变量列表中的变量对应可以在字符串中使用可以在字符串中使用 n、t 来控制换行或制表来控制换行或制表示例示例2 2源代码源代码格式字符串格式字符串变量列表变量列表23从控制台输入从控制台输入读取一行,返回一个字符串读取一行,返回一个字符串 string 类型类型读取整数读取整数string name=Console.ReadLine();int age=int.Parse(Console.ReadLine();Console.ReadLine();int.Parse(Console.ReadLine();表示将字符串转换为整数表示将字符串转换为整数24简单综合应用简单综合应用输入输入2名学员的信息,包括姓名、年龄,输出到控制台名学员的信息,包括姓名、年龄,输出到控制台要求:两种方式输出要求:两种方式输出第一种,使用第一种,使用+连接输出第一个学员的信息连接输出第一个学员的信息第二种,使用格式字符串输出第二个学员的信息第二种,使用格式字符串输出第二个学员的信息演示示例演示示例3:输入输出综合应用输入输出综合应用25示例示例 3 代码分析代码分析/输入第一个学员信息输入第一个学员信息Console.WriteLine(请输入第一个学员的姓名:请输入第一个学员的姓名:);name1=Console.ReadLine();Console.WriteLine(请输入第一个学员的年龄:请输入第一个学员的年龄:);age1=int.Parse(Console.ReadLine();/输入第二个学员信息输入第二个学员信息/输出学员信息输出学员信息Console.WriteLine(第一个学员的姓名第一个学员的姓名+name1+,年龄年龄+age1+岁岁);Console.WriteLine(第二个学员的姓名第二个学员的姓名0,年龄年龄1岁岁,name2,age2);+连接输出连接输出格式字符串输出格式字符串输出示例示例3 3源代码源代码示例示例3关键代码回顾:关键代码回顾:输入输入26小结小结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个整数,输出两个数的和个整数,输出两个数的和参考答案参考答案27C#中的条件判断中的条件判断C#与与 Java 中的条件判断语句对比:中的条件判断语句对比:条件判断语句条件判断语句JavaC#ifif()二者完全相同二者完全相同if else if()else if()二者完全相同二者完全相同else switchC#与与 Java 的语法有区别的语法有区别28条件判断进阶条件判断进阶嵌套嵌套 if机票预定:输出实际机票价格机票预定:输出实际机票价格原价为原价为4000元元5-10月为旺季,头等舱打月为旺季,头等舱打9折,经济舱打折,经济舱打7.5折折其他时间为淡季,头等舱打其他时间为淡季,头等舱打6折,经济舱打折,经济舱打3折折需要两次判断需要两次判断首先判断是旺季还是淡季首先判断是旺季还是淡季再判断头等舱还是经济舱再判断头等舱还是经济舱嵌套嵌套 if 实现实现演示示例演示示例4:使用嵌套使用嵌套 if 计算机票价格计算机票价格29示例示例 4 分析分析if(month=5&month=10)/旺季旺季 if(type=1)/头等舱头等舱 Console.WriteLine(您的机票价格为您的机票价格为:0,price*0.9);else if(type=2)/经济舱经济舱 Console.WriteLine(您的机票价格为您的机票价格为:0,price*0.75);else /淡季淡季 /示例示例4 4源代码源代码关键代码回顾关键代码回顾嵌入的一对嵌入的一对 ifelse30嵌套嵌套 if 语法小结语法小结if(表达式表达式1)if(表达式表达式2)/表达式表达式2为真时执行为真时执行 else /表达式表达式2为假时执行为假时执行 else /表达式表达式1为假时执行为假时执行嵌套嵌套 if:if 块中又嵌入块中又嵌入 if31switch 结构对比结构对比Java 与与 C#中的中的 switch 语句对比语句对比switch(int/char表达式表达式)case 常量表达式常量表达式1:语句语句1;break;/可以没有可以没有 case 常量表达式常量表达式2:语句语句2;break;/可以没有可以没有 default:语句语句n;Javaswitch(int/char/string表达式表达式)case 常量表达式常量表达式1:语句语句1;break;/必须有必须有 case 常量表达式常量表达式2:语句语句2;break;/必须有必须有 default:语句语句n;break;/必须有必须有C#32使用使用 switch 示例示例有两名学员的姓名、考试科目、成绩有两名学员的姓名、考试科目、成绩根据输入的姓名,按以下方式输出该名学员的成绩根据输入的姓名,按以下方式输出该名学员的成绩 演示示例演示示例5:利用利用 switch 输出学员信息输出学员信息 姓名姓名科目科目分数分数张三张三C#9133示例示例 5 分析分析关键代码回顾关键代码回顾string choice=Console.ReadLine();/输入学员姓名输入学员姓名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 5源代码源代码 34常见错误常见错误string choice=Console.ReadLine();/输入学员姓名输入学员姓名switch(choice)case 张三张三:Console.WriteLine(0t1t2,name1,subject1,score1);/break;case 李四李四:Console.WriteLine(0t1t2,name2,subject2,score2);/break;default:Console.WriteLine(抱歉!没有你要找的学员!抱歉!没有你要找的学员!);/break;错误原因:错误原因:case 和和 default 中都中都缺少缺少 break 语句语句35使用使用 switch 示例示例输入一个时间(整数)输入一个时间(整数)在在6-10点之间,输出点之间,输出“上午好上午好”在在11-13点之间,输出点之间,输出“中午好中午好”在在14-18点之间,输出点之间,输出“下午好下午好”其他情况输出其他情况输出“休息时间休息时间”演示示例演示示例6:使用使用 switch 问好问好36C#中的中的 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语句语句37小结小结输入一个时间输入一个时间如果是如果是6点输出点输出“该起床了该起床了”如果是如果是12点输出点输出“该吃饭了该吃饭了”否则输出否则输出“该睡觉了该睡觉了”使用使用 switch 语句实现语句实现参考答案参考答案string time=Console.ReadLine();/输入时间输入时间switch(time)/判断判断 case 6:Console.WriteLine(该起床了该起床了);break;case 12:Console.WriteLine(该吃饭了该吃饭了);break;default:Console.WriteLine(该睡觉了该睡觉了);break;38总结总结怎样向控制台输出信息?怎样向控制台输出信息?怎样从控制台读入信息?怎样从控制台读入信息?C#和和 Java 中的中的 switch 语句有什么不同?语句有什么不同?39作业作业课后作业课后作业必做必做教员备课时在此添加内容教员备课时在此添加内容选做选做教员备课时在此添加内容教员备课时在此添加内容提交时间:提交时间:xxx提交形式:提交形式:xxx预习作业预习作业背诵英文单词背诵英文单词教员备课时在此添加内容教员备课时在此添加内容40Thank you41