急急急急!!!!!!!!!!!!

解决方案 »

  1.   

    creat table mytable 序号 n(2),数字 n(10)
    for i=1 to 20
    input '请随便输入一个数字' to myshuzi
    use mytable
    appe blank
    repl 序号,数字 with i,myshuzi
    endfor
    wait
    use mytable in 0
    index on 数字 tag 数字
    brow
      

  2.   

    要下班了,先写个输入和输出,有空再 冒泡,楼下接着写Option Base 1
    Dim a() As Integer  '定义数组
    Dim i As Integer
    Dim x                 '输入字符
    Dim n As IntegerPrivate Sub Command1_Click()    For i = 1 To n        x = InputBox("请输入数字:", "随机数 " & i)        If IsNumeric(x) = False Then
                MsgBox "请输入数字!", 16, "提示"
                x = InputBox("请输入数字:", "随机数 " & i)
            End If        a(i) = x    NextEnd SubPrivate Sub Command2_Click() For i = 1 To n
      MsgBox a(i), 64, i
     NextEnd SubPrivate Sub Form_Load()
        n = 20
        ReDim a(n + 1) As Integer
    End Sub
      

  3.   

    Dim a() As Integer '定义数组
    Dim i As Integer
    Dim x '输入字符
    Dim n As Integer
    Dim Maxs As Integer
    Dim MaxID As Integer
    Dim Mins As Integer
    Dim MinID As Integer
    Private Sub Command1_Click()    For i = 1 To n        x = InputBox("请输入数字:", "共" & n & "个随机数 " & "---第" & i & "个")        If x = "" Then Exit Sub        If IsNumeric(x) = False Then
                MsgBox "请输入数字!", 16, "提示"
                x = InputBox("请输入数字:", "共" & n & "个随机数 " & "---第" & i & "个")
            End If        a(i) = x    Next    '显示最大数、最小数及位置
        Maxs = a(1)    For i = 2 To n        If a(i) > Maxs Then            Maxs = a(i)
                MaxID = i        End If    Next    If MaxID = 0 Then MaxID = 1    MsgBox "最大值:" & Maxs, 64, "位置:第" & MaxID & "个数"    Mins = a(1)    For k = 2 To n        If a(k) < Mins Then            Mins = a(k)
                MinID = k        End If    Next    If MinID = 0 Then MinID = 1    MsgBox "最小值:" & Mins, 64, "位置:第" & MinID & "个数"End SubPrivate Sub Form_Load()
      n = 20
      ReDim a(n + 1) As Integer
    End Sub
      

  4.   


    #include <iostream>
    using namespace std;template<typename T>
    void findMaxMin(const T *Array,const int ArraySize)//参数1是数组名,参数2是数组大小
    {
    T max,min;
    int maxFlag=0,minFlag=0; if(Array[0] >= Array[1]){
    max=Array[0];
    min=Array[1];
    }
    else{
    max=Array[1];
    min=Array[0];
    } for (int i = 2,j=i+1;i < ArraySize;++i)
    {
    if (Array[i] >= Array[j])
    {
    if (Array[i] > max) {
    max=Array[i];
    maxFlag=i;
    } if (Array[j] < min){
    min=Array[j];
    minFlag=j;
    }
    }//end of if
    else
    {
    if (Array[j] > max) {
    max=Array[j];
    maxFlag=j;
    } if (Array[i] < min){
    min=Array[i];
    minFlag=i;
    }
    }//end of else
    }//end of for cout<<"max:"<<max<<" First of Position:"<<maxFlag<<endl
    <<"min:"<<min<<" First of Position:"<<minFlag<<endl;
    }int main()
    {
    int intArray[10]={20,30,20,10,10,15,80,40,80,17}; findMaxMin(intArray,10);

    return 0;
    }
    以上是C++代码、、、,我写成了模板的形式了,所以你用的时候任意类型的数组都是能用的,也很容易改成C代码的;
    算法:
    1、首先比较数组开始的两个数,大的赋值给max,小的赋值给min
    2、然后从第三个数开始每次取两个数进行比较,再把大的数跟记录起来的max比较,比max大时则赋值给max同时记录下它所在的位置;再把小的数跟记录起来的min比较,比min小时则赋值给min,同时记录下它的位置;
    3、如果数组中有多个相等的最大值和最小值,则只记录第一次出现的最大值和最小值的位置;
    4、算法复杂度分析:每2个数需要的比较次数是3次,所以每个数需要的比较次数是1.5次,n个大小的数组需要的算法复杂度大约是1.5n,效率比较高。
    /*---------------------------------------*/
    楼主的需求是随机输入20个数,在这里你可以随便多少个数都可以的,也不限定数据类型(这就是模板的好处)
      

  5.   


    int main()
    {
    int intArray[10]={20,30,20,10,10,15,80,40,80,17}; findMaxMin(intArray,10);

    return 0;
    }
    对上面的模板函数的测试,输出:
    max:80 First of Position:6
    min:10 First of Position:3
    请按任意键继续. . .Good! I hope this will help you!
    这题目是很简单的算法,建议可以自己动手完成。呵呵
      

  6.   

    vfp9.0:dime lanshuzu(20)
    input '请任意输入数字' to lanshuzu(1)
    lnmax=lanshuzu(1)
    lnmix=lanshuzu(1)
    for i=2 to 20
    input '请任意输入数字' to lanshuzu(i)
      if lnmax<lanshuzu(i)
       lnmax=lanshuzu(i)
       lnmaxxuhao=i
      endif
      if lnmix>lanshuzu(i)
       lnmix=lanshuzu(i)
       lnmixxuhao=i
      endif
    endfor?"最大值为",lnmax+space(5)+'位置为',lnmaxxuhao
    ?"最小值为",lnmix+space(5)+'位置为',lnmixxuhao