2007年北京大学所有上机试题[不断更新中]
新人第一次发贴,请大家多多支持,自我介绍一下,本人04年参加自考,一直是自学,到现在还剩下概率论、电子电路、离散、操作系统、数据结构、软件工程6门课 由于一些特殊原因,我参加上机考试比较晚,今年才开始报的上机,之前在四联也下过一些资料,很感谢那些热心的同学们,道一句辛苦了 大家都是自考生,深知自考的艰辛和困难,在这我会把我这一年参加的全部上机资料上传(如果能记的住题目的话),希望能对那些还没有考上机的同学们有所帮助
========================================================
计算机应用技术 这门我就不多说了,只考WORD,图文混排,只要把蓝皮书上给的例子都做会就行了
======================================================== 微型计算机及其接口技术 是我昨天考的,很可惜没过,我是调试不出来,郁闷,这门笔试我可是考了86分啊,下面是题目 8253通道1,工作在方式0,手动输入单个脉冲。8255的C口接逻辑开关,输入记数初值(开始说是E-0,后来老师改说8-0)。编程实现:C口输入的记数初值后,能够在显示器上显示其值,并同时对应有一个LED灯显示(也即说,初值为8,则LED7亮,然后初值递减,而LED灯也随之递减显示,当减为0时,灯全灭)有键按下,则退出循环。
data segment led db 01h,02h,04h,08h,10h,20h,40h,80h;这题是要构造代码表的,不是按位输出!!!只要亮一盏! data ends code segment assume cs:code,ds:data start:mov dx,28bh mov al,89h out dx,al mov dx,283h mov al,50h out dx,al begin:mov dx,28ah in al,dx mov dx,281h out dx,al lop:mov dx,281h in al,dx and al,0fh call disp lea bx,led xlat mov dx,288h out dx,al cmp al,0;我就是只少了这一句和下一句跳转,哭啊~~~~ jz begin;作用是当AL减到0时,则返回前面赋值处重新执行 mov ah,1 int 16h jz lop mov ah,4ch int 21h disp proc near push dx mov dl,al cmp dl,9 jle num add dl,7 num:add dl,30h mov ah,02h int 21h mov dl,0dh int 21h mov dl,0ah int 21h pop dx ret disp endp code ends end start
P.S.总结一下自己的失败经验,希望对后面同学能有所帮助。其实题目并不难,而且我运气还不错,碰见一个比较和蔼的老师,不过很可惜我没有调试出来T_T,主要是我太死心眼了,100%按题目来!到最后我都已经成功调试出了灯从LED7亮到LED0按记数值,但是记数到0后我是回到F,从F开始重新记数,而且F-9是按位输出灯亮的(1亮0灭)结果老师只告诉我不对,说要能继续从前面赋的初值开始,我就一直没转过弯来,唉~~~ 不过可能也是因为第一次考吧,没经验,出来不少同学说我都应该能过的,临走前老师也说我本来挺有戏的,无言了啊 我奉劝将要考的同学,程序方面,应该都没问题的,但是,很多人都不能将结果正确调试出来,具体什么原因我也不好说,感觉对那电路板的操作总有点问题,到时候大家考的时候,都用心点,不要慌,执行程序前都检查一遍连线先,保证线没有接错,碰见比较好的老师,就多问问,老师不会骂你的,不过态度恶劣的老师就难说了,我前面那组的老师就特别凶,从前一组考试结束就一直骂,骂到我这组进场,那嗓门,简直可以和德鲁依的咆哮有一拼
还有,实在做不出结果的, 还可以试试笨方法,象我最后出来时还有个同学在调试,他的程序是: ... cmp al,10h jz out1 cmp al,20h jz out2 cmp al,40h jz out3 ... out1:mov al,00010000b mov dx,288h out dx,al out2:mov al,00100000b mov dx,288h out dx,al ....
老师说他这样还可以让过的,毕竟意思是达到了,而且这样的调试不容易出错 最后,不要有什么侥幸心理,老师是一定要看你的调试结果的,而且必须能大致符合题意(像灯亮灭,循环什么的)这样才会让你抄程序,否则肯定没戏
再废话两句,自考生,真的很不容易啊,我下午碰见的一哥们,都考4次了, 为了这次能过,他每天都在考场外等过了的同学抄出题目来,唉,让人感觉很辛酸呢~~ 不说了,祝愿即将参加考试的同学好运气!能把它给过了!!!
=========================================================== 数据库及应用 估计我应该能过,我是用FOXPRO的, 老教材也教的就是那个,是1月3号考的 建库: 工程(工程号,工程名,所在城市,负责人) 零件(零件号,零件名,单价,颜色) 供应(工程号,零件号,数量,日期) 工程和零件是M:N的联系。 1, 按题目要求建立表结构,各表各个字段的名字、数据类型、长度等根据语义和查询的需要自行决定。可根据以下题目的需要建立索引。有些题目则可能需要建立中间表或临时表。(15分) 2, 输入合适的数据,要求能够符合后面的查询,数据全部正确有效,也即使查询结果不为空。(10分) 3, 使用FoxPro或SQL进行如下的查询:(以下题目分别为10,15,10分) (1)检索位于杭州和厦门的工程信息,要求列出工程号,工程名以及负责人,并在最后一行显示:总共有工程数 XX 个。 (2)要求按零件的颜色进行分类,列出每种颜色的零件数量,并在最后一行显示:蓝色零件的平均单价为XXX.X元(要求保留1位小数) (3)检索使用了零件名为“PN2”的工程,列出工程号,工程名和所在城市,按工程号升序排列。 4,将上面的3个查询过程放入一个过程文件中,以你熟悉的方式建立一个简单的菜单程序,要求在菜单程序中可以选择不同的菜单项通过调用过程实现相关查询并显示结果(注意:要求程序中含有过程调用语句),将主程序和子过程都放在一个过程文件中,主程序在前,过程在后。(20分) 5,编写一个工程的录入程序。要求在录入一门工程在后屏幕询问:“继续录入吗?”,根据用户回答决定程序流程。要求不退出本程序能继续进行录入操作(程序中不必自定义窗口)。(20分) 本人的答案(仅供参考); 表obj(objno,objname,city,master) o1 ON1 北京 北京大学 o2 ON2 杭州 杭州大学 o3 ON3 上海 上海大学 o4 ON4 杭州 杭州电子所 o5 ON5 厦门 厦门大学 o6 ON6 杭州 杭州医学院 表lingjian(pno,pname,price,color) p1 PN1 122蓝色 p2 PN2 33蓝色 p3 PN3 112黑色 p4 PN4 533蓝色 p5 PN5 79红色 表gongying(objno,pno,num,date) o1 p1 100 19990403 o2 p3 300 19980505 o3 p5 200 20070101 o4 p2 500 20010404 o5 p4 320 20040101 o6 p2 100 19990418 3_1 clear use obj a=reccount() display all fields objno,objname,master for city='杭州' or city='厦门' ?'总共有工程数',STR(a,2),'个' close tables 3_2 clear select color as 颜色,sum(num) as 共有零件数量; from lingjian l,gongying g; where l.pno=g.pno; group by color; to screen close tables use lingjian average price to a for color='蓝色' ?'蓝色零件的平均单价为'+STR(a,5,1)+'元' close tables 3_3 clear select o.objno,objname,city; from obj o,lingjian l,gongying g; where o.objno=g.objno and l.pno=g.pno and pname='PN2'; order by o.objno; to screen close tables 4 P.S.我没有做对这一题,因为我没有记与过程相关的语句语法,我直接调用前面的程序来实现的菜单程序^_^,估计也能得个2分吧.现在我重新按题意编了一下,以后考的同学多留意一下,这是蓝皮书上没有提到的 ***Main Program*** clear define window w1 from 4,6 to 40,80 close float grow zoom title'查询界面' activate window w1 define menu m1 in window w1 defi pad m11 of m1 promp'查询第一小题' defi pad m12 of m1 prompt'查询第二小题' defi pad m13 of m1 prompt'查询第三小题' set proc to proc_all.prg on sele pad m11 of m1 do one on sele pad m12 of m1 do two on sele pad m13 of m1 do three activate menu m1 return *****************proc_all.prg***************** procedure one clear use obj a=reccount() display all fields objno,objname,master for city='杭州' or city='厦门' ?'总共有工程数',STR(a,2),'个' close tables return procedure two clear select color as 颜色,sum(num) as 共有零件数量; from lingjian l,gongying g; where l.pno=g.pno; group by color; to screen close tables use lingjian average price to a for color='蓝色' ?'蓝色零件的平均单价为'+STR(a,5,1)+'元' close tables return proc three clear select o.objno,objname,city; from obj o,lingjian l,gongying g; where o.objno=g.objno and l.pno=g.pno and pname='PN2'; order by o.objno; to screen close tables return 5 clear use obj store .t. to act,ok do while act scatter to A blank clear @2,2say'输入要录入的信息:'font'宋体',20 @6,2say'工程号'get A[1] picture'a99' @6,20say'工程名'get A[2] @8,2say'所在城市'get A[3] @8,25say'负责人'get A[4] read @10,10say'确定吗?[Y/N]'get ok picture"L" read if ok append blank gather from A clear @5,5say'信息录入成功!!' font'黑体',14 @6,2say' ' wait endif clear @4,6say'继续录入吗?[Y/N]'get act picture'L' read enddo list close tables return
本文来自:http://bbs.4lzx.com/read.php?tid=269287&u=6226,更多资料尽在四联自学论坛(http://bbs.4lzx.com/)转贴请保留此信息。
| 凡本站注明版权的文章,版权归本站所有,任何媒体、网站或个人未经本站协议授权不得转载、链接、转贴或以其他方式复制,否则本站将依法追究责任。本站转载的信息,尽量保证版权信息的完整性,用户在网站上所发布、转载的文章所引起的版权问题以及其他纠纷,后果由用户自行承担,本网概不负责。如转载文章涉及版权等问题,请与我们联系。版权声明:http://www.4lzx.com/Copyright.asp |
|