第一篇:国际结算上机实验报告及心得体会
德 州 学 院
实
验
报
告
课程名称:
国 际 结 算
实验班级:2011级国际经济与贸易专科 学
号:201111806035 姓
名:姜丽萍 指导教师:毛丽君 填写日期:2013-11-28 实验室名称: 经济管理系综合实验室
2013年
月 日
一、实验项目名称
1.熟悉外贸单证实习的平台的基本用法。2.掌握国际结算中票据的填制与使用。4.熟悉汇付结算方式的灵活使用。5.熟悉托收结算方式的灵活使用。6.熟悉信用证结算方式的具体操作。
7.熟练掌握国际结算中各种商业单据的制作和审核。二 实验目的
本实验以国际贸易模拟实习软件为基础模拟操作国际贸易结算的实际过程,通过网络模拟实验了解各种结算方式下各个当事人的责任,掌握各种结算单据的制作和审核,熟悉各种结算方式的灵活使用。通过分别充当结算业务中的进出口商和进出口银行等当事人,熟悉和掌握多种结算方式,学会使用各种结算工具,学会各种商业单据的制作和审核。
三、实验环境
1.操作系统:Windows XP 2.应用软件:世格外贸单证教学软件、世格SimTrade外贸实习软件。
四、实验内容与要求
1.通过签发票据实验,使学生熟悉汇票、本票和支票等票据的签发,能较熟练运用;通过上机实验,使学生熟悉信用证的使用及审核等相关业务。
2.提供单证实践的机会,深化学生在《国际结算》课程中学到的各种单据的基本概念和信用证与物权单据之间的有机衔接,熟悉信用证内容,掌握制单技术和实践审单原理。
3.帮助学生在实验中获取知识,在实践中增长才干,巩固、深化书本所学的理论业务知识,缩短课堂与社会实务部门的距离,缩短实际工作中的磨合期。
五、实验总结
(根据自己在实验中的收获感受、出现的问题及最终需要注意和提高的方面进行总结。)注:实验报告正文字数不得少于2000字。
附:实验结果(包括填制的票据、各种结算方式下的单据)
(一)实验结果
(二)实验总结
通过一个学期的国际结算学习,使我了解了国际结算的理论知识和实际操作过程。国际结算是对国际间债权债务进行了结和清算的一种经济行为。国际结算就是运用一定的金融工具(汇票、本票、支票等),采取一定的方式(汇付、托收、信用证等),通过一定的媒介机构(银行或其他金融机构等),进行国与国之间的货币收支行为,从而使国际间债权债务得以清偿。
通过这学期的实验上机,对信用证结算业务有了进一步的了解,对信用证填写完整性、准确性的审核,根据信用证的条件,对商业发票、汇票的正确缮制有了进一步的体会,并且掌握了保险单、海运提单、装箱单的业务处理流程;对一般原产地证和普惠制原产地证等业务处理流程也得到进一步了解。通过上机实验,我认识到了结算工作的复杂性,变化性,灵活性,困难性,也体会到了作为一名优秀的结算工作者应该具备的基本业务素质和心理素质。
这次模拟操作不但巩固了我们平时所学,也为我们日后的专业工作提供了非常实际的便利。作为一名大学生,应当具备较强的举一反三的能力,而在这些实习中,恰有不少单证的填写是相互联系、相互依靠的。因此,我们应当举一反三,利用诸多单证格式和填写原理类似这一特点,将各类单证的填制和审核紧密联系到一起。这样做无疑可以大大提高我们的学习效率。也可以使我们的实际操作结果相互对应,利于即使查缺补漏,保证单证记录内容的准确有效。在L/C项下,必须严格注意各类单据记载内容的一致,以单单一致、单证一致来求得结汇工作的顺利进行。
在实验的过程中遇到了一些问题,首先的问题就是语言方面的障碍,由于题目所给都是英文形式,所以在制作票据之前把各个类目和内容阅读清楚和准确是至关重要的,限于自身的外语水平,在这个环节遇到了一点困难;其次还发现,由于对各项单证的基础知识掌握不牢固,各个类目的准确含义没有完全记住,所以这大大降低了实验的效率,遇到不懂的类目还要查阅课本。还有一个问题是细节方面的问题,就是如何把所给题目所给的信息提取出来,按要求准确地把对应的信息填在票据当中。
在进行实验的过程之中我充分体会到了英语的重要性,题目所给信息全是英文的,单证的全部内容以及填制也需要用英文来完成,在阅读相关内容的过程中,无疑我遇到了不小的阻力,这使我明白,我的外语水平还是远远不足以应付日后工作中的诸多困难,因此,我们在加强专业课程和专业技能学习的同时,还应该努力提高自己的英语水平。
国际结算是国际贸易必不可少的一项业务,而各种单证的制作在国际贸易中是常有的事情,所以掌握好单证的制作是非常重要的,虽然第一次上机模拟操作,没能完全学会如何制作,对整个实验过程有点不知所措,但是通过这学期的实验课,结合课本所学的理论知识,至少加深了对各种单证的认识,对其制作的过程和注意的问题也有了一个大概的了解,我想这会对以后更进一步的相关学习和实践带来很大的帮助,因此在学习这门课程中,在学习课本基础理论知识之余,适当地开设实验课,由我们学生自己上机操作模拟制作票据,对我们学习该门课程大有益处。
(三)心得体会
本学期的国际结算实验让我受益匪浅,将三年学习的理论知识运用到了实践中,进一步巩固了所学的知识,完善了知识体系。本学期的模拟实验提高了我的实际操作能力,为今后的工作打下了坚实的基础。以下是我本学期进行实验操作的心得体会:
一、在做国际结算时,英语水平很重要。
国际贸易中,交易双方处在不同的国家,沟通交流的语言基本都用国际通用的英语。本学期的模拟实验中,保险单、海运提单、商业发票、装箱单、汇票、装船通知等单据填写和信用证审核都用到英语,这就对我们的英语水平,尤其是专业英语水平有了很高的要求。现有的专业英语水平还远远达不到要求。因此,在以后的学习中,还需要进一步提高专业英语的水平。
二、在做国际结算时,对各单证的熟悉程度直接影响交易的效率。
上机模拟时,初次接触软件,再加上之前学习的理论知识不够扎实,因此每填一个单证都参照国际结算、国际贸易实务和经贸函电三本教材,因此造成了时间上的浪费;有了老师给的模本后,再加上对个单证的填写日益熟练,操作起来更加顺手。因此单证熟练度是国际结算业务员必备的。
三、在做国际结算时,一定要保持清醒的头脑,要极其认真、细心,要有耐心。
信用证审核着实让人头疼,其他各种单证也需要核对无误,否则会影响其他单证的正确填写。因此必须要求业务员有清醒的头脑,填写及审核时认真细心,同时要有耐心,仔细核对。
四、我们要熟练掌握专业知识,提高综合素质和能力。
大三所学的国际贸易实务和经贸函电包括了国际结算所操作的各项内容,但是将理论运用于实践时,出现了各种问题。原因在于我们没有熟练掌握专业知识,只是做到了了解。在接下来的学习中,我们要进一步巩固专业知识,熟练掌握国际结算中的各种单证,学会解决国际结算中可能出现的各种问题。多操作,多实践,切实提高综合素质和能力。
第二篇:国际结算实验报告
国际结算实验报告
姓 名: 学 号: 专业班级: 授课教师:
1.实验目的
国际结算业务是现代商业银行的新增主营业务之一,从国际结算到外汇市场、离岸金融市场等,商业银行始终是最重要的参与者,所以未来国际结算业务将会是银行的主要利润来源。国际结算模拟教学软件从高校国际结算教学的实际需求出发,主要从汇付、托收、信用证三种不同类型的结算方式,逼真地模拟了出口商、进口商、汇入行、汇出行等角色的办事流程。在各种结算方式的操作过程中,系统提供了直观的流程图和具体流程,可以方便地掌握国际结算的流程和操作。
通过对本系统的实际操作我们可以完全掌握国际结算业务的全部业务流程,熟悉国际银行的具体业务,使我们从枯燥的理论学习中解脱出来,通过动手操作和实践,加深我们对理论知识的理解,从而提高我们的综合素质和实际工作能力,毕业后能更快地适应工作需要。通过实习熟悉国际结算的具体操作,增强感性认识和社会适应能力,进一步巩固、深化已学过的理论知识,提高综合运用所学知识发现问题、解决问题的能力。2实验内容:
本次实习主要采用学生各自上机操作和指导老师随堂帮助解答相结合的实习模式,在体验国际结算的乐趣与风险的同时学到了很多宝贵的东西,是一次新颖有趣还深刻的学习过程。在实习中,我一共做四笔业务,结算方式从信用证、托收到汇付。通过实习我不仅巩固了几学期来所学的知识,而且通过单据的填写,实际的结算流程演示,使更近一层次地加深了对国际贸易交易的整个过程的理解,增强了我对这个专业的实践性。
(1)汇付:至少完成一笔电汇业务和票汇业务。(2)托收:至少一笔光票托收业务。(3)信用证:完成一笔出口信用证。2.1汇付业务练习
汇付指付款人通过银行将款项汇交收款人。在国际贸易中如采用汇付,通常是由买方按合同规定的条件和时间(如预付货款或货到付款或凭单付款)通过银行将货款汇交卖方。汇付有四个当事人,即汇款人、汇出行、汇入行和收款人。
汇付根据汇出行向汇入行发出汇款委托的方式分为三种形式,我选择电汇。死安徽是指汇出行接受汇款人委托后,以电传方式将付款委托通知收款人当地的汇入行,委托它将一定金额的款项解付给指定的收款人。电汇因其交款迅速,在三种汇付方式中使用最广。但因银行利用在途资金的时间短,所以电汇的费用比下述信汇的费用高。电汇操作流程如下:
(1)登陆后,进入实验中心,选择汇出汇款业务,而中间显示对应的案例信息,点击查看,阅读案例信息。
(2)根据案例步骤提示,先是汇出汇款申请书,则登陆贸易商端,选择汇出汇款实验类型,点击进入实验,则进入贸易商业务流程主页面,点击汇款申请书,点击新建申请书,则进入汇出汇款申请书业务操作界面。首先选择案例编号,再填入业务要素,如电汇编号,日期,受益人及地址,汇入行及地址,付款人等必填信息。
(3)再登陆银行端,选择汇出汇款实验类型,进入实验,则进入银行业务流程主页面,选择汇出汇款,点击电汇,进入电汇业业务操作界面,根据案例编号,选择要操作的信息,依次进行对电汇进行审核,登记,最后进行头寸偿付,销账结卷。2.2托收业务练习
托收,是出口人在货物装运后,开具以进口方为付款人的汇款人的汇票(随附或不随付货运单据),委托出口地银行通过它在进口地的分行或代理行代进口人收取货款一种结算方式。属于商业信用,采用的是逆汇法。托收方式的当事人有委托人、托收行、代收行和付款人。委托人(principal),即开出汇票委托银行向国外付款人代收货款的人,也称为出票人(drawer),通常为出口人;托收行(remitting bank)即接受出口人的委托代为收款的出口地银行;代收(collecting bank),即接受托收行的委托代付款人收取货款的进口地银行;付款人(payer或drawee),汇票上的付款人即托收的付付款人,通常为进口人。
上述当事人中,委托人与托收行之间、托收行与代收行之间都是委托代理关系,付款人与代收行之间则不存在任何法律关系,付款人是根据买卖合同付款的。所以,委托人能否收到货款,完全视进口人的信誉好坏,代收行与托收行均不承担责任。在办理托收业务时,委托人要向托收行递交一份托收委托书,在该委托书中人出各种指示,托收行以至代收行均按照委托的指示向付款人代收货款。托收方式有跟单托收和光票托收,此次模拟实习我用的是光票托收。光票托收的操作流程如下:(1)登陆贸易商端后,进入实验中心,点击光票托收业务,选择案例。(2)根据案例步骤提示,点击光票托收委托申请,点击列表上的新建,则进入托收委托申请书业务操作界面,填入业务要素,要填的信息不多,有很多项都是选择项,只需打钩及可。
(3)再登陆银行端,选择托收实验类型,进入实验,则进入银行业务流程主页面,选择托收,进入托收业务操作界面,根据案例编号,选择要操作的信息,依次进行对托收进行修改,审核,登记,最后进行催收托收款,收解付结卷。2.3信用证业务练习
信用证是银行用以保证买方或进口方有支付能力的凭证。在国际贸易活动中,买卖双方可能互不信任,买方担心预付款后,卖方不按合同要求发货;卖方也担心在发货或提交货运单据后买方不付款。因此需要两家银行做为买卖双方的保证人,代为收款交单,以银行信用代替商业信用。银行在这一活动中所使用的工具就是信用证。
可见,信用证是银行有条件保证付款的证书,成为国际贸易活动中常见的结算方式。按照这种结算方式的一般规定,买方先将货款交存银行,由银行开立信用证,通知异地卖方开户银行转告卖方,卖方按合同和信用证规定的条款发货,银行代买方付款。
信用证方式有三个特点:一是信用证不依附于买卖合同,银行在审单时强调的是信用证与基础贸易相分离的书面形式上的认证。二是信用证是凭单付款,不以货物为准。只要单据相符,开证行就应无条件付款。三是信用证是一种银行信用,它是银行的一种担保文件。
在本次模拟实验中我选择的是出口信用证,出口信用证包括出口审证和制单交单。实验步骤如下:
(1)登陆贸易商端后,进入实验中心,点击出口信用证业务,选择案例。(2)点击出口信用证,点击出口审证,点击审证。
(3)点击出口信用证,点击交单,在跳出的申请书界面填写必要信息,点击保存。3.实验心得
这次实习不但巩固了我们平时所学,也为我们日后的专业工作提供了非常实际的便利。作为一名大学生,应当具备较强的举一反三的能力,而在这些实习中,恰有不少单证的填写是相互联系、相互依靠的。例如,投保单和保险单的基本格式具有较大的相似性。两者都需要填写被保险人、唛头、货物描述、数量与包装、保险费率、保费等等。因此,我们应当举一反三,利用诸多单证格式和填写原理类似这一特点,将各类单证的填制和审核紧密联系到一起。这样做无疑可以大大提高我们的学习效率。也可以使我们的实习结果相互对应,利于即使查缺补漏,保证单证记录内容的准确有效。再以商业发票为例,商业发票是出口商向进口商开立的说明货物名称、数量、价格的清单。商业发票在出口商必须提供的单据中起核心作用,其他单据均需要参照它来进行缮制。商业发票是我重点练习的一个环节,因为商业发票记载的各项内容是其他单据核心内容的重要依据。比如,发票中关于合同规定货物的各属性描述(货物价格、货物包装等等)是汇票、产地证、海运提单等贸易单据填写的参照。因此,我们还必须能够以一项单据的填写来影响到其他单据的填制。只有保证核心单据的准确、系统、完整,才能利于其他单据的制作,促进整个贸易流程顺利开展。当然,我们也必须严格注意各类单据记载内容的一致,以单单一致、单证一致来求得结汇工作的顺利进行。
在实验过程中,对合同的阅读与理解很重要,因为信用证的申请完全是依据合同制作的,在填写申请书时,有几点需要特别注意:必要事项应完整正确地记载且内容不能相互矛盾,因为银行是根据申请书的内容开出信用证的;申请书内容不能违背买卖合同上的有关条款,重要的条款需要安合同的内容填写;所要求的单证种类及格式、递送方法等应能确保开证行的债权;须合乎国家的法律和规章.在进行实验的过程之中我们充分体会到了英语的重要性.合同中的内容全是英语,信用证的全部内容以及填制也需要用英语来完成,而且我们们还需要对合同中的要件条款以及其相应的单据进行严格审核.在阅读合同的过程中,我们遇到了不小的阻力,这使我们明白,我们的英语水平还远远不足以应付日后工作中的诸多困难.因此,我们们在加强对专业课程和专业技能的学习、掌握的同时,还应该坚持不懈地学习英语,增加词汇的积累,努力提高自己的阅读水平.我认为,这次实习收获是丰富的。实习中的各类单证如信用证、汇票、海运提单、商业发票等等都是我们专业知识的凝聚和承载。因此,认真地履行实习要求,努力完成实习,不仅有利于我们巩固本学期所学到的国际贸易实务和国际结算的专业知识,更利于我们预先观察日后工作中的主要内容、方法以及各种困难,利于我们察觉到自身存在的不足和缺陷,以便我们更好地进行学习和工作,利于我们更快地把所思所学转化为实践动手的能力,把专业知识和技能转变成工作能力和实际经验。
综上所述,通过这次实习,我掌握了很多日后工作所需的基本技能,检验了平时所学习的基础知识,衡量了个人的能力和水平,发觉了自身存在的不足和缺点。这于我来说无疑是受益匪浅的。我相信,这次实习让我获得的经验、心得会促进我在以后的学习、工作中寻找到合理的方法和正确的方向。
第三篇:国际结算实验报告
国际结算是对国际间债权债务进行了结和清算的一种经济行为。国际商品贸易、服务贸易、非贸易贷款融资、黄金和外汇买卖、私人和团体汇款以及其他经济、文化、科技事业的交往必然要产生国与国之间的货币收付行为与此同时也就发生了国际间债权债务关系。国际结算就是运用一定的金融工具如汇票、本票、支票等;采取一定的方式像汇付、托收、信用证等;通过一定的媒介机构,银行或其他金融机构等。进行国与国之间的货币收支行为,从而使国际间债权债务得以清偿。
通过世格外贸单证教学系统初步学会了信用证开征申请书的制作、信用证的审核、汇票的制作以及信用证的修改和单据的审核。
1、根据合同材料填写开证申请书(样本见附件)
这部分比较简单,就注意TO、Applicant、Beneficiary 后面填什么。信用证开证申请书是有买方申请,固Applicant 就填进口商的公司名称及详细地址;TO后面应填进口地银行,合同里没明确是什么银行,一般就填中国银行当地的分行;Beneficiary 后填出口商的公司名称及详细地址。其他的细节方面就仔细看合同,是否允许转运与分装、需要哪些单据及单据的份数等等,都要一一在合同里找到。
2、根据提供的外销合同对信用证进行审核并提出改证要求(样本见附件)
审核信用证的通常原则是:信用证的条款规定比合同条款严格时,应当作为信用证中存在的问题提出修改(当然,在实际业务中主要是以是否影响出口商安全收汇和顺利履行合同义务为前提);而当信用证的规定比合同条款宽松时,往往可不要求修改。审核信用证的基本要点如下:
信用证本身的审核:(1)信用证性质:信用证是否是不可撤销的;(2)适用惯例:信用证是否申明所使用的国际惯例规则,如:“THIS CREDIT IS SUBJECT TO THE UNIFORM CUSTOMS AND PRACTICE FOR DOCUMENTARY CREDITS 1993 REVISION ICC PUBLICATION NO.500”(3)信用证的有效性:检查信用证上是否存在限制生效及其他保留条款.(4)信用证的当事人:如果开征行所在国家或地区政局不稳或者开证行本身资信较差,可要求进口商通过通知银行或出口商可以接受的其他银行对信用证加具保兑。对于开证申请人和受益人的名称及地址要仔细加以核对。(5)信用证到期日和到期地点:信用证的到期日应该符合买卖合同的规定,一般为货物装运后15天或者21天,到期的地点一定要规定在出口商所在地以便做到及时交单。
专项审核:
(1)信用证金额、币种、付款期限规定是否与合同一致。(2)商品名称、货号、规格、数量规定是否与合同一致。(3)信用证中的装运条款包括转运期限、装运港、卸货港、分批转运之规定是否与合同一致。(4)对信用证项下要求受益人提交议付的单据通常包括:商业发票、保险单、海运提单、装箱单、原产地证明、检验证书以及其他证明文件,要注意单据由谁出具、能否出局,信用证对单据是否有特殊要求,单据的规定是否与合同条款一致,前后是否有矛盾等等。
3、汇票的制作
在出口贸易中通常使用的是跟单汇票,所谓信用证下结算要求的“单,证一致” “单,单一致”,就包括信用证和其它有关单据同汇票的一致。制作汇票的重点:
1.必须申明出票依据;在L/C方式下出具汇票,要标明开证行,L/C号码及开证日期。在托收方式下要标明所依据的销售合同号码。出票依据是出票的主要项目,不可遗漏。
2.必须标明汇票的付款期限;是即期,还是远期。
3.必须正确填写付款人;在L/C方式下,要按照信用证要求填写,即L/C中指定的DRAWEE的栏目,如果未直接标明,则填写开证行为付款人。托收方式下,付款人一般为进口商。
4.受款人一般要填写银行;L/C中的受款人通常为议付行,托收项下为托收行。
5.汇票必须一式两份;两份性质相同,只是出于防止遗失,一份流转后,另一份自动失效。
4、信用证的修改(样本见附件)
如果受益人或银行在审证中发现信用证条款不能接受,或有与合同不符之处,或有不完整的条款,受益人可以要求开证人修改信用证。
信用证修改的基本格式: 首先,感谢对方开来信用证;然后列明不符点,并说明如何修改,修改要求尽可能一次性具体明确提出,一可以节约时间,二可以减少费用。最后感谢对方合作,希望早日收到信用证修改书。
信用证修改函应该准确表达有明确清晰的结构,不宜冗长,语言上不宜有错误。
5、单据的审核
所谓信用证下结算要求的“单证一致” “单单一致”,就包括信用证和其它有关单据的一致,这种严格相符就要求受益人对单据进行审核。其他单据就包括合同,发票,提单等。
审核发票中商品品名和规格,货款的大小写等与信用证是否相符;合同中保险条款,是否可以分装转运等是否与信用证相符;提单的装船日期与信用证是否相符。
关于本次实习中各类单据的操作和填制,我自己总结如下:
1、认真阅读手中的已知条件:如信用证、商业发票、合同协议等等,并从中提取出填制单据所需的关键、有效的基本内容:如进出口双方的名称、贸易方式、合同金额、货物描述、起运港和目的港等等。这些都将在填写单据时用到。
2、根据从已知条件获取的各项信息对单据的空白处进行填写。在这个过程中我们一定要保证各个单据填写的内容与已知条件中的描述一致。因为在信用证项下只有单单一致、单证一致才能顺利结汇。
3、根据已知条件中的内容对单据的填写工作进行精确、严格地审核认真审查各单据之间记录的内容是否一致是否相互照应。精确谨慎的审核工作是确保单单一致、单证一致的重要环节,这是实习过程中必不可少的,也是我们在日后工作中需要特别注意的一点。
第四篇:上机实验报告格式
请各位同学按照下列格式写:否则按照0分记
上机实验报告格式
Matlab学习第?次上机实验报告(第?次)
姓名:???班级:???上机时间:??????
1.上机内容
2.建模及算法分析
3.程序
4.小结
5.参考文献
将文档发到我的邮箱里面
learn_matlab@163.com
第五篇:上机实验报告
一. 题目1. 建立一个学生档案,内容包括学号,姓名,年龄,性别,数学,物理和英语3门功课成绩。要求实现以下功能:1)数据输入;2)查询某个学生的成绩;3)按平均排列输出;4)统计某门课各分数段人数;5)删除某个学生记录;2. 编程实现对二位数进行加,减,乘运算,每运行一次程序做10道题,完成后给出成绩(每题10分)。二. 设计思想和模块划分1.1.先定义所需要的条件,例如,姓名,学号,性别,三门功课的成绩,平均分等。2.输入姓名,学号,性别,年龄,三门功课的成绩后,就输出相应的姓名,学号,性别,年龄,三门功课的成绩。3.打印表头;4.在求出平均分,并打印出平均分。5.在查找学生,并打印出学生的相关资料;并按照平均分的高低排列;6.在统计学生各科成绩是否》=60分,如果是就是通过,否就是没通过,最后打印出最后的结果。7.删除学生,选中删除的学生,如果确定要,那么该学生的一切记录就变为0;2.1.随机调用函数,产生两个其值为10到99的随机整数分别放在c,d中用作运算时的运算数。2.随机调用函数,产生一个值为1到3 的随机整数放入b中,用来选择不同的运算。根据b的值选择不同的运算。当b=1时,去进行c+d的运算练习;当b=2 时,去进行c-d的运算练习;当b=3时,去进行c×d的运算练习。每完成一个算题就给出是否正确的信息。3.根据答案正确与否统计。正确时,显示’right’;错误时,显示’wrong’。4.步骤1.2.3.4.重复10次。5.输出学生成绩。三. 运行结果1.Input the 1 student :num:03name:wfage:18sex:fmath:98phy:75eng:65Input the 2 student :num:06name:scage:17sex:fmath:78phy:45eng:65Input the 3 student :num:09name:ytage:17sex:mmath:69phy:75eng:501.readin 2.finds 3.del 4.tj 5.exit1-----------------------------table----num name age sex math phy eng ave------3 wf 18 f 98.0 75.0 65.0 79.3------9 yt 17 m 69.0 75.0 50.0 64.7-------6 sc 17 f 78.0 45.0 65.0 62.7-------1.readin 2.finds 3.del 4.tj 5.exit2Into number:3---num name age sex math phy eng ave---3 wf 18 f 98.0 75.0 65.0 79.3----1.readin 2.finds 3.del 4.tj 5.exit3Into number:6---num name age sex math phy eng ave---6 sc 17 f 78.0 45.0 65.0 62.6---true? Y/Ny1----------------table------------------num name age sex math phy eng ave----3 wf 18 f 98.0 75.0 65.0 79.3-----9 yt 17 m 69.0 75.0 50.0 64.7-----0 0 0 f 0.0 0.0 0.0 0.0-----1.readin 2.finds 3.del 4.tj 5.exit4 1.input the math 2.input the phy 3.input the eng 1math: pass num is :3 no pass num is :02.32+82=114right!97*15=1455right!99-58=41right!76-66=10right!58+13=71right!37+49=86right!99+52=151right!49*69=5462wrong!73-38=31wrong!86+34=120right!mark is 80四. 主要错误改正方法1.在本题的编写过程中常出现begin 和end 不配对,只要始它们的个数相同就可以了,就可以了。在程序中常出现的’unknown identifier’没有定义的错误,只要在程序前加上定义,就可以了。还有就是type mismatch’的类型不匹配,只要根据前后内容,重新定义,就可以了。2.在本题编写中,题目要求是两个两位数运算,如果写成c:=random(100)在运行过程中,就会出现一位数运算,只要把它写成c:=random(90)+10,就可以了。五. 实习小结1.第一题的程序编写比较复杂,需要较多的定义,因而在后面的程序部分,就常出现标识符重复,而导致的类型不匹配。还有就是每个部分编好后,上下不能连接,而无法调用。2.第二题较第一题简单,和书上的例题类似,所以,比较简单,但从中也出现一些不问题。以上两大题中出现的问题,要在同学的帮助下,才能完成。总的来说两题程序比较困难六. 程序清单1.program twins;const m=3;n=3;typestudent=recordnum:integer;name:string[3];age:integer;sex:char;s:array[1..n] of real;math,eng,phy:real;ave:real;end;sarr=array[1..m] of student;ta=array [1..m] of student;f=string[6];varstu:sarr;ct:ta;k,d:integer;procedure readin(var stu:sarr);const wrong='0<=data<=100 ,again!';var j,i:integer;a:student;beginwriteln;writeln('Input ',m,' num name sex math phy eng',' of student.');for j:=1 to m dobeginwriteln;writeln('Input the ',j,' student :');with a dobeginwrite('num:');readln(num);write('name:');readln(name);write('age:');readln(age);write('sex:');readln(sex);while(sex<>'m')and(sex<>'f')dobeginwrite('sex:');readln(sex)end;for i:=1 to n do begincase i of1:begin write('math:');readln(s[i]);while(s[i]<0)or(s[i]>100)dobeginwriteln(wrong);write('math:');readln(s[i]);end;end;2:begin write('phy:');readln(s[i]);while(s[i]<0)or(s[i]>100)dobeginwriteln(wrong);write('phy:');readln(s[i]);end;end;3:begin write('eng:');readln(s[i]);while(s[i]<0)or(s[i]>100)dobeginwriteln(wrong);write('eng:');readln(s[i]);end;end;end;end;stu[j]:=a;end;writeln;end;end;procedure ave(var stu:sarr);var j,i:integer;k:real;beginfor j:=1 to m dobegink:=0;with stu[j] dobeginfor i:=1 to n do k:=k+s[i];ave:=k/nend;end;end;procedure px(var stu:sarr);var tm:ta;j,i,p:integer;beginfor j:=1 to m dobeginp:=j;for i:=j+1 to m doif stu[i].ave>stu[p].ave then p:=i;tm[1]:=stu[p];stu[p]:=stu[j];stu[j]:=tm[1];end;end;procedure head(ct:ta);var i:integer;beginwrite(' ');for i:=1 to 72 do write('-');writeln;write('',' num':4,' ','name':9,' ','age':8,' ','sex':5,' ','math':6,' ','phy':9,' ','eng':8,' ');writeln('ave':6,' ');write(' ');for i:=1 to 72 do write('-');writeln;with ct[1] dobeginwrite('',num:7,' ',name:8,' ',age:8,' ',sex:5,' ');for i:=1 to n do write(s[i]:7,' ');write(ave:10,' ');writeln;end;write(' ');for i:=1 to 72 do write('-');writeln;end;procedure find(var stu:sarr);var n,i:integer;u:boolean;beginu:=true;while u dobeginwrite('Into number:');readln(n);for i:=1 to m dobeginif stu[i].num=n then beginct[1]:=stu[i];u:=false;d:=iend;end;end;end;procedure del(var stu:sarr);var i:integer;b:char;beginhead(ct);write('true? Y/N');readln(b);if b='y' then begin write('1');with stu[d] dobeginnum:=0;name:='0';age:=0;sex:='f';for i:=1 to n do s[i]:=0;ave:=0end;endelseend;procedure tj(var stu:sarr);var w1,q1,q2,num,j:integer;h1,h2,h3:boolean;beginh1:=false;h2:=false;h3:=false;q1:=0;q2:=0;writeln(' ':30,'1.input the math 2.input the phy 3.input the eng ');readln(w1);case w1 of1:h1:=true;2:h2:=true;3:h3:=true;end;if h1 thenbeginbeginfor j:=1 to m dowith stu[j] doif stu[j].math>=60 thenq1:=q1+1elseq2:=q2+1;writeln('math:');end;if h2 thenbeginbeginfor j:=1 to m dowith stu[j] doif stu[j].phy>=60 thenq1:=q1+1elseq2:=q2+1;writeln('phy:');end;if h3 thenbeginbeginfor j:=1 to m dowith stu[j] doif stu[j].eng>=60 thenq1:=q1+1elseq2:=q2+1;writeln('eng:');end;end;end;end;writeln(' ':5,'pass num is :',q1);writeln(' ':5,'no pass num is :',q2);end;procedure head1(var stu:sarr);var j,i:integer;beginwriteln('----------------table--------------':60);writeln;write(' ');for i:=1 to 72 do write('-');writeln;write('',' num':4,' ','name':9,' ','age':8,' ','sex':5,' ','math':6,' ','phy':9,' ','eng':8,' ');writeln('ave':6,' ');write(' ');for i:=1 to 72 do write('-');writeln;for j:=1 to m do beginwith stu[j] dobeginwrite('',num:7,' ',name:8,' ',age:8,' ',sex:5,' ');for i:=1 to n do write(s[i]:7:1,' ');write(ave:10:1,' ');writeln;end;write(' ');for i:=1 to 72 do write('-');writeln;end;end;beginreadin(stu);ave(stu);k:=0;while k<>5 dobeginwriteln('1.readin 2.finds 3.del 4.tj 5.exit');read(k);readln;while(k<>1)and(k<>2)and(k<>3)and(k<>4)and(k<>5)dobeginwriteln(' mistake,please again');read(k)end;case k of1: begin px(stu);head1(stu)end;2: begin find(stu);head(ct)end;3: begin find(stu);del(stu);px(stu);head1(stu)end;4: begin tj(stu);end;5: writeln('exit!');end;end;end..2.program shadow;var a,b,c,d,e:integer;right:boolean;procedure s1;beginwriteln('right!');right:=trueend;procedure s2;beginwriteln('wrong!');right:=falseend;procedure s3(x,y:integer);var h:integer;beginwrite(x,'+',y,'=');readln(h);if h=x+y then s1else s2 end;procedure s4(x,y:integer);var h,w:integer;beginif x