当前位置:文档之家› VB6与vbNet区别

VB6与vbNet区别

VB6与vbNet区别
VB6与vbNet区别

https://www.doczj.com/doc/fb17223316.html, 和 VB6 区别
Visual Basic .NET 是 Microsoft Visual Studio .NET 套件中主要组成部 分之一。.NET 版本的 Visual Basic 增加了更多特性,而且演化为完全面 向对象(就像 C++)的编程语言。本文将介绍 https://www.doczj.com/doc/fb17223316.html, 的新特性,并比较 VB6.0/https://www.doczj.com/doc/fb17223316.html, 之间的区别, 阐述如何利用 https://www.doczj.com/doc/fb17223316.html, 编写简单的应用程序。 1.1 什么是 https://www.doczj.com/doc/fb17223316.html,? Microsoft 推出全新的编程和操作系统 Framework ——.NET,支持多种语言利用公共.NET 库开发应用程序,这些应用程序 在.NET Framework 上运行。 使用 Visual Basic 在.NET Framework 上编 程,这就是 https://www.doczj.com/doc/fb17223316.html,。 首先,让我演示在 https://www.doczj.com/doc/fb17223316.html, 中写最简单的控制台程序:Hello World。 1.2 Hello, World!―Hello World!‖是初学者学习 Windows 编程的代表性程 序。 我们的第一个程序就叫做―Hello https://www.doczj.com/doc/fb17223316.html, World!‖。 该程序在控制台输 出一句话:―Hello https://www.doczj.com/doc/fb17223316.html, World!‖,代码如下所示: 代码 1.1: Hello https://www.doczj.com/doc/fb17223316.html, World 例子 Imports System Module Module1 Sub Main() System.Console.WriteLine("Hello https://www.doczj.com/doc/fb17223316.html, World!") End Sub End Module 1.3 https://www.doczj.com/doc/fb17223316.html, 编辑器和编译器你可以在记事本或 https://www.doczj.com/doc/fb17223316.html, IDE 等任意文 本编辑器中撰写上述代码,然后保存为 HelloWorld.vb。 代码编写完成之 后,要么在命令行、要么在 https://www.doczj.com/doc/fb17223316.html, IDE 中编译它。在 Microsoft .NET

Framework SDK 中已经包括 https://www.doczj.com/doc/fb17223316.html, 编译器 vbc.exe[][1],从 IDE 或是 命令行都可以调用。要从命令行编译 HelloWorld.vb,请在命令行窗口输 入 vbc HelloWorld.vb /out:HelloWorld.exe /t:exe 编译结束后,HelloWorld.exe 被创建到当前目录下。在资源管理其中双击 图标或在命令行执行,程序正确地运行了。祝贺你进入 https://www.doczj.com/doc/fb17223316.html, 开发者的 行列。 Imports 语句 如你所知,大部分的.NET 类型都在名字空间(namespace)中定义。Na mespace 是定义和管理类别的范畴。察看.NET Framework Class Librar y,可以看到数以百计的 namespace。例如,System namespace 就包括 了 Console、Object 等类型定义。如果想使用 Console 类,需要用 Impor ts 指令导入 System namespace。如下所示: Imports System 甚至可以明确地调用 namespace 而无需用 Import 导入。 下面的例子展示了不用 Import 的―Hello World!‖程序: 代码 1.2: Hello https://www.doczj.com/doc/fb17223316.html, World 例子 Module Module1 Sub Main() System.Console.WriteLine("Hello https://www.doczj.com/doc/fb17223316.html, World!") End SubEnd Module1.4 解析 "Hello https://www.doczj.com/doc/fb17223316.html, World!"程序第一行是: Imports System; System namespace 定义了 Console 类, 该类用于读写 控制台(命令行窗口)。然后你定义了一个 module:Module Module1 …End Module 所有的 VB 程序都包括一个 Main()方法,即应用程序入口 点。在例子程序中,我们调用 Console.WriteLine()向控制台写入―Hello V

https://www.doczj.com/doc/fb17223316.html, World!‖: Sub Main() Console.WriteLine(―Hello https://www.doczj.com/doc/fb17223316.html, World!‖) End SubWriteLine()方法归 属于 Console 类,它负责向控制台写一个带有行结束符的字符串。如前所 述,Console 类定义于 System namespace,你通过直接引用来控制类成 员。 Console 类负责读写系统控制台。读控制台输入用 Read 和 ReadLine 方 法,向控制台输出用 WriteLine 方法。 表 1.1 Console 类定义的方法
方法 Read ReadLin e Write 写一行 用途 读入单个字符 读入一行 例子 int i = Console.Read(); string str = Console.ReadLine(); Console.Write("Write: 1");
WriteLin 写一行,并带上行结束 Console.WriteLine("Test Output Data with Li 符 e ne");
1.5 https://www.doczj.com/doc/fb17223316.html, 有什么新特点? https://www.doczj.com/doc/fb17223316.html, 比 VB6.0 更加稳定,而且完全面 向对象。也许你还记得,VB6.0 不支持继承、重载和接口,所以不是真正 面向对象的。而 https://www.doczj.com/doc/fb17223316.html, 则支持这些面向对象特性。VB6.0 有两个薄弱环 节——多线程和异常处理。在 https://www.doczj.com/doc/fb17223316.html, 中,开发多线程应用和使用 C++/ C#别无二致, 结构化异常处理也得到支持。 稍后我们会详细解释这些特性。 下面是 https://www.doczj.com/doc/fb17223316.html, 的特性列表——

· 面向对象的编程语言。支持继承、重载、接口、共享成员和构造器。· 支 持所有的 CLS 特性,如存取控制.NET 类、与其它.NET 语言交互、元数 据、公共数据类型、委托等等。· 多线程支持。· 结构化异常处理。 1.6 名 字空间与集合 前面讨论了我们的第一个 https://www.doczj.com/doc/fb17223316.html, 程序。该程序中首先引 人注意的是名字空间(namespace)。在.NET 参考文档中,你会发现每 个类都归属于某个 namespace。那么,namespace 到底是什么? 一个 namespace 是类和组件的逻辑组合,其目的在于将.NET class 按类 别定义。微软借用了 C++ class packaging 概念:namespace 来描述这 种组合。.NET Framework 中的组件被称为集合(assembly)。全部.NE T 代码在数百个库文件(DLL)中定义。Namespace 把 assembly 中定义 的类组织起来。一个 namespace 可以包括多个 assembly,一个 assembl y 也可以在多个 namespace 中定义。namespace 树的根节点是 System namespace。 在.NET Library 中, 每个 class 都在一组相似的类别中定义。 例如,System.Data namespace 只包括数据相关类。同样,System.Mul tithreading 只包括多线程类。 在使用.NET 支持的语言(如 C#、https://www.doczj.com/doc/fb17223316.html,、C++.NET 等)创建新应用程 序时,你会注意到每个应用程序都被定义为一个 namespace,而所有的 c lass 都归属于这个 namespace。通过引用这个 namespace,其它应用程 序就能存取这些 class。 在.NET 中,代码被编译为中间语言(Intermedi ate Language,IL),assembly 中存储了 IL 代码、元数据和其它资源文 件。同一个 assembly 可以附属于一个或多个 Exe/DLL。所有的.NET 库都 存储在 assembly 中。

1.7 https://www.doczj.com/doc/fb17223316.html,: 完全面向对象的编程语言抽象、封装、多态、继承是面向对 象语言的四个基本属性。VB6.0 不支持继承,而 https://www.doczj.com/doc/fb17223316.html, 则不然。所以, 和 C++一样,https://www.doczj.com/doc/fb17223316.html, 也是完全面向对象的编程语言。 Class 和 https://www.doczj.com/doc/fb17223316.html, 用 Class...End Class 语句对创建 class。每个 https://www.doczj.com/doc/fb17223316.html, 至少包括一个 Module(模块)。Module 在 Module…End Mod ule 语句对中实现。应用程序的主要模块是 Main 方法,亦即应用程序入口 点。 和 VB6.0 相似的地方是,都可以使用 Function/Sub 关键字定义方法。下 面的例子显示了如何创建 class、添加方法,并从主程序调用方法: Imp orts System Module Module1 Sub Main() Dim cls As TestClass = New TestClass Console.WriteLine(cls.MyMethod) End Sub Class TestClass Function MyMethod() As String Return "Test Method" End Function End Class End ModuleProperty 属性(Property)是类变量的公共描述。Property… End Property 语句用以创建 property。属性的 Get/Set 方法分别用于取得 和设置属性值。下面的例子中,Data 是 TestClass 的属性。 Imports System Imports System.Console

Module Module1 Sub Main() Dim cls As TestClass = New TestClass WriteLine(cls.MyMethod) WriteLine(cls.Data) cls.Data = "New Data" WriteLine(cls.Data) End Sub End Module Class TestClass Private strData As String = "Some Data" Function MyMethod() As String Return "Test Method!" End Function ' Adding Data property to the class Public Property Data() As String Get Return strData End Get Set(ByVal Value As String) strData = Value End Set End Property 重载 https://www.doczj.com/doc/fb17223316.html, 通过 overload 关键字支持方法重载。使用这个关键字,你 可以定义同名但不同参数的方法。
类成员访问域 除了原有的 Private 和 Public,https://www.doczj.com/doc/fb17223316.html, 引入了几个新关键字。全部访问 域关键字列表如下:

关键字 Private Public Friend Protected Protected Friend
作用域 限于 class 内部 可以从 class 外访问 限于 class 所属的应用程序内 只能被 class 和其派生类访问 能被 class、应用程序和派生类访问
继承继承是面向对象编程语言中最常用的技术。继承让你能够重用类代码 和功能。 https://www.doczj.com/doc/fb17223316.html, 支持继承,而 VB6.0 则不支持。继承的好处在于你能使用任何人 编写的类,从这些类派生自己的类,然后在自己的类中调用父类功能。在 下面的例子中,Class B 派生自 Class A,我们将从 Class B 中调用 Cla ss A 的方法 MethodA。 Imports System Imports System.Console Module Module1 Sub Main() Dim bObj As B = New B WriteLine(bObj.MethodA()) End Sub End Module ' Class A defined Public Class A Function MethodA() As String Return "Method A is called."

End Function End Class 'Class B, inherited from Class A. All members (Public and Protecte d) ' can be access via B now. Public Class B Inherits A Function MethodB() As String Return "Method B is called." End Function End Class 可以从一个 class 中派生多个自定义 class,也可以从多个 class 派生一个 自定义 class。 共享的成员类的共享成员被类的所有实体共享。共享成员可能是属性、方 法或字段/值域。 在你不想让用户全面控制自己的类时, 共享成员相当有用。 例如,你可以开发一个类库,让用户通过共享成员使用其中的部分功能。 可以通过 class 本身引用共享成员,而无需通过类的实体。例如:Modul e Module1 Sub Main() WriteLine(A.MethodA()) End Sub End Module ' Class A defined Public Class A Shared Function MethodA() As String Return "Method A is called." End Function End Class 多线程 VB 语言的一大弱点就是缺乏编写自由线程(free-threaded)程序

的能力。在.NET Framework 中,所有语言共享 CRL(Common Runtim e Library,公共运行库),也就是说,你可以用 https://www.doczj.com/doc/fb17223316.html,、C#或其它.NE T 语言编写同样的程序。 System.Threading namespace 定义了线程类。我们只需要引入 System. Threading namespace,即可使用线程类。 System.Threading.Thread 类提供线程对象,可以使用 Thread 类创建或 破坏线程。 创建线程使用 Thread 类的实体创建一个新线程,然后用 Thread.Start 方 法开始执行线程。线程构造器接受一个参数,该参数指明你要在线程中执 行的 procedure。在下例中,我想在 oThread1(Thread 类的一个实体) 的第二线程中执行 SecondThread 过程: oThread1 = New Thread(AddressOf SecondThread) SecondThread procedure looks like below: Public Sub SecondThread() Dim i As Integer For i = 1 To 10 Console.WriteLine(i.ToString()) Next End Sub 然后,调用 Thread.Start()开始线程: oThread1.Start() 下面的代码创建两个第二线程: Imports System Imports System.Threading

Module Module1 Public oThread1 As Thread Public oThread2 As Thread Sub Main() oThread1 = New Thread(AddressOf SecondThread) oThread2 = New Thread(AddressOf ThirdThread) oThread1.Start() oThread2.Start() End Sub Public Sub SecondThread() Dim i As Integer For i = 1 To 10 Console.WriteLine(i.ToString()) Next End Sub Public Sub ThirdThread() Dim i As Integer For i = 1 To 10 Console.WriteLine("A" + i.ToString()) Next End Sub End Module 破坏线程 调用 Abort 方法来破坏(中止)一个线程。在调用 Abort 之前, 确保用 IsAlive 判断线程处于活动状态。 If oThread1.IsAlive Then oThread1.Abort() End If 暂停线程可以使用 Sleep 方法来暂停线程执行。Sleep 方法接受一个以毫 秒为单位的参数,指明线程应当暂停多长时间。

下面的例子让线程暂停 1 秒钟: oThread2.Sleep(1000)你也可以使用 Suspend 和 Resume 方法来挂起和 继续线程执行。 设定线程优先级 Thread 类的 Priority 属性用于设定线程优先级。 该属性可 以设置为 Normal,AboveNormal,BelowNormal,Highest 和 Lowest。 如: oThread2.Priority = ThreadPriority.Highest 线程与 Apartment 使用 Apar tmentState 属性设置线程的 apartment 类型,该属性值可以为 STA,MT A 或是 Unknown[][2]: oThread.ApartmentState = ApartmentState.MTAMTS 意味着可以使用 多线程模式,而 STA 则只能是单线程执行。 Public Enum ApartmentState { STA = 0, MTA = 1, Unknown = 2, } 1.8 结构化异常处理异常处理也被称之为错误处理。作为 VB 程序员,你 一定对 On Error Goto 和 On Error Resume Next 这些 VB6.0 错误处理 语句耳熟能详。这种类型的错误处理被称为非结构化异常处理(Unstruct ured Exception Handling)。而在 https://www.doczj.com/doc/fb17223316.html, 中,Microsoft 推出了结构化 异常处理机制。https://www.doczj.com/doc/fb17223316.html, 支持类似 C++的 TryCatch..Finally 控制。Try..Ca tch..Finally 结构如下: Try ' 可能导致异常的代码

Catch ' 当异常发生时处理异常的代码 Finally ' 清理现场 End Try Try 语句块用以抛出异常。如果异常发生,在 Catch 语句块中处理。Final ly 语句块是可选的,在需要释放资源时特别有用。 1.9 VB6.0 与 https://www.doczj.com/doc/fb17223316.html, 的不同之处除了上面谈到的语言进化,还有一些语 法上的变化。 所有这些语言和语法的变化在 MSDN 中均可查到, 本文只作 简单介绍。 数据类型(Data Type)的改变 https://www.doczj.com/doc/fb17223316.html, 中有些数据类型得到改进。下面 是变化对照表。
数据类型 VB6.0 https://www.doczj.com/doc/fb17223316.html, Integer 16 bit size 32 bit size Long 32 bit size 64 bit size Currency 用于存储大浮点数 被 decimal 替代,支持更高精度 Variant 可以存储任意类型数据 被 Object 类型替代,也可以存储任意类 型数据,但结果更好 Date Date 类型被存储为 double 引入 DateTime 类型,用于存储不同格 式的日期 在 https://www.doczj.com/doc/fb17223316.html, 中,Short 数据类型是 16 bit 的。Short,Integer 和 Long 都等 同于 CLR 的 System.Int16、System.Int32 和 System.Int64 类型。 变量 声明的变化在 VB6.0 中,变量声明有许多限制。其中之一就是不能同行声

明多个变量。如果一定要在一行中声明多个变量,就一定得指明每个变量 的类型,否则将被默认为 Variant 类型。 Dim a1, a2 As Integer Dim a3 As Integer, a4 As Integer 第一行中 的 a1 是 Variant 类型,a2 是 Integer 类型。第二行中两个变量都是 Integ er 类型。https://www.doczj.com/doc/fb17223316.html, 支持同行声明多个变量,举例如下: Dim a1, a2, a3 As Integer 变量初始化是另一个问题。 VB6.0 中不能 在 同时声明和初始化变量,而 https://www.doczj.com/doc/fb17223316.html, 则支持这个特性。 Dim name As String = "Mahesh"System.Console.Write(name) 声明 常量也可以照此办理:Const DT_COUNT As Integer = 23 New 关键 字。在 https://www.doczj.com/doc/fb17223316.html, 中,New 关键字用于创建对象。由于数据类型是对象,所 以 New 关键字用以创建一个数据类型对象。 Dim i As Integer = New Integer()i = 10System.Console.WriteLine(i.T oString()) 代码块级别支持。像 C++一样,https://www.doczj.com/doc/fb17223316.html, 支持代码块级别的作 用域检查。在语句块中声明的变量只在块内有效。 For i = 1 To 10Dim p As LongSystem.Console.WriteLine(i.ToString()) NextSystem.Console.WriteLine(p.ToString()) 这段代码在 https://www.doczj.com/doc/fb17223316.html, 中会 得到一个编译错误,因为 p 在 For..Next 语句块之外不可访问。在 VB6.0 中这段代码可以通过。 改进了的类型安全 在 VB6.0 中,当你声明一个对外部过程的引用时,可以指定任意类型的参 数为 As Any。Any 关键字禁止了类型检查,允许任意数据类型传入和返 回。

https://www.doczj.com/doc/fb17223316.html, 不支持 Any 关键字。你必须指定每个参数和返回值的数据类型。 数组 https://www.doczj.com/doc/fb17223316.html, 对数组作了明显的改动。 数组范围。在 https://www.doczj.com/doc/fb17223316.html, 中,你需要格外留意数组范围问题。VB6.0 默认数 组下界为 0,故数组中的元素数量等与数组上界值加一。下面的数组界限 从 A(0)到 A(10),共有 11 个元素: Dim A(10) As Single 可以使用 Option Base 改变下界值为 1。 VB.NE 在 T 中,数组和 C++一样,下界值为 0,不支持 Option Base。注意:MSD N 文档指出数组只能包括与其尺寸相等的元素数量,例如:Dim A(10) A s Integer 只能包括 10 个元素(从 A(0)到 A(9)),但在编译下面这段代 码时我发现它运行良好,看起来数组中容纳了 11 个元素。 Dim A(10) As Integer A(0) = 12 A(2) = 24 A(10) = 23 System.Con sole.WriteLine(A(0).ToString()) System.Console.WriteLine(A(10).ToStri ng())System.Console.WriteLine(UBound(A).ToString()) System.Consol e.WriteLine(LBound(A).ToString()) Lbound 和 Ubound 分别返回 0 与 10。 ReDim 和 Fixed Array。你可以在 VB6.0 中指定固定长度的数组。 Dim ArrWeekDays(0 To 6) As Integer 这里的 ArrWeekDays 数组是固定长度的,不能用 ReDim 语句改变长度。 https://www.doczj.com/doc/fb17223316.html, 不支持固定长度数组,所以 ReDim 总是有效。 可以用下面两种方式声明数组: Dim ArrWeekDays(6) As IntegerDim ArrWeekDays() As Integer = {1, 2, 3, 4, 5, 6} ReDim 语句。在 VB6. 0 中, ReDim 用于初始化动态数组。 https://www.doczj.com/doc/fb17223316.html, 中你不能把它当作声明用。 在 ReDim 只能用于改变数组长度,不过不能改变数组维度。 Variant 对阵 ObjectVB6.0 中的 Variant 数据类型能存储任意类型变量,V

https://www.doczj.com/doc/fb17223316.html, 中 Object 具备相同能力。 算术操作符 https://www.doczj.com/doc/fb17223316.html, 支持类似 C++的快捷方式。 下面的表格显示了常规操 作与快捷操作的不同之处。快捷方式也可用于*、/、|、&等操作符。 操作符 常规语法 快捷方式加法 A = A+5 A +=5 减法 A = A – 5 A -+ 5 固定长度字符串 在 VB6.0 中,可以在声明字符串时指定其长度。https://www.doczj.com/doc/fb17223316.html, 不支持固定长度 字符串。 布尔操作符 VB6.0 中的 And、Or 或是 Xor 语句是按位操作符。而在 VB. NET 中,它们是布尔操作符。执行这些操作将返回 true 或 false。VB.NE T 引入新操作符来完成按位操作。 操作符 描述 BitAnd 按位 AndBitOr 按位 OrBitXor 按位 XorBitNot 按位 Not 结构与自定义类型在 VB6.0 中, 你使用 Type…End Type 语句块创建 结构或自定义类型。例如: Type StdRec StdId As Integer StdName As String End Type https://www.doczj.com/doc/fb17223316.html, 引入新的语法:Structure。Type…End Type 不再被支持。Stru cture…End Structure 与 C++用法相同。可以指定结构中每个元素的可访 问域,如 Public、Protected、Friend、Protected Friend、Private 等。例 如: Structure StdRec Public StdId As Integer Public StdName As String Private StdInternal As String End https://www.doczj.com/doc/fb17223316.html, 中的 Structures 就 像类一样,也可以拥有方法和属性。New 和 Nothing 关键字 VB6.0 中,A

S New 和 Nothing 关键字用于声明一个对象并初始化它。 https://www.doczj.com/doc/fb17223316.html, 不支 持隐式创建对象。如前所言,甚至连数据类型都是对象。你可以采用以下 两种方法创建数据类型或对象: Dim i As Integer Dim i As Integer = New Integer() // Do something if i = Nothing Then End If 不支持 Se t 语句 VB6.0 使用 Set 语句指派对象。例如:Set myObj = new MyObje ctSet a = b 在 https://www.doczj.com/doc/fb17223316.html, 中,不需要使用 Set 指派对象。例如:myObj = new MyObj()a = b 过程(procedure)语法的变化在 https://www.doczj.com/doc/fb17223316.html, 中过程语 法有了很多变化。例如类似 C++的过程调用方式、ByVal(传值)为默认 类型、Optional 关键字、return 语句等等。类似 C++的过程调用方式 VB 6.0 允许不用加圆括号调用过程(sub)。不过,用 Call 语句调用函数或 s ub 时,一定要使用圆括号。例如:Dim I as IntegerCall EvaluateData(2, i) EvaluateData 2, i 在 https://www.doczj.com/doc/fb17223316.html, 中,所有的方法调用都需要圆括号,而 Call 语句则是可选的。 ByVal 是默认参数类型在 VB6.0 中,在调用函数 或 sub 时 ByRef(传址)是默认类型。那意味着所有改变将反映到传入的 变量。 https://www.doczj.com/doc/fb17223316.html, 改变了这种方式。 现在, 默认的参数类型是 ByVal 传值) ( 。 Optional 关键字 VB6.0 使用 Optional 关键字可用来让用户决定传入一个 默认值, 之后在调用 IsMissing 函数判断参数是否有效。 而在 https://www.doczj.com/doc/fb17223316.html, 中, 每个可选参数必须声明其默认值,无需调用 IsMissing 函数。例如:Sub MyMethod(Optional ByVal i As Integer = 3) Return 语句 https://www.doczj.com/doc/fb17223316.html, 的 Return 语句与 C++相似。使用 Return 语句把控 制权从过程返还给调用者。在 VB6.0 中,Return 语句与 GoSub 语句一起 使用。https://www.doczj.com/doc/fb17223316.html, 不再支持 GoSub 语句。流程控制的改变下面是 https://www.doczj.com/doc/fb17223316.html,

对流程控制语句的修改:1. GoSub 不再受到支持。2. Call、Function 和 Sub 语句均可用于调用过程。3. On ... GoSub 和 On ... GoTo 语句不再 受支持。可以使用 Select Case 语句来替代。4. While ... Wend 语句现 在改为 While…End While 语句。不再支持 Wend 关键字。小结 Visual Basic .NET 是.NET 版本的 Visual Basic,已经从根本发生了变化!通过 本文你了解到 VB6.0 和 https://www.doczj.com/doc/fb17223316.html, 的区别是很大的, 可以说根本就是两种不 同的语言,因为它们的内核发生了变化,VB6.0 是基于 COM 而 https://www.doczj.com/doc/fb17223316.html, 是 基于.net 框架的, 因为这个变化, 所以在构造类时也发生了根本性的变化。

vb程序设计实验教程习题答案

实验教材实验一 1:单项选择题: A A C C C D C B B C 2:填空题: (1).bas (2).vbp,.frm (3)视图工具箱 (4)对象 (5)属性对象事件方法 (6)Windows (7)事件行为 (8)窗体模块 实验二 1:单项选择题: A D C C A B A B D C B B C B C B A B D C 2:基本运算题: (1)27 (2)3.33333333333333 (3)3 (4)0 (5)-3 (6)2 (7)ab33 (8)类型不匹配 (9)3 (10)AB3 实验三 1:单项选择题: B C B D C 2:填空题: (1)300 (2)321456 (3)Shanghai (4)6 7 6 (5)True (6)2+3=5 (7)”area=” 12.56 (8)VISUAL 实验四 1:单项选择题: C A A C A 2:填空题: (1)7 (2)3 5

(3)输入的数小于0 (4)3 (5)False (6)2010 is not leap year. 试验五 1:单项选择题: A C C A B A C C C B 2:填空题: (1)9 (2)①n ②1 (3)①Len(a) ②n\2 ③Mid(a,(n-i+1),1) ④Mid(a,(n-i+1),1) (4)①n Mod 3=1 And n Mod 5=1 And n Mod 7=1 ②While CountN<5 (5)Mid(c1,1,i) 实验六 1:单项选择题: D B D C D A C A D D 2:填空题: (1)30 (2)3 (3)①a(2) ②a(3) ③a(1) (4)①1 ②2 ③a(i)=a(6-i) (5)①i+j ②0 ③a(i,j) (6)①Print ②k ③a(k,j)=a(j,k) ④a(k,j); 实验七 1:单项选择题: A B B A C B 2:填空题: (1)15 (2)①Preserve a(n+1) ②a(i+1)=a(i) ③Exit For ④a(i+1)=m⑤0 to n+1 (或LBound(a) to UBound(a)) (3)d,c,b,a 实验八 1:单项选择题: C A D B D C A C B 2:填空题: (1)a=9 b=4 (2) 36 25 16 9 4 1 (3)①a ②UBound(b) ③

数据库常用函数汇总统计

实验二(续):利用SQL语句查询 三、常用库函数及统计汇总查询 1、求学号为 S1学生的总分和平均分; select sum(score) as TotalScore,avg(score)as AveScore from sc where sno='S1' 2、求选修 C1号课程的最高分、最低分及之间相差的分数; select max(score)as MaxScore, min(score)as MinScore, max(score)- min(score)as diff from sc where cno='C1' 3、求选修 C1号课程的学生人数和最高分; select count(distinct sno),max(score) from sc where cno='C 1' 4、求计算机系学生的总数; select count(sno) from s where dept=' 计算机 ' 5、求学校中共有多少个系; select count(distinct dept) as DeptNum from s 6、统计有成绩同学的人数; select count(score) from sc 7、利用特殊函数 COUNT(*)求计算机系学生的总数; select count(*) from s where dept=' 计算机 '

8、利用特殊函数 COUNT(*)求女学生总数和平均年龄;select count(*),avg(age) from s where sex=' 女 ' 9、利用特殊函数 COUNT(*)求计算机系女教师的总数。select count(*) from t where dept=' 计算机 'and sex=' 女 ' 四、分组查询及排序 1、查询各个教师的教师号及其任课门数; select tno,count(*)as c_num from tc group by tno 2、按系统计女教师的人数; select dept,count(tno) from t where sex=' 女 ' group by dept 3、查询选修两门以上课程的学生的学号和选课门数;select sno,count(*)as sc_num from sc group by sno having count(*)>2 4、查询平均成绩大于 70分的课程号和平均成绩; select cno,avg(score) from sc group by cno having avg(score)>70 5、查询选修 C1的学生学号和成绩,并按成绩降序排列;select sno,score

.net程序设计报告1

《.Net程序设计》实验报告 电子商务专业班姓名:实验时间:13年05月16日 一、实验目的: https://www.doczj.com/doc/fb17223316.html,简单程序程序设计,了解https://www.doczj.com/doc/fb17223316.html,程序的基本过程 二、实验内容: 参考第二、三章实例编写简单的https://www.doczj.com/doc/fb17223316.html,程序,要求具备一定的功能和界面。 三、操作步骤: 1.新建项目——“windows应用程序”。 2.选择form1在其属性中设置“BackGroundImage”,导入图片“发射场.jpg”;“Text” 设置为“火箭发射”。 3.在所有windows窗体中选择“Timer1”,添加到form1上,在其属性中设置:“Interval” 为“200”,“Enabled”为“False”。 4.在所有windows窗体中选择“PictureBox”添加,在属性中“Image”,导入图片“火 箭.jpg”. 5.在所有windows窗体中选择“Label1”添加,属性“Text”设置为“6”,“BorderStyle” 设置为“Fixed3D”。 6.在所有windows窗体中选择“Button1”添加,属性“Text”设置为“准备”。 实现需要相应代码:Public Class Form1 Private Sub PictureBox3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox3.Click End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load x = 400 i1 = Val(TextBox1.Text) i2 = Val(TextBox2.Text) i3 = Val(TextBox3.Text) i0 = i1 + i2 + i3 + i2 Timer1.Interval = 100 End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Static i As Integer, dx% Dim k%

VB语言程序设计实验

VB语言程序设计实验.txt蜜蜂整日忙碌,受到赞扬;蚊子不停奔波,人见人打。多么忙不重要,为什么忙才重要。 课程号:10010402 适用专业:全校非计算机专业 制定人: 教研室:计算机公共基础教研室 计算机科学与信息工程学院 2007 年5 月 前言 VB语言是一种被广泛学习、普遍使用的计算机程序设计语言。它的高级语言行式、低级语言功能具有特殊的魅力。由于VB语言具有完整的编程语言特点,因而被大多数高等院校作为典型的计算机教学语言。在计算机等级、全国计算机应用证书考试等多种计算机知识考试中都有VB语言。此外,VB语言作为一门实用的、功能强大的程序语言,被程序设计人员广泛使用。因此,VB语言是一门十分重要的程序设计语言。 《VB语言程序设计》课程,面向全校非计算机专业的本科生开设计算机基础课。以VB 语言为平台,介绍程序设计的思想和方法。通过学习,不仅使学生掌握高级编程语言的知识、编程技术和基本算法,更重要的是掌握程序设计的思想和方法,具备利用计算机求解实际问题的基本能力,能灵活应用高级语言进行程序设计。 本实验指导书中详细介绍了每个实验的目的、实验内容,并在方法上给出了指导,希望对同学们的学习能够有所帮助。 另外希望同学们对书中的错误和遗漏多提宝贵意见。可以登录网站:https://www.doczj.com/doc/fb17223316.html,/netteach。 实验要求 VB语言程序设计实验是VB语言程序设计课程的重要组成部分,属于学科基础实验范畴,是与相关教学内容配合的实践性教学环节。学生通过实验,验证课堂学习的知识,掌握算法设计、编程实现和程序调试的方法,从而形成一定的编程能力。

在《VB语言程序设计》的课程实验过程中,要求学生做到: (1)预习实验指导书有关部分,认真做好实验内容的准备,就实验可能出现的情况提前作出思考和分析。 (2)仔细观察上机和上网操作时出现的各种现象,记录主要情况,作出必要说明和分析。 (3)认真书写实验报告。实验报告包括实验目的和要求,实验情况及其分析。对需编程的实验,写出程序设计说明,给出源程序框图和清单。 (4)遵守机房纪律,服从辅导教师指挥,爱护实验设备。 (5)实验课程不迟到。如有事不能出席,所缺实验一般不补。 实验的验收将分为两个部分。第一部分是上机操作,包括检查程序运行和即时提问。第二部分是提交书面的实验报告。 目录 实验一Visual Basic的集成开发环境 5 实验二数据类型9 实验三顺序结构程序设计11 实验四选择控制结构16 实验五选择控制结构(2)20 实验六循环控制结构21 实验七数组22 实验八过程25 实验九界面设计和使用设计多窗体界面26 实验十文件操作编程30 实验十一图形编程31 实验十二数据库编程 32 实验十三小规模实用软件的设计33 实验一Visual Basic的集成开发环境 【实验目的】 1.了解Visual Basic的集成开发环境 2.学会Visual Basic帮助系统的使用 3.了解可视化编程的一般步骤 4.掌握窗体界面风格设计方法 【实验内容】 1.设计一个窗体,包含两个标签和两个文本框,若在"输入"框中输入任意文字,将在"显示"框中同时显示相同的文字 2.编写一个简单的应用程序:只有一个窗体,窗体上有一个文本框和三个命令按钮,要求如下:

《.NET程序设计》课程设计报告

《.NET程序设计》课程设计报告 班级:计算机1403 学号:05 姓名:黄世增

一、实验名称 作者信息管理系统 二、实验目的 1.进一步掌握并加深“.NET程序设计”课程的基本知识,理解“.NET程序设计”课程中重点讲解的https://www.doczj.com/doc/fb17223316.html,技术在项目开发中的应用。 2.培养正确的程序设计思想,提高分析问题、解决问题的能力。 3.提高学生进行技术总结和撰写说明书的能力。 三、系统设计描述 实验设计内容: 本次实验设计的内容是使用https://www.doczj.com/doc/fb17223316.html,技术为某出版社设计并实现一个小型作者信息管理系统。出版社的工作人员登录该系统后,可以查看该社出版的各类书籍的作者的信息,并可以对作者信息进行各类查询,便于工作人员对作者信息进行管理。 系统数据库设计: 在SQL Server Express中为作者信息管理系统建立一个名为作者信息管理系统的数据库,并设计以下2张数据表: 1.系统管理员表 该表用来记录使用本系统的管理员的基本信息,包括管理员账户及密码。 【思考题】 (1)数据库中的一条记录中有若干个属性,若其中某一个属性(注

意是组)能唯一标识一条记录,该属性组就可以成为一个主键。 统管理员表中用户名应设为主键。 (2)用户名和密码都设为varchar字符型。 2.作者个人信息表 该表用来记录作者个人的基本信息,包括作者编号、姓名、联系地址、电话、email。 【思考题】 (1)表中作者编号应设为主键。 (2)表中作者ID、电话号码和Email为nchar字符串型,姓名和联系人地址为nvarchar字符串型。 设计好数据库的两个表后,分别在两个表中输入数据,如下图所示: 系统模块设计 1.登录模块设计 登录模块应保证出版社工作人员以系统管理员身份正确输入账号和密码后才能登录系统,同时该模块在页面上显示登录人员账号;否则,系统自动跳转回登录页面。 connectionStr = @"Data Source=.\SQLEXPRESS; AttachDbFilename = |DataDirectory|作者信息管理系统.mdf; Integrated Security=True; User Instance=true";

常用函数大全

常用函数大全 mysql_affected_rows
mysql_affected_rows — 取得前一次 MySQL 操作所影响的记录行数 mysql_fetch_array —从结果集中取得一行作为关联数组或数字数组或二者兼 有:
mysql_fetch_array($result, MYSQL_NUM) , MYSQL_NUM 可用 MYSQL_BOTH 或
MYSQL_ASSOC 代替,也可以不写,默认为 MYSQL_BOTH
mysql_fetch_row — 从结果集中取得一行作为枚举数组: mysql_fetch_row($result); mysql_fetch_assoc($result)
mysql_fetch_row()从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果 的列储存在一个数组的单元中,偏移量从 0 开始。 依次调用 mysql_fetch_row()将返回结果集中的下一行,如果没有更多行则返回 FALSE。 mysql_fetch_assoc — 从结果集中取得一行作为关联数组 :
mysql_fetch_assoc() 和用 mysql_fetch_array() 加上第二个可选参数 MYSQL_ASSOC 完全相同。它 仅仅返回关联数组。这也是 mysql_fetch_array()起初始的工作方式。如果在关联索引之外还需要数字 索引,用 mysql_fetch_array()。 如果结果中的两个或以上的列具有相同字段名,最后一列将优先。要访问同名的其它列,要么用 mysql_fetch_row()来取得数字索引或给该列起个别名。参见 mysql_fetch_array() 例子中有关别名说 明。 有一点很重要必须指出,用 mysql_fetch_assoc()并不明显 比用 mysql_fetch_row()慢,而且还提供了 明显更多的值。
mysql_query()
仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,
如果查询执行不正确则返回 FALSE。对于其它类型的 SQL 语句,mysql_query()在执行成功时返回 TRUE,出错时返回 FALSE。非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明 任何有关影响到的或返回的行数。 很有可能一条查询执行成功了但并未影响到或并未返回任何行。

实验四VBNET程序设计基础和常用控件

实验四 https://www.doczj.com/doc/fb17223316.html,程序设计基础和常用控件 一、实验目的 本实验主要了解面向对象程序设计语言https://www.doczj.com/doc/fb17223316.html,基本语言元素包括集成开发环境、语言基础、基本控制结构、过程、常用控件和界面设计。通过本实验,读者将学会一些主要的面向对象的设计方法并可以利用https://www.doczj.com/doc/fb17223316.html,完成简单的应用程序开发。 二、实验环境 Microsofe Visual Studio .NET 2008 三、实验内容 1.设计一个Visual 的应用程序,窗体上有一个多行文本框和3个命令按钮,程序界面如图1所示。要求应用程序运行时,当单击窗体上【显示文本信息】按钮,文本框中显示红色文字“我喜欢https://www.doczj.com/doc/fb17223316.html,,因为它简单易学,使用方便。”当单击窗体上【改变背景色】按钮,文本框的背景色变为黄色。当单击窗体上【结束】按钮,程序结束。保存该应用程序。【实验步骤】: 1)创建工程:打开Visual Studio 后,点击左上角的新建项目,选中“模板”,展开选择Visual Basic,再选中Windows桌面,再在左边的类型中选择“Windows窗体应用程序”,在下方为此项目命名为“Win dowsApplication4.1”

2)先打开“工具箱”:展开左上角的“视图”,点击工具箱。 3)修改Form1的名称:右键选中From1,点击“属性”,在新弹出的属性菜单栏中,找到“Text”这个属性,将右边的“From1”改为“第一个https://www.doczj.com/doc/fb17223316.html,实验”即可。 4)设置一个普通文本框:在工具栏中,选中公共空间中的TextBox,然后拖入右边的设计窗口中,然后鼠标移到TextBox后,鼠标左键按住不放可以移动此控件。 5)调整文本框的大小:鼠标移动到文本框的左右边缘,鼠标箭头会变成一个左右的箭头,

c++常用函数大全

数学函数,所在函数库为math.h、stdlib.h、string.h、float.h int abs(int i) 返回整型参数i的绝对值 double cabs(struct complex znum) 返回复数znum的绝对值 double fabs(double x) 返回双精度参数x的绝对值 long labs(long n) 返回长整型参数n的绝对值 double exp(double x) 返回指数函数ex的值 double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值 double log(double x) 返回logex的值 double log10(double x) 返回log10x的值 double pow(double x,double y) 返回xy的值 double pow10(int p) 返回10p的值 double sqrt(double x) 返回+√x的值 double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度 double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度 double atan(double x) 返回x的反正切tan-1(x)值,x为弧度 double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度 double sin(double x) 返回x的正弦sin(x)值,x为弧度 double tan(double x) 返回x的正切tan(x)值,x为弧度 double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度 double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度 double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度 double hypot(double x,double y) 返回直角三角形斜边的长度(z), x和y为直角边的长度,z2=x2+y2 double ceil(double x) 返回不小于x的最小整数 double floor(double x) 返回不大于x的最大整数 void srand(unsigned seed) 初始化随机数发生器 int rand() 产生一个随机数并返回这个数 double poly(double x,int n,double c[])从参数产生一个多项式 double modf(double value,double *iptr)将双精度数value分解成尾数和阶 double fmod(double x,double y) 返回x/y的余数 double frexp(double value,int *eptr) 将双精度数value分成尾数和阶 double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数 double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数 double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数 char *ecvt(double value,int ndigit,int *decpt,int *sign) 将浮点数value转换成字符串并返回该字符串

[心得体会]vb程序设计实验心得4篇

[心得体会]vb程序设计实验心得4篇数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开始写这篇文章,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹并期望与大家共勉。 首先,让我的记忆追溯到大二暑假,在老大的指引下,我接触到Microsoft 公司的.NET产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub,var 看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称“.网络是用于创建下一代应用程序的理想而又现实的开发工具”,而且主推c#语言,由于对c语言的一贯好感,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一遍。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如使用数组等等。很耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sql serverXX,以前学asp的时候用的是aess,那个时候只是照着人家做,理论是什么也不是很清楚。

通过一个暑假的学习,基本搞清楚了理论方面的东西,具体怎么 用也不是很清楚。但是这为这学期的课程设计打下了铺垫。 来到学校后,随着这学期的数据库课程大赛开始了,我有一个看 法就是我自己应该具备的能力不是我会多少,而是我应该具备快速学会东西的能力。遇到什么就学什么。我们有时候很容易被一些专业名词说吓着,包括什么建模,软件工程,数据分析,数据挖掘等等。我身边就有很多同学被这些纸老虎所唬住,而没有勇气去接触他们,总是说这个太难了之类的退堂鼓的话,他们低估了自己的潜力同时也压抑住了他们自己的好奇心。其实都是纸老虎,又不是什么国家科研难题,只是去用一些工具,发明工具是很难,但是用一个工具就容易多了,just do it!我记得我做这个数据库之前,我们老师说要做好前期分析,我就在网上搜索用什么分析工具好。最后我选择了roseUML 建模工具。在此之前,我脑袋里面没有软件建模的思想,什么UML建模对我而言就是一张空白的纸。但是真正接触后并没有想象的那么难,有什么不懂的上网去搜索,这是一个信息横流的世界,有google,baidu就没有不能解决的知识难题。以及后来的数据库分析的时候用到的powerdesigner也是一样。 开发的时候我想过用什么架构,c/s模式?模式有很多,怎么选择?我就上网搜索现在最流行的架构是什么。结果搜到了MVC架构,就是你啦。我决定用这个架构,不会,没关系,咱学。Just do it!

Excel常用的函数计算公式大全

E x c e l常用的函数计算公 式大全 Prepared on 22 November 2020

EXCEL的常用计算公式大全 一、单组数据加减乘除运算: ①单组数据求加和公式:=(A1+B1) 举例:单元格A1:B1区域依次输入了数据10和5,计算:在C1中输入=A1+B1后点击键盘“Enter(确定)”键后,该单元格就自动显示10与5的和 15。 ②单组数据求减差公式:=(A1-B1) 举例:在C1中输入=A1-B1即求10与5的差值5,电脑操作方法同上; ③单组数据求乘法公式:=(A1*B1) 举例:在C1中输入=A1*B1即求10与5的积值50,电脑操作方法同上; ④单组数据求乘法公式:=(A1/B1) 举例:在C1中输入=A1/B1即求10与5的商值2,电脑操作方法同上; ⑤其它应用: 在D1中输入=A1^3即求5的立方(三次方); 在E1中输入=B1^(1/3)即求10的立方根 小结:在单元格输入的含等号的运算式,Excel中称之为公式,都是数学里面的基本运算,只不过在计算机上有的运算符号发生了改变——“×”与“*”同、“÷”与“/”同、“^”与“乘方”相同,开方作为乘方的逆运算,把乘方中和指数使用成分数就成了数的开方运算。这些符号是按住电脑键盘“Shift”键同时按住键盘第二排相对应的数字符号即可显示。如果同一列的其它单元格都需利用刚才的公式计算,只需要先用鼠标左键点击一下刚才已做好公式的单元格,将鼠标移至该单元格的右下角,带出现十字符号提示时,开始按住鼠标左键不动一直沿着该单元格依次往下拉到你需要的某行同一列的单元格下即可,即可完成公司自动复制,自动计算。 二、多组数据加减乘除运算: ①多组数据求加和公式:(常用) 举例说明:=SUM(A1:A10),表示同一列纵向从A1到A10的所有数据相加; =SUM(A1:J1),表示不同列横向从A1到J1的所有第一行数据相加; ②多组数据求乘积公式:(较常用) 举例说明:=PRODUCT(A1:J1)表示不同列从A1到J1的所有第一行数据相乘; =PRODUCT(A1:A10)表示同列从A1到A10的所有的该列数据相乘; ③多组数据求相减公式:(很少用) 举例说明:=A1-SUM(A2:A10)表示同一列纵向从A1到A10的所有该列数据相减; =A1-SUM(B1:J1)表示不同列横向从A1到J1的所有第一行数据相减; ④多组数据求除商公式:(极少用)

https://www.doczj.com/doc/fb17223316.html,程序的设计实验报告

福建农林大学金山学院 实验报告 课程名称:.NET程序设计 姓名:洪绵绵 系:信息与机电工程系 专业:计算机科学与技术 年级:2008 学号:082231029 指导教师:林松 职称:讲师 2010年12月29日

实验项目列表

福建农林大学金山学院实验报告 系:信息与机电工程专业:计算机科学与技术年级: 2008级 姓名:洪绵绵学号: 082231029 实验室号_ 608 计算机号 B3 实验时间: 2010.11.26上午一二节指导教师签字:成绩: 实验一数组、类、接口与结构 一、实验目的和要求 1、了解数组、类、接口和结构的定义、概念。 2、了解结构和类的区别。 3、掌握数组的声明、实例化、初始化和访问。 4、掌握类、接口的声明和使用,结构的声明和调用。 二、实验内容和原理 1、屏幕打印10行杨辉三角,逐行输出,用到Console.Write("{0,5}", A[i, j]); 和Console.WriteLine();语句。 2、创建抽象基类Shape和派生类Rectangle, Circle利用多态性实现Area(计算面积)和Show(在屏幕上显示图形名称和面积)抽象方法 3、声明一个接口ICDPlayer,包含4个接口方法:Play(),Stop(),NextTrack()和PreviousTrack(),以及一个只读属性CurrentTrack创建类CDPlayer实现该接口,模拟CD的播放、停止、下一音轨、上一音轨的操作。 4、声明一个表示平面坐标系中的点的结构体CoOrds,包含字段x,y,以及带2个参数的构造函数。分别利用三种不同的方法(默认构造函数、有2个参数的构造函数、先声明结构体变量再对其x,y字段赋值),创建3个平面坐标点变量。求这3个点所构成的三角形面积。注意判断3个坐标点是否可以构成三角形。 三、实验环境 1、硬件:PC机 2、软件:windowsXP、VS2008 四、算法描述及实验步骤 1、(1) 打开记事本,编写代码。

VB实验报告模板

课程编号:B080103140 https://www.doczj.com/doc/fb17223316.html,程序设计 实验报告 东北大学软件学院

1.实验目的 (1)练习https://www.doczj.com/doc/fb17223316.html,的控件的综合运用。熟悉https://www.doczj.com/doc/fb17223316.html,的集成开发环境,掌握https://www.doczj.com/doc/fb17223316.html, 编程技巧和开发过程。 (2)训练学生对https://www.doczj.com/doc/fb17223316.html,的基本语句、控件、文件等的综合运用。 2.实验内容 (1)https://www.doczj.com/doc/fb17223316.html,控件综合应用。 (2)https://www.doczj.com/doc/fb17223316.html,文件操作——具体的名称(需要替换并变为黑色)。 3.程序中使用的控件及其命名 把程序中用到的控件类型及对应的名称以表格的形式给出,表格的行数可以根据需要进行扩充。 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。 注意说明文字需要删除,不能保留在文档中。 (1)实验1的控件及命名 (2)实验2的控件及命名 4.系统实现与调试 把主要实现的功能用语言进行描述,并给出调试时的截图(主要是功能验证的截图,在结算时,是否能正确的找零等) 如果包含图片,图片要居中,而且图片的高度不能超过页面高度的1/3。 (1)实验1的系统实现与调试 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。 注意说明文字需要删除,不能保留在文档中。

(2)实验2的系统实现与调试 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。 5.创新点及存在问题 列举出主要的创新点和存在的问题。正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。 6.实验总结 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。

Excel常用的函数计算公式大全(一看就会)

计算机等级考试 =公式名称(参数1,参数2,。。。。。) =sum(计算范围) =average(计算范围) =sumifs(求和范围,条件范围1,符合条件1,条件范围2,符合条件2,。。。。。。) =vlookup(翻译对象,到哪里翻译,显示哪一种,精确匹配) =rank(对谁排名,在哪个范围里排名) =max(范围) =min(范围) =index(列范围,数字) =match(查询对象,范围,0) =mid(要截取的对象,从第几个开始,截取几个) =int(数字) =weekday(日期,2) =if(谁符合什么条件,符合条件显示的内容,不符合条件显示的内容) =if(谁符合什么条件,符合条件显示的内容,if(谁符合什么条件,符合条件显 示的内容,不符合条件显示的内容)) EXCEL的常用计算公式大全 一、单组数据加减乘除运算: ①单组数据求加和公式:=(A1+B1) 举例:单元格A1:B1区域依次输入了数据10和5,计算:在C1中输入=A1+B1 后点击键盘“Enter(确定)”键后,该单元格就自动显示10与5的和15。 ②单组数据求减差公式:=(A1-B1) 举例:在C1中输入=A1-B1 即求10与5的差值5,电脑操作方法同上; ③单组数据求乘法公式:=(A1*B1) 举例:在C1中输入=A1*B1 即求10与5的积值50,电脑操作方法同上; ④单组数据求乘法公式:=(A1/B1) 举例:在C1中输入=A1/B1 即求10与5的商值2,电脑操作方法同上; ⑤其它应用: 在D1中输入=A1^3 即求5的立方(三次方); 在E1中输入=B1^(1/3)即求10的立方根 小结:在单元格输入的含等号的运算式,Excel 中称之为公式,都是数学里面的基本 与 运算,只不过在计算机上有的运算符号发生了改变——“×” 与“* ”同、“÷” “/ ”同、“^”与“乘方”相同,开方作为乘方的逆运算,把乘方中和指数使用成分数 就成了数的开方运算。这些符号是按住电脑键盘“Shift ”键同时按住键盘第二排 相对应的数字符号即可显示。如果同一列的其它单元格都需利用刚才的公式计算,只 需要先用鼠标左键点击一下刚才已做好公式的单元格,将鼠标移至该单元格的右下 角,带出现十字符号提示时,开始按住鼠标左键不动一直沿着该单元格依次往下拉到 你需要的某行同一列的单元格下即可,即可完成公司自动复制,自动计算。

.NET程序设计实验一

实验报告(一) 课程名称:.NET程序设计年级:2017级实验日期:姓名:学号:班级:

double b = Convert.ToDouble(Console.ReadLine()); if (a > b) { Console.WriteLine("较小的数为:" +b); } else if (a < b) { Console.WriteLine("较小的数为:"+a); } else { Console.WriteLine("两个数一样大"); } Console.ReadKey(); } } } 实验结果: 2.实验代码: using System; using System.Collections.Generic; using https://www.doczj.com/doc/fb17223316.html,ponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;

namespace WindowsFormsApplication7 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } enum WeekDay { 星期天, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六}; private void button1_Click(object sender, EventArgs e) { DateTime dt = Convert .ToDateTime ( textBox1 .Text); WeekDay wd =(WeekDay ) dt.DayOfWeek; label1.Text= "这一天是"+wd+"."; } } } 实验结果: 五、总结 本次实验用C#编写了两个简单的任务程序,一个用的是控制台程序,第二

试验一VBNET初步

实验一https://www.doczj.com/doc/fb17223316.html,环境和程序设计 一、实验目的 1. 掌握启动与退出https://www.doczj.com/doc/fb17223316.html,的方法。 2. 掌握建立、编辑和运行一个简单的https://www.doczj.com/doc/fb17223316.html,应用程序的全过程。 3. 掌握利用常用控件创建基于图形用户界面应用程序的技术。 4. 掌握https://www.doczj.com/doc/fb17223316.html,程序设计语言的语法规则和编程技术。 二、实验内容 1.基本控件标签、文本框、按钮的使用。 利用文本框的字号、内容和格式等属性来实现格式设置,并对选中的复制练习,效果见图1.1。在TextBox1输入一字符串,建立三个命令按钮: (1)Button1:Text内容为“隶书25磅”,事件过程代码为: TextBox1.Font = New Font("隶书", 25) (2)Button2:Text内容为“幼圆15磅”,代码类似。 (3)Button3:Text内容为“复制=>”,要求复制在TextBox1选中的内容以及其字体格式。选中的内容通过TextBox1的.SelectedText属性;字体通过Font直接赋值。 图1.1 实验1.1运行界面 2. 输入数据合法性检验、MsgBox对话框的使用。 利用计算机解决古代数学问题“鸡兔同笼问题”。即已知在同一笼子里有总数为m只鸡和兔,鸡和兔的总脚数为n只,求鸡和兔各有多少只? 提示:鸡、兔的只数通过已知输入的m,n列出方程可解,但不要求出荒唐的解(例3.5只鸡、4.5只兔,或者求得的只数为负数)。因此,在TextBox2_LostFocus事件中要考虑下面两个条件: (1)对输入的总脚数n必须是偶数,否则提示数据错的原因,重新输入数据; (2)若求出的头数为负数,提示数据错的原因,重新输入数据。

工程人最常用的excel函数公式大全

工程人最常用的excel函数公式大全 一、数字处理 1、取绝对值 =ABS(数字) 2、取整 =INT(数字) 3、四舍五入 =ROUND(数字,小数位数) 二、判断公式 1、把公式产生的错误值显示为空 公式:C2 =IFERROR(A2/B2,"") 说明:如果是错误值则显示为空,否则正常显示。 2、IF多条件判断返回值 公式:C2 =IF(AND(A2<500,B2="未到期"),"补款","") 说明:两个条件同时成立用AND,任一个成立用OR函数。

三、统计公式 1、统计两个表格重复的内容 公式:B2 =COUNTIF(Sheet15!A:A,A2) 说明:如果返回值大于0说明在另一个表中存在,0则不存在。 2、统计不重复的总人数 公式:C2 =SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8)) 说明:用COUNTIF统计出每人的出现次数,用1除的方式把出现次数变成分母,然后相加。

四、求和公式 1、隔列求和 公式:H3 =SUMIF($A$2:$G$2,H$2,A3:G3) 或 =SUMPRODUCT((MOD(COLUMN(B3:G3),2)=0)*B3:G3)说明:如果标题行没有规则用第2个公式 2、单条件求和 公式:F2 =SUMIF(A:A,E2,C:C) 说明:SUMIF函数的基本用法

3、单条件模糊求和 公式:详见下图 说明:如果需要进行模糊求和,就需要掌握通配符的使用,其中星号是表示任意多个字符,如"*A*"就表示a前和后有任意多个字符,即包含A。 4、多条件模糊求和 公式:C11 =SUMIFS(C2:C7,A2:A7,A11&"*",B2:B7,B11) 说明:在sumifs中可以使用通配符* 5、多表相同位置求和 公式:b2 =SUM(Sheet1:Sheet19!B2) 说明:在表中间删除或添加表后,公式结果会自动更新。

《.NET程序设计》实验指导书-图文

《.程序设计》实验指导书-图文 《.程序设计》 实验指导书 年10月 1 2021 实验一 C#基本编程方法 一.实验目的 1.练习C#中变量声明和赋值的方法。 2.练习C#类型转换的方法。 3.练习C#分支语句的基本用法。 4.练习C#循环语句的基本用法。 二.实验内容 1.编写并调试一个C#控制台应用程序,输出1到5的平方值。 2.编写一个C#控制台应用程序,要求完成下列功能。(1)接收一个整数n。 (2)如果接收的值n为正数,输出1到n间的全部整数,循环转向(1),继续接收一个整数n。 (3)如果接收的值为负值,用break退出循环。 3.为铁路部门编写计算运费的程序。假设铁路托运行李,规定每张客票托运费计算方法是:行李重量不超过50kg时,每千克0.25元;超过50kg而不超过100kg时,其超出部分每千克0.35元时;超过

100kg时,其超过部分每千克0.45元。要求从键盘上输入行李重量后,程序计算并输出托运的费用。 三.实验体会: 2 实验二 C#面向对象编程 一.实验目的 1.练习如何创建类和对象。 2.练习如何为定义的类编写相应的方法。 3.练习如何通过属性访问对象中的数据。 4.练习如何创建基类及其派生类。 二.实验内容 1.编写一个控制台应用程序,定义并使用一个时间类,该类包含时、分、秒字段与属性,具有将时间增加1秒、1分和1小时的方法,具有分别显示时、分、秒和同时显示时分秒的方法。 2.编写一个控制台应用程序,程序中有两个类定义,一个是创建程序时系统自动创建的类Class1,一个是用户自定义的Student类,要求该类包含私有字段:学号(字符串)、姓名(字符串)和性别(字符),具有三个属性:学号(读写)、姓名(只读)、性别(读写),具有有参构造方法、具有同时显示学生个人信息的方法。在Class1类的Main方法中完成以下功能:(1)从键盘上输入一个学生的个人信息(学号、姓名、性别)。(2)修改该学生的学号和性别。 (3)打印修改前后该学生的个人信息。

常用库函数大全

分类函数,所在函数库为ctype.h int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0 int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回非0值,否则返回0 int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F),返回非0值,否则返回0 int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0 int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0 int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0 int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0 int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回非0值,否则返回0 int isspace(int ch) 若ch是空格(' '),水平制表符('\t'),回车符('\r'), 走纸换行('\f'),垂直制表符('\v'),换行符('\n'), 返回非0值,否则返回0 int isupper(int ch) 若ch是大写字母('A'-'Z')返回非0值,否则返回0 int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回非0值, 否则返回0 int tolower(int ch) 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z') int toupper(int ch) 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z') 数学函数,所在函数库为math.h、stdlib.h、string.h、float.h int abs(int i) 返回整型参数i的绝对值 double cabs(struct complex znum) 返回复数znum的绝对值 double fabs(double x) 返回双精度参数x的绝对值 long labs(long n) 返回长整型参数n的绝对值 double exp(double x) 返回指数函数ex的值 double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中 double ldexp(double value,int exp); 返回value*2exp的值 double log(double x) 返回logex的值 double log10(double x) 返回log10x的值 double pow(double x,double y) 返回xy的值 double pow10(int p) 返回10p的值 double sqrt(double x) 返回x的开方 double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度 double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度 double atan(double x) 返回x的反正切tan-1(x)值,x为弧度 double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度 double cos(double x) 返回x的余弦cos(x)值,x为弧度 double sin(double x) 返回x的正弦sin(x)值,x为弧度 double tan(double x) 返回x的正切tan(x)值,x为弧度 double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度 double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度 double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度 double hypot(double x,double y) 返回直角三角形斜边的长度(z), x和y为直角边的长度,z2=x2+y2

相关主题
文本预览
相关文档 最新文档