精华内容
下载资源
问答
  • VB程序实现算法三种基本结构;VB程序实现算法三种基本结构专题复习;课前准备;1基本知识点;2程序设计讲与练;参照学案表格完成练习12 程序窗体已经创建只需要补充代码 注意控制时间;练习1-讲解1;练习1-讲解2;练习2-...
  • VB程序实现算法三种基本结构专题复习课前准备算法解决问题方法和步骤三种基本结构 顺序结构 分支结构 循环结构 选择重复1基本知识点学案130520.doc基本知识点表格思考该题是什么结构2程序设计讲与练例1先后输入...
  • VB程序实现算法三种基本结构课件 课前准备 算法解决问题方法和步骤 三种基本结构 顺序结构 分支结构 循环结构 选择 重复 1基本知识点 基本知识点表格 2程序设计讲与练 例1先后输入使用r=inputbox)两个正整数xy,把...
  • 课前准备 算法解决问题方法和步骤 三种基本结构 顺序结构 分支结构 循环结构 选择 重复 1基本知识点 基本知识点表格 2程序设计讲与练 例1先后输入使用r=inputbox)两个正整数xy,把较大值赋值给变量max并输出 ...
  • 第4章 算法基础及Visual Basic的基本语句;赋值语句;T=A A=B B=T 上述三条语句实现什么功能;赋值语句举例;不同数据类型数据赋值; Dim b As Boolean, n As Integer, s As String, m As Single b = 0 将整型数据赋值...
  • 第四章 算法基础及VB的基本语句;1了解结构化程序设计基本概念 2掌握VB 程序设计中常用语句 3掌握顺序选择和循环结构及...三种基本结构的共同特点;4.2 赋值语句及InputBoxMsgBox函数;4.2.1 赋值语句 [格式]<变量名>=
  • 第四章 算法基础及基本语句;1了解结构化程序设计基本概念 2掌握 程序设计中常用语句 3掌握顺序...三种基本结构的共同特点;4.2 赋值语句及函数;4.2.1 赋值语句 [格式]<变量名>=<表达式> [功能]先计算表达式
  • VB算法;1;算法概念及特征;流程图基本符号;...三种基本结构;行If;块If;For循环;Do While 循环;For和Do相互改写;3;枚举算法;第一题;第二题;第三题;第三题;第四题;第五题;第五题;第六题;第六题;第六题
  • 考点梳理 例题剖析 第三部分 算法与VB程序设计 专题13 算法的表示流程图 考试内容 考试要求 算法及算法的表示 算法的基本概念 算法的常用表示方法 顺序选择循环三种控制结构 b理解 本专题包含算法的表示其知识点主要...
  • 如点要节 第三部分算法与VB程序设计 专题13算法的表小流程图 考点梳理例题剖析 如点要节 考试内容 考试要求 算法及算法的表示: 算法的基本概念 b理解 算法的常用表示方法 顺序选择循环三种控制结构 考点梳理例题剖析...
  • VB讲课笔记07:控制结构

    千次阅读 2018-03-11 23:03:34
    VB讲课笔记07:控制结构学习目标:掌握顺序结构,选择结构和循环结构,以及与三种基本结构相关 VB 语句用法,掌握结构化程序设计与面向对象程序设计中,程序组织和控制方式,掌握 VB 编程方法和步骤。...
    VB讲课笔记07:控制结构

    学习目标:掌握顺序结构,选择结构和循环结构,以及与三种基本结构相关的 VB 语句的用法,掌握结构化程序设计与面向对象程序设计中,程序的组织和控制方式,掌握 VB 编程的方法和步骤。

    一、结构化设计概述
    结构化程序设计=数据结构+算法
    数据结构(数据结构)主要指数据的存贮组织方式,即采用何种数据类型来存贮程序中将要处理的数据。
    算法(运算法则)是指计算机解决问题的方法和步骤。算法是程序设计的灵魂,没有算法,就不能进行程序设计。
    (一)算法概述
    1、算法的定义
            算法是在有限步骤内解决问题的方法和步骤。不同的问题有不同的求解算法,例如求二元一次方程的根与求 N !,而同一个问题,可能存在多种方法,这时就要选择简单,运算步骤少,效率高的方法。

    ( 1 )有穷性:算法的执行步骤是有限的。
    ( 2 )确定性:每一操作步骤的内容和顺序有确切含义。
    ( 3 )有效性:每一步操作应当有效地执行,并得到确定的结果。
    ( 4 )有零个或多个输入:为数据获取信息。
    ( 5 )有一个或多个输出:没有输出的算法没有意义。

    2、算法的描述
    算法可以用自然语言、流程图、 N-S 图、伪代码和程序设计语言等来描述。用自然语言来描述算法,文字冗长,容易出现岐意。下面介绍用流程图,N-S 图来表示算法。


    表示sum=1+2+3+ …+10的算法

    1、传统流程图


    2、N-S流程图


    (二)VB程序控制结构

    1、顺序结构

    有一个入口和一个出口。按从上向下依的顺序执行各语句。


    2、选择结构

    程序发生分支,根据判断框内的条件是否被满足来选择执行一块还是执行 B 块。无论条件是否被满足,只能选择执行一或 B 中之一,不能执行完一块后又执行 B 块无论走哪条路径,都要经过 C 点,然后脱离本选择结构框。




    3、循环结构

    也叫“重复结构”,反复执行某段代码。

    当型循环结构:当条件成立时,执行循环体。  

    直到型循环结构:当条件成立,退出循环体。





    4、三种结构的共同点

    ( 1 )只有一个入口;

    ( 2 )只有一个出口;

    ( 3 )结构内的每一部分都有机会被执行,对每一个虚线框都应有一条从入口到出口的路径,即没有死语句(永远执行不到的语句);

    ( 4 )结构内没有死循环(不能终止的循环);

    由三种基本结构实现程序的组织和控制,可以描述任何复杂的问题在具体编程时,每种结构中都可以包含若干条语句。

    二、顺序结构

    顺序结构主要由赋值语句,输入、输出等语句组成,是三种基本结构中最简单的一种结构。在顺序结构的程序中,按各语句出现的顺序依次执行程序,程序中不出现分支情况。即要执行第 n 条语句,必须先执行第 n-1 条语句。

    1、赋值语句

    赋值语句是程序中最基本的语句。

    (1)格式:[Let ]<变量名 > = <表达式 > 或 [<对象名 >. ]<属性名 > = <表达式 >

    (2)功能:将赋值号右边表达式的值赋给左边的变量。

    (3)赋值运算的优先级最低。在VB中,若有 a = b = 5 ,a = ?

    (4)“表达式“可以是常量、变量、函数调用或 VB 中的各种表达式。

    (5)赋值语句有计算的功能。执行赋值语句时,首先计算赋值号右边表达式的值,然后将此值赋给左边的变量或对象属性。

    2、注释语句

    格式 1 :Rem <注释内容 >
    格式 2 :'注释内容
    功能:为程序加上注释内容,便于理解程序。


    3、暂停语句

    Stop语句,暂停程序执行,并打开立即执行窗口。Stop可以放在程序的任何位置。当程序执行碰到停止语句,系统会暂停执行,同时打开立即执行窗口,以便跟踪程序。当程序调试完毕,生成可执行文件(. exe 文件)前,应删除所有停止语句。

    4、结束语句

    End语句,结束程序运行。结束语句能强行中止程序执行,释放所有变量,关闭所有数据文件。

    5、With …End With命令 
    (1)格式
    With 对象名
                [ 语句序列 ]

    End With

    (2)功能    

        With语句可以对某个对象执行一系列语句,而不用重复指出对象名称。


    三、选择结构

    (一)If语句
    If 语句是选择结构主要使用的语句。If 语句有四种形式:行If语句、块If语句、If嵌套、If延拓。

    1、行 If 语句
    (1)格式:If <条件 > Then < 语句 1>[ Else < 语句 2>]
    (2)功能:如果条件成立,执行Then后面的语句,否则执行Else后面语句或下一条语句。

    选择题真题操练


    2、块If语句

    (1)格式

    If <条件 > Then
      < 语句组 1 >
    [ Else
    < 语句组 2 >]
    End If
    (2)功能
    当条件为“真”,执行语句组 1 ,否则执行语句组 2。
    (3)说明
    • 块结构增加了End If作为块的结束语句;
    • Then和Else后面必须断行。
    案例:闰年判断





    3、If嵌套结构
    If < 条件 1> Then
    If < 条件 2> Then
    ...
    End If
    [Else
    ...]
    End If

    4、If延拓结构
    If < 条件 1>  Then
    <语句组 1>
    ElseIf< 条件 2> Then
    <语句组 2>
    ElseIf< 条件 3> Then
    <语句组 3>
    ...
    [Else
    [语句组 N+1]
    End If

    选择题真题演练


    教学案例:判定成绩等级

    (1)设计用户界面


    (2)编写事件处理代码



    (3)运行程序,测试效果





    3、IIf 函数
    (1)格式
    IIf (条件表达式,值 1 ,值 2 )
    (2)功能
        由条件表达式的值是否被满足来决定返回值 1 还是返回值 2 。
    (3)用法
    变量名 =IIf(条件表达式,值1,值2)
            若条件成立,将值 1 赋给变量,条件不成立,将值 2 赋给变量。


    4、Choose函数

    (1)Choose函数的格式

    Choose(索引表达式,选择项目 1[, 选择项目 2,... [,选择项目 n]])

    (2)Choose函数的功能
        根据索引表达式的值,从可选项目列表中选择并返回一个值。
    (3)Choose函数的用法
        变量名 =Choose(表达式,选项 1 ,选项 2 ,…)
        若表达式的值为 1 ,将选项 1 的值赋给变量,若为 2 ,将选项 2 的值赋给变量…。













    5、情况测试结构
    (1)格式
            Selete Case <测试表达式 >
                 Case <测试值 1>
              <语句组 1>
                   Case <测试值 2>
              <语句组 2>
            ……
           Case < 测试值 n>
              <语句组 n>
            [Case Else
              < 语句组 n+1>]
              End Select

    (2)功能
        测试指定表达式的值。若表达式的值与某一Case给出的测试值一致,执行Case语句下面的语句组,执行完后跳过End Select语句,执行下一个语句。
    (3)说明
    “测试表达式”可以是数值表达式或字符串表达式。“ 测试值” 必须与测试表达式的类型相同。当测试表达式的值与某个测试值相同时,执行该Case分支的语句。该语句与If延拓结构相似,对多个能满足的值,只执行第一个Case下面的语句序列。
    (4)测试值三种情况
    ① 常量 1[ ,常量 2] … 表示某个值
    ② 常量 1 To 常量 2 表示范围
    ③ Is 表达式 表示条件

    案例:利用情况测试结构判定成绩等级





    这个程序有一个小Bug,你能找出来吗?

    选择题真题演练
    四、循环结构
    在指定条件下重复执行的一组语句的程序控制结构称为循环结构,多次重复执行的一组语句叫循环体。在 VB 中每一种循环控制方式都涉及三个方面的内容:循环初始条件、循环继续条件及循环的控制、循环体的算法。
    1、While …Wend循环语句(当型循环)
    (1)格式
          While < 循环条件 >
      [ 循环体 ]
    Wend
    (2)功能
        当条件满足时执行循环体,条件不满足则不执行循环。

    2、Do-Loop循环
    (1)Do While格式(前测试当型循环)
    Do While < 循环条件 >
        < 循环体 > 
        [ Exit Do ]        
    Loop

    (2)Do Until格式(前测试直到型循环)
            Do Until < 循环条件 >
    < 循环体 > 
        [ Exit Do ]        
    Loop

    (3)Loop While格式(后测试当型循环)
            Do 
        < 循环体 > 
        [Exit Do ]        
    Loop While < 循环条件 >

    (4)Loop Until格式(后测试直到型循环)
            Do 
    < 循环体 > 
        [ Exit Do ]        
    Loop Until < 循环条件 >

    3、For...Next循环(计数循环)
    (1)格式
    For  X = a To b [Step c]
    [ …… ]
    [ Exit For ]
    [ …… ]
          Next [ X ]
    (2)功能
        以指定次数来重复执行循环体。 

    说明:当型循环是条件满足时执行循环,条件不满足时结束循环;直到型循环相反,条件不满足时执行循环,条件满足时结束循环。前测试循环可以一次循环也不执行,而后测试循环至少要执行一次循环。

    案例1:利用各种循环格式计算1+2+……+100。

    (1)创建工程,更名为“利用各种循环进行等差数列求和”,添加五个按钮,设置名称和标题属性


    (2)编写【利用While Wend循环求和】按钮单击事件处理代码


    (3)编写【利用Do While循环求和】按钮单击事件处理代码


    (4)编写【利用Do Until循环求和】按钮单击事件处理代码


    (5)编写【利用Loop While循环求和】按钮单击事件处理代码


    (6)编写【利用Loop Until循环求和】按钮单击事件处理代码


    (7)运行程序,测试效果







    4、循环嵌套

    在一个循环结构的循环体中包含另外一个循环结构,称为循环嵌套(或称多重循环)。
    (1)内外循环不能相交。循环嵌套时,内层循环的结束语句必须放在外层循环的结束语句之前。下表中列出了循环嵌套正确和不正确的几种情况。
    (2)循环嵌套中,每个循环的循环控制变量是唯一的。
    (3)当程序中For…Next和Goto语句同时存在时,只能从内层循环转到外层循环,不能从外转向内。

    案例1:打印九九表
    (1)创建工程,更名为“打印九九表”,添加一个按钮,设置名称与标题属性

    (2)编写【打印】按钮单击事件处理代码


    (3)运行程序,单击【打印】按钮


    案例2:百钱买百鸡问题

    我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?

    翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

    (1)创建工程,更名为“求解百钱买鸡问题”


    (2)编写【求解】按钮单击事件处理代码


    (3)运行程序,单击【求解】按钮


    案例3:打印100以内的全部素数。


    选择题真题演练




    第1次循环,i=6,Arr(6)=6-3=3

    第2次循环,i=7,Arr(7)=7-3=4

    第3次循环,i=8,Arr(8)=8-3=5

    第4次循环,i=9,Arr(9)=9-3=6

    第5次循环,i=10,Arr(10)=10-3=7

    Arr(6) + Arr(Arr(6) + Arr(10))=3+Arr(3+7)=3+Arr(10)=3+7=10


    单击命令按钮Command1,输入2355270224,输出结果是( )。

    本题涉及到循环、数组、字符串截取等知识点。

    输入2355270224,则x="2355270224"

    Len(x)=10,for循环要进行10次循环。

    第1次循环,k=1,b=Mid(x,1,1)="2",a(2+1)=a(2+1)+1,那么a(3)=a(3)+1=0+1=1

    没有必要傻傻地这样循环下去,应该理解这次循环究竟干了什么事情。截取的数字是2,那么a(3)就要累加1,那么我们看看整个输入的字符串里包含了多少个“2”,结果发现有4个2,因此,最后a(3)应该是4。我们浏览一下四个选项,发现第三个数组元素为4的只有选项A,因此我们很容易得到正确的选择。


    展开全文
  • 说在前面选择排序、冒泡排序、插入排序,是简单排序算法中最重要的三种,也是高三选考复习的重点内容。掌握了基本算法思想和代码结构,在面对各种新颖的题型和变例时才能游刃有余。2018年4月高考技术真题卷第16题...
    43c0a8315d84b638080adb91702f458f.png说在前面

    选择排序、冒泡排序、插入排序,是简单排序算法中最重要的三种,也是高三选考复习的重点内容。掌握了基本的算法思想和代码结构,在面对各种新颖的题型和变例时才能游刃有余。

    2018年4月高考技术真题卷第16题

    题目

    16.【加试题】有一组正整数,要求仅对其中的素数进行升序排序。排序后素数在前,非素数在后。排序示例如下。

    排序前

    86

    71

    5

    41

    81

    79

    37

    89

    排序后

    5

    37

    41

    71

    79

    89

    86

    81

    实现上述功能的VB程序如下,但加框处代码有错,请改正。

    Const n = 8

    Dim a(1 To n) As Integer

    Private Sub Command1_Click()

    Dim i As Integer, j As Integer, k As Integer, t As Integer

    Dim flag As Boolean

    '读取一组正整数,存储在数组a中,代码略

    For i = 1 To n - 1

        k = 1

        If IsPrime(a(k)) Then flag = True Else flag = False

        For j = i + 1 To n

          If IsPime(a(j)) Then

             If   a(j) < a(k)  Then

                k = j

                flag = True

             End If

           End If

         Next j

      If k <> i Then

          t = a(k): a(k) = a(i): a(i) = t

      End If

    If Not flag Then Exit For  'Exit For表示退出循环

    Next i

       '依次输出排序后的数据。代码略

    End Sub

    Function IsPrime(m As Integer) As Boolean

     '本函数判断m是否是素数:是素数返回值为True,不是素数返回值为False

      '代码略

    End Function

    考查知识点

    选择排序及其变例,自定义函数。要求学生熟练掌握选择排序算法的代码结构,并了解自定义函数的语法格式。

    三解析

        本题考查选择排序的一个变例,即仅用选择排序算法对其中的素数进行升序排序。

    题目虽然出现了函数IsPrime(),但并非考查重点,只需知道其返回值为逻辑型即可,剔除与之相关的代码后,可以看出这就是一个经典的选择排序算法,因此不难填出第一空。

    初始化变量k以后,先判断a(k)是否为素数,并用逻辑型变量flag做好标记。

    接下来使用变量j遍历待排序区域a(i+1 to n),找出最小素数的位置,并用k指向该位置。

    第二空条件表达式的写法较为复杂,因为要求k最终指向最小素数的位置,所以先要判断此时a(k)是否为素数(即flag的值是否为True)。如果a(k)不是素数(即flag = False),则a(j)是本轮扫描发现的第一个素数,需要让k=j,并设置flag = True;若a(k)也是素数,则只有当a(j) < a(k)时,才让k指向j。

        故第二空的答案为:flag = False Or a(j) < a(k) 或其他等价写法。答案

    (1)k=i

    (2)Not flag Or a(j)  或 Not flag Or flag And a(j)

       或 Not IsPrime(a(k)) Or IsPrime(a(k)) And a(j)

    五拓展思考

    在经典选择排序或冒泡排序的基础上进行去重、或者只对部分元素排序等变式训练,是高三排序算法专题训练的重点。与本题极度类似的题目也出现过:要求仅对数组中的奇数进行升序排序,排序后奇数在前,偶数在后。

    但我今天让大家思考的不是这道题目,而是另一道:

         有一组正整数,要求分别对奇数和偶数进行升序排序,排序后奇数在前,偶数在后。排序示例如下。

    排序前

    3

    9

    2

    4

    8

    7

    3

    2

    排序后

    3

    3

    7

    9

    2

    2

    4

    8

        请大家分别写出使用冒泡排序、选择排序和插入排序实现该功能的代码。

    六拓展思考答案

    冒泡排序算法:

    For i = 1 To n - 1

            For j = n To i + 1 Step -1

                If a(j) Mod 2 = a(j - 1) Mod 2 And a(j) < a(j - 1) Or a(j) Mod 2 > a(j - 1) Mod 2 Then '奇数排在偶数左侧,若奇偶性相同则小的在左侧

                    t = a(j): a(j) = a(j - 1): a(j - 1) = t

                End If

            Next j

    Next i

    选择排序算法:

           low = 1: high = n

        Do While low <= high

            If a(low) Mod 2 = 1 Then '是奇数则把最小值交换到左端

                m = low

                For i = low + 1 To high

                    If a(i) Mod 2 = 1 And a(i) < a(m) Then m = i

                Next i

                t = a(m): a(m) = a(low): a(low) = t

                low = low + 1

            Else '是偶数则把最大值交换到右端

                m = low

                For i = low + 1 To high

                    If a(i) Mod 2 = 0 And a(i) > a(m) Then m = i

                Next i

                t = a(m): a(m) = a(high): a(high) = t

                high = high - 1

            End If

    Loop

    插入排序算法:

           For i = 2 To n

            t = a(i): j = i - 1

            Do While j >= 1 And (a(j) Mod 2 = t Mod 2 And a(j) > t Or a(j) Mod 2 < t Mod 2)

                a(j + 1) = a(j)

                j = j - 1

            Loop

            a(j + 1) = t

    Next i

    写在后面

    为了保证解析的原创性和思维的独特性,我都是独立解题后,先不看答案(除非题目不会做),直接把解析写好,再去看答案。

    当然,如果发现参考答案有更好的思路,我还是很乐于学习和借鉴的。同时,由于本人水平有限,解析中难免出现疏漏甚至错误之处,敬请谅解。

    无论是赞同还是反对我的看法,都请你给我留言。如果你有新的想法,千万不要憋在心里,请发出来大家一起讨论。让我们相互学习,共同进步!

    需要本文word版的,可以加入“选考VB算法解析”知识星球参与讨论和下载文件,“选考VB算法解析”知识星球汇集了数量众多的同好,更多有趣的话题在这里讨论,更多有用的资料在这里分享。

    我们专注选考VB算法,感兴趣就一起来!

    a49e200e298017ee6d6e215e69afc7c7.png

    相关优秀文章:

    阅读代码和写更好的代码

    最有效的学习方式

    选考VB算法解析之2017年4月高考真题卷第17题

    选考VB算法解析之2017年11月高考真题卷第16题

    选考VB算法解析之2017年11月高考真题卷第17题

    c9f6a4791e51de2d4895566b91af64e3.png

    展开全文
  • 5.如果一个正整数从左到右读与从右到左读是一样,就称它为回文式数(简称回数),如图321。“回数猜想”主要思想是,...小林按照上述算法,设计了验证回数猜想的VB程序(猜想次数不超过10次),程序功能如下:在文本...

    5.

    如果一个正整数从左到右读与从右到左读是一样的,就称它为回文式数(简称回数),如图321。“回数猜想”的主要思想是,对任意正整数,若它不是回数,则按下列算法即可获得一个回数:

    ⑴把该整数的数字顺序颠倒,求得该数的逆序数;

    ⑵将该整数和其对应的逆序数相加;

    ⑶若相加结果不是回数,则将结果作为新的整数,返回步骤⑴。

    小林按照上述算法,设计了验证回数猜想的VB程序(猜想次数不超过10次),程序功能如下:在文本框Text1中输入一个正整数,单击“验证”按钮(Command1),获取文本框Text1中的数,当该数不是回数时,采用回数猜想的方法进行验证,并在列表框List1中输出每次验证的过程,若验证成功或验证次数超过10次,则停止验证,最后在列表框List1中输出验证结果。程序运行效果如图所示。

    28a826c0832f7c1e2c9ab945fd2f92f9.png

    实现上述功能的VB程序如下:

    Private Sub Command1_Click()

    Dim t As String, a As Long, b As Long

    Dim count As Integer       ‘count用于存储回数猜想的验证次数

    t = Text1.Text

    count = 1

    Do While Check(t) = False And count <= 10

    a = Val(t)

    c = a + b

    List1.AddItem Str(a) & " +" & Str(b) & " =" & Str(c)

    count = count + 1

    t = c

    Loop

    If Check(t) Then

    List1.AddItem  "验证成功!"

    Else

    List1.AddItem  "10次内未验证成功!"

    End If

    End Sub

    ' 自定义函数Turn

    Function Turn(x As String) As Long

    Dim s As String, i As Integer

    s = ""

    For i = Len(x) To 1 Step -1

    s = s & Mid(x, i, 1)

    Next i

    Turn = ②

    End Function

    ‘自定义函数Check,检查x是否为回文数

    Function Check(x As String) As Boolean

    Dim i As Integer

    Check = True

    For i = 1 To Len(x) \ 2 Step 1

    If Mid(x, i, 1) <> ③ Then Check = False mid(x,len(x)+1-i,1)

    Next i

    End Function

    展开全文
  • 算法与程序设计考点基础 三种基本结构 顺序结构 分支结构 循环结构 顺序结构 语句1 语句2 语句3 按语句先后顺序依次执行 分支结构 If 条件 then 语句1 Else 语句2 End if If语句 VB提供了多种形式条件语句来实现...
  • 基本的c#知识

    2009-12-04 13:08:00
    微软实例教材中讲了三种语言:c#、vb 、Jscript,为了让大家过一把新东西隐,我们还是学c#吧。这个最好有一点c++基础。 不过没有也没有关系,大不了多费点力了。 任何一门语言都有两部分: 数据+语法+算法 ...

    微软的实例教材中讲了三种语言:c#、vb   、Jscript,为了让大家过一把新东西隐,我们还是学c#吧。这个最好有一点c++基础。    
      不过没有也没有关系,大不了多费点力了。    
      任何一门语言都有两部分:    
      数据+语法+算法    
      数据是用来表示信息的,语法是来控制的。算法说白了就是人们总结的一些解决问题的思维方式。到于数据吧,多了自然有数据结构了,然后就出来了什么查询、插入、修改什么的。        
      1.存储数据当然要用到变量了,现在就来讲一下c#的申明方法!    
      通常方法是:        
            类型+变量名        
      int   x         //定义一个整形变量    
      string   name,pwd;     //定义两个字符性变量    
      object   x;       //定义一下对象    
      object   obj=new   object();//基于某一个对象创建一个实例    
      public   string   x;//给字符变量加一个类型修饰符,让所有用户均能访问        
      说明一下:    
      在申明变量时,对类型单词象int   string   object   都要用小写,因为c#是严格区分大小写的.用INT   x;定义变量就错了。    
      我们还是来两个程序看看:    
      /*   学会变量的申明方法      
          create   by   vagrant     */    
        using   System;    
        class   Test    
        {     static   void   Main()    
          {   int   x=3;    
              Console.WriteLine("x={0}",x);    
              string   name="vagrant";    
              string   pwd="197926";    
              Console.WriteLine("your   name   is   :{0};pwd   is   {1}",name,pwd);    
              object   y;    
              y=x;//显式转换    
              Console.WriteLine("y={0}",y);    
          }    
        }       
      2.向浏览器发送字符:    
      上面讲到的是在C#中用System.Console.WriteLine输出变量的值,但在ASP.NET还是要用到Response对象的Response.Write("char")方法,不过此时不可省掉括号.    
      例:    
            <%@   language="C#"   %>    
            <%   string   name;    
            name="vagrant";    
            Response.Write("you   name   is   "+name);    
            %>        
      3.访问索引属性的值(以表单中元素为例)    
          学过asp的朋友都知用Requst.Form("对象名")提取表单对象的值.但是在asp.net应用Request.QueryString["name"]提取.        
      4.申明索引属性    
      在asp.net中我们要学会事件编程概念与索引指示器。通过索引指示器我们可以象数组那样访问类的数据信息的方法。还是我们先来构造一个简单的例子:    
      using   System;    
      class   Team    
      {            
      string[]   s_name=new   string[3]{"vagrant","jack","rose"};//定义类的一个域,然后写构造子函数,使得外类能通过索引访问     
          public   string   this[int   nIndex]//访问索引申明    
      {    
      get   {    
      return   s_name[nIndex];//提供外类读的权力    
              }    
              set   {    
                s_name[nIndex]=value;//提供外类写的权力    
              }    
      }    
      }    
      class   Test    
      {    
      public   static   void   Main(){    
                      Team   t1=new   Team();//创建一个Team类的实例    
              for(int   i=0;i<3;i++)    
          Console.WriteLine(t1[i]);//通过索引指示器访问实例的数据信息    
                }    
      }    
      5.定义并初始化数据    
        当我们在处理批量数据常用到数组,定义数组要考虑到三个问题:类型,数据名,维数    
      我还是以一维数据来说吧,毕竟常用的就是一维数据。    
      定义数组:    
      string   studentname[]=new   string[50];    
      初始化:    
        方法一.    
            studentname[0]="vagrant";    
                    studentname[1]="jack";    
                    ........    
            方法二.    
                int[]   sex=new   int[2]{0,1};//0代表男,1代表女        
      这很好理解我就不解释了。        
      6.结构与枚举    
       我之所以把结构与枚举放在一起来讲是因为这两者有相似之处又有不同之处。    
          结构:一系列相关的信息组成单一实体。象通讯录通常包括:姓名、电话、地址等。    
          枚举:逻辑上密不可分的一系列数据。比方星期有一到七。但星期一到星期天逻辑上密不可分。    
      这两者是有不同的,结构是数据集合,而枚举每次只能取其中一个。结构与枚举都是数据结构类型中的一种。    
      定义结构数据类型:    
                  struct   PhoneBook     {    
                              public   string   name;    
                              public   string   phone;    
                              public   string   address;    
      }    
      定义一个该结构类型的变量    
            PhoneBook     p1;    
      给结构变量各个成员赋值    
            p1.name="vagrant";    
            p1.phone="88888888";    
            p1.address="wuhan";        
      定义枚举数据类型,并赋值    
      //定义一个枚举类型    
      public   enum   MessageSize   {      
              Small   =   0,    
              Medium   =   1,    
              Large   =   2    
      }       
      //   创建一个枚举类型变量    
      public   MessageSize   msgsize;      
      //   给该变量赋值    
      msgsize   =   Small;     
      7.声明并使用方法    
        //   定义一个没有返回值的函数    
      void   voidfunction()   {    
        ...    
      }     
      //   声明一个有返回值的子函数    
      String   stringfunction()   {    
        ...    
              return   (String)   val;//(string)表明返回类型    
      }     
      //申明一个能计算的函数    
      String   parmfunction(String   a,   String   b)   {    
        ...    
              return   (String)   (a   +   b);    
      }      
      //   使用函数    
      voidfunction();    
      String   s1   =   stringfunction();    
      String   s2   =   parmfunction("Hello",   "World!");      
      8.流程控制语句    
          在c#中流程控制语句与C++没有多大区别。只不过C#中加了一个foreach(vb程序员应该不会陌生).    
      流程控制大不了有选择、循环。    
              if条件语句的用法:    
                          if(Requery.QueryString["name"]==null){    
                                                statement....    
                            }       
            当有太多选择时,常用switch语句    
            例   :      
                                  switch   (Name)   {    
                                          case   "John"   :    
                                              ...    
                                            break;    
                                    case   "Paul"   :    
                                          ...    
                                          break;    
                                    case   "Ringo"   :    
                                          ...    
                                        break;    
                                  default:    
                                          ...    
                                      break;    
                              }    
        循环语句通常有两种:    
                      a.for循环    
                          for   (int   i=0;   i<3;   i++){    
                              statement...    
                        }    
                      b.while循环    
                            int   i   =   0;    
                            while   (i<3)   {    
                                    Console.WriteLine(i.ToString());//i.ToString()目的是i转化为字符串型    
                                    i   +=   1;    
                            }    
      9.异常处理    
            在编写程序时,我们常会出现一些事先不可预期的事情。比方用户的错误输入、内存不够、网络资源不可用、数据库无法使用等情况。所以我们应该用异常处理方法来处理这类问题。C#里所有的异常都为类的一个实例,这个类继承于System.Exception类    
        先来介绍一下抛出异常语句thow    
              throw   expression    
          这个语句是在计算表达式的值时产生的一个异常           
            异常处理语句:    
            try是用来捕捉块执行过程中发生的异常    
          cathc是用来处理该异常的。    
       通用方法:    
      try   {    
              //可能抛出异常的代码    
      }   catch(OverflowException   e)   {    
              //   捕捉一个详细的异常    
      }   catch(Exception   e)   {    
              //   捕捉一个通常的异常    
      }   finally   {    
              //   执行一个没有异常的代码    
      }    
      看一个贝贝写的处理数据库联接出错的异常:    
      try      
                              {                                    
                                      OleDbConnection   conn   =   getConn();           //getConn():得到连接对象      
                                      OleDbDataAdapter   adapter   =   new   OleDbDataAdapter();      
                                      string   sqlstr="select   id,title,author,pic,hits,posttime   from   notes   order   by   posttime   desc";     
                                      mydataset=   new   System.Data.DataSet();      
                                      adapter.SelectCommand   =   new   OleDbCommand(sqlstr,   conn);      
                                      adapter.Fill(mydataset,"notes");              
                                      conn.Close();      
                              }      
                              catch(Exception   e)      
                              {      
                                      throw(new   Exception("数据库出错:"   +   e.Message))        
                              }          
      10.字符串处理    
          在c#中string为引用类型,所以可以用联接,截断    
       看了下面这个实例就知道了!    
      //   使用字符串    
      String   s1;    
      String   s2   =   "hello";    
      s2   +=   "   world";    
      s1   =   s2   +   "   !!!";      
      //   使用StringBuilder类的Append方法    
      StringBuilder   s3   =   new   StringBuilder();    
      s3.Append("hello");    
      s3.Append("   world");    
      s3.Append("   !!!");     
      11.事件处理    
          事件是类向外界发送通知的成员。    
       先还是看一个事件处理代表例子:    
       void   MyButton_Click(Object   sender,    
                                              EventArgs   E)   {    
      ...    
      }    
      这个我也不大懂,听说看了MFC会比较清楚,如果哪位有这方面的经验,还望多多指教。    
      12。声明一个事件    
        //   创建一个public事件    
         public   event   EventHandler   MyEvent;      
        //   为该事件定义一个方法    
        protected   void   OnMyEvent(EventArgs   e)   {    
                      MyEvent(this,   e);    
        }    
      13.给事业加OR去处理该事件的方法    
            Control.Change   +=   new   EventHandler(this.ChangeEventHandler);    
          Control.Change   -=   new   EventHandler(this.ChangeEventHandler);    
      14.类型转换    
          int   i   =   3;//定义一个整形变量并赋值    
        String   s   =   i.ToString();//整形转化为字符串型,用ToString()    
        double   d   =   Double.Parse(s);//字符串型转化为双精度型用Double.Parse(var);    
      还有一些,我就不解释了,等我们有了一定的基础再深究吧。反正了解了这一些对后面的常用问题处理还是没有问题的。

    展开全文
  • 微软实例教材中讲了三种语言:c#、vb 、Jscript,为了让大家过一把新东西隐,我们还是学c#吧。这个最好有一点c++基础。 不过没有也没有关系,大不了多费点力了。 任何一门语言都有两部分: 数据+语法+算法 ...
  • 西北大学 计算机基础(文科) 国家精品课程 西北大学计算机基础(文科) 习题-第9章 第9章 问题求解与程序设计 1问答题 列举几个程序设计语言 程序的三种基本结构是什么 结构化程序设计的基本特点是什么 穷举法中主要...
  • IT之路

    2011-11-13 18:01:00
    内容包括:面向对象编程的基本概念、vb语法基础、数据类型与表达式、各种函数、三种程序结构、数组。之后内容就没有深入学习了。 2.对数据库sql server2005学习。内容:最基本的增、删、改、查,存储过程、触.....
  • 基于LabVIEW的三种相位差测量法的对比分析.pdf 基于LabVIEW的三维运动测试分析系统的研究.pdf 基于LabVIEW的串口数据采集的实现及应用.pdf 基于LabVIEW的串口通信应用.pdf 基于LabVIEW的信号处理技术应用演示及...
  • 基于LabVIEW的三种相位差测量法的对比分析.pdf 基于LabVIEW的三维运动测试分析系统的研究.pdf 基于LabVIEW的串口数据采集的实现及应用.pdf 基于LabVIEW的串口通信应用.pdf 基于LabVIEW的信号处理技术应用演示及...
  • 基于LabVIEW的三种相位差测量法的对比分析.pdf 基于LabVIEW的三维运动测试分析系统的研究.pdf 基于LabVIEW的串口数据采集的实现及应用.pdf 基于LabVIEW的串口通信应用.pdf 基于LabVIEW的信号处理技术应用演示及...
  • 基于LabVIEW的三种相位差测量法的对比分析.pdf 基于LabVIEW的三维运动测试分析系统的研究.pdf 基于LabVIEW的串口数据采集的实现及应用.pdf 基于LabVIEW的串口通信应用.pdf 基于LabVIEW的信号处理技术应用演示及...
  • java源码包---java 源码 大量 实例

    千次下载 热门讨论 2013-04-18 23:15:26
    2个目标文件,提供基本的音乐编辑功能。编辑音乐软件朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机流程及操作:获取系统属性...
  • 这并不难,也就是如何组织数据并使用适当的算法,人门时候只需要按直觉 去安排数据就行了。如果你打算设计一个大型RPG游戏,那可得好好学一学这门课。一定要对所有常用数据结构都非常熟悉,才能在使用中...
  • asp.net知识库

    2015-06-18 08:45:45
    深入剖析ASP.NET组件设计]一书第章关于ASP.NET运行原理讲述补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中私有变量 关于反射中创建类型实例方法 ASP.Net应用程序多进程模型 NET委托...
  • java源码包2

    千次下载 热门讨论 2013-04-20 11:28:17
     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版飞鸽传书软件,但是Java版确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能提升很有帮助。 Java聊天程序,包括服务端和...
  • 电子设计.doc

    2019-05-28 11:58:28
    0250、MC1648两种基本型VCO压控特性 0251、MC145163P型锁相频率合成器原理与应用 0252、MSP430超声波测距 0253、MSP430和nRF905无线数传系统设计 0254、nRF905无线数据传输系统 0255、N阶多环反馈低通滤波器...
  • java源码包3

    千次下载 热门讨论 2013-04-20 11:30:13
     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版飞鸽传书软件,但是Java版确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能提升很有帮助。 Java聊天程序,包括服务端和...
  • java源码包4

    千次下载 热门讨论 2013-04-20 11:31:44
     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版飞鸽传书软件,但是Java版确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能提升很有帮助。 Java聊天程序,包括服务端和...
  • Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机...

空空如也

空空如也

1 2 3
收藏数 43
精华内容 17
关键字:

vb算法的三种基本结构