更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
2.题目:由N个有序整数组成的数列已放在一维数组中,下列给定

      程序中函数fun的功能是:利用折半查找法查找整数m在

      数组中的位置。若找到,返回其下标值;否则,返回-1。

      请改正程序中的错误,使它能得出正确的结果。

说明:折半查找的基本算法是:每次查找前先确定数组中待查的

      范围low和high(low<high),然后用m与中间位置(mid)上

      元素的值进行比较。如果m的值大于中间位置元素的值,

      则下一次的查找范围落在中间位置之后的元素中;反之,

      下一次的查找范围落在中间位置之前的元素中。直到low>high,

      查找结束。

-----------------------------------------------------------

注意:不可以增加或删除程序行,也不可以更改程序的结构。

------------------------------------------------------'''

def fun(a,m):

    low=0

    high=len(a)-1

    while(low<=high):

        #**********FOUND**********

        mid=(low+high)/2  

        if(m<a[mid]):

            high=mid-1

        #**********FOUND**********

        else if(m<a[mid])  

            low=mid+1

        else:

            return mid

    return -1

          

def main():

    a =[-3,4,7,9,13,45,67,89,100,180]

    print("a数组中的数据如下:")

    for i in range(len(a)):

        print("%d " %a[i]) 

    m = int(input("请输入要查找的整数m,并按回车继续:"))

    k=fun(a,m)

    if(k>=0):

        print("m={},index={}".format(m,k))

    else:

        print("没有找到!")        

   

if __name__ == '__main__':

    main()

15.题目:小王希望用电脑记录他每天掌握的英文单词。请设计程序和

      相应的数据结构,使小王能记录新学的英文单词和其中文翻

      译,并能很方便地根据英文来查找中文。

提示:数据结构建议用集合。

      集合添加:dic[key]=value 判断key是否在集合中:if key in dic)。

---------------------------------------------------------

注意:不可以增加或删除程序行,也不可以更改程序的结构。

------------------------------------------------------'''

def add_dic(dic):

    while True:

        word=input("请输入英文单词(直接按回车结束):")

#**********FOUND**********

        if len(word)=0:    

            break;

        meaning=input("请输入中文翻译:")

        dic[word]=meaning

        print("该单词已添加到字典库。")

    return

 

def search_dic(dic):

    while True:

        word=input("请输入要查询的英文单词(直接按回车结束):")

        if len(word)==0:

            break;

#**********FOUND**********

        if len(word) in dic   

            print("“%s”的中文翻译是:%s"%(word,dic[word]))

        else:

            print("字典库中未找到这个单词")

    return

def main():

    worddic=dict()

    while True:

        print("请选择功能:\n1:输入\n2:查找\n3:退出")

        c=input()

        if c=="1":

            add_dic(worddic)

        elif c=="2":

#**********FOUND**********

            search_dic(2)    

        elif c=="3":

            break

        else:

            print("输入有误!")

            

if __name__ == '__main__':

    main()

1 2