在哪里可以下载Uva,Spoj,sgu的题库?编程的
OnlineJudge简称OJ,意思是在线评测平台,多指信息学在线评测平台。知名的OJ有:URAL,SPOJ,vijos,USACO,sgu,pku(poj),zju(toj),tju,uva等。著名OJ网址:北京大学pku:
(mostEnglish)美国官方USACO:
(America,English)高效信息学评测系统vijos:
(维护中)南开大学nkpc:
(mostEnglish)首先是国内比较老牌的知名OJ:PKU/POJ(PekingUniversityJudgeOnlineForACM/ICpc)地址:
介绍:北京大学的题库,我主要在做的一个.题目数量很多,OJ的各项功能也很完善,而且还提供免费的OJ系统下载,可以利用提供的系统自己搭建OJ.题目数量很多,有几千道,但水题也很多.关于这一点,因为题目数量大,所以水题自然就多,但这不说明PKU的题目质量不高.PKU的难题还是不少的,而且做不做水题还是要由做题人自己决定的,和OJ无关.推荐程度(最高10):8推荐做法:如果是初学者或者仅仅想提高变成准确性,那么按照AC率做,保证1Y率;如果是有一定水平的OIer,可以每页完成40~50题;如果是大牛,那么尽量做吧;如果想专门训练某个项目,可以去网上搜pku题目分类,个人觉得pku里的dp题和数学题比较多.ZJU/ZOJ(ZhejiangUniversityOnlineJudge)地址:
介绍:浙江大学的题库,国内起步最早的几个OJ之一.题目数量也接近2000.我没有太多的做zju的题目,所以不好说题目质量如何.OJ系统的友好性不如pku,但功能并不差.应该可以作为pku的替代品.推荐程度:7推荐做法:无(可以参考pku做法)然后是一些不太知名的或比较新的:Vijos(VelociousInformaticsJudgeOnlineSystem)地址:
/介绍:说到现在的OJ,就不得不提Vijos.Vijos是VivianSnow(就是湖南师大附中的刘康,个人主页是
,现在似乎上不去了=.=)搞的一个Judge系统,本来是作为创新大赛作品的,后来就搞起来了,现在人气很旺.但是Vijos的各种事情很多,而且服务器不稳定,速度慢不说还时不时的关闭.关于Vijos的事情大家可以参考Dragon.Dai在Vijos的1周岁时候写下的这篇(
),这里不再赘述.Vijos上所有人都可以上传自己的题目,虽然增加了很多灵活性,但由此导致的是题目水平参差不齐.而且上传题目的人在选择题目难度的时候很难做出同样的判断,都有自己的个人见解,所以本来题目难度是很好的一个设计,现在却成了鸡肋.推荐程度:5推荐做法:用来测试竞赛原题,另外可以做一做AC率较低的题目.不推荐做大量的Vijos题目(yours牛别打我...).TJU/TOJ(TianjinUniversityOnlineJudge)地址:
介绍:可能大家都以为是同济的题库了吧=.=,其实这个是天津大学的,因为笔者是天津人,所以对这个OJ有独特的感情...虽然没怎么做过.总体来说比zoj稍差,题目质量不确定(我说了我没怎么做过...),一般我都用来做Contests.推荐程度:5推荐做法:无,可以做做Contests.注意是OnlineContests而不是VirtualContests,Virtual那个...打开就能知道,是利用TOJ自己的题库出Contests...其实这个设计很新颖,所有人都可以出测试.适合队内搞测验...NKOJ(NankaiOnlineJudge)地址:
/介绍:这个是天津市南开大学的OJ,想必大多数人都不知道吧?在看下面的介绍之前,你可以先上去看看,体会一下.你一定会发现,通过大量Ajax技术的应用,加上清新的界面,你会感到十分舒适.而且nkoj似乎有一个功能是自己不出现在RankList和Status里面,这个功能很贴心.题目是nkoj最大的弱点,数量不大,质量一般.不过因为是中英文题目夹杂且中文题目数量不少(和pku比),所以想做中文题的除了Vijos也可以来这里看看.其实nkoj比vijos要漂亮的多,速度比vijos稍快,稳定性...应该比vijos好不少吧.推荐程度:5推荐做法:做中文题.rqnoj(RenQingNetOnlineJudge,任青网络信息学奥赛(OI)在线判题系统)地址:
介绍:一个新兴的OJ,题目质量一般,数量也不多.除了去刷Rank,没有什么值得做的.推荐程度:2推荐做法:无.接下来说一下国外的OJ:SGU(SaratovStateUniversityOnlineContester)地址:
介绍:sgu是俄罗斯斯坦福州立大学(大概是这个名字)的OJ,很老牌了.题目数量很少,但题题精炼,每做一道题都会让你的编程水平上升.在有一定编程水平之后可以试着做做,要争取做出每一道题.如果sgu能全部AC的话...那这个人不是抄袭就是神牛...注意status需要通过左边的"statusonline"链接来看,而且sgu速度稍慢并且不太稳定.总之是非常特别以及及其应该推荐的OJ.推荐程度:9推荐做法:AC每一道题,可以按照ACRate来做.Ural(TimusOnlineJudge)地址:
介绍:Ural是UralStateUniversity的一个OJ,题目不是很多,但都是原创,而且比较经典.如果sgu做着费劲,那么试试Ural吧.推荐程度:8推荐做法:试着做做每一道题吧,可以按照ACRate来.
(特急)《Java程序设计》理论题库—判断题(要准确答案)
异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。
摘要:《Java程序员面试指南》第7章异常处理及内存管理,本章讲述的是要想成功地成为一名合格的Java程序员,掌握好异常处理机制是编写大型程序必不可少的基本功。本节为大家介绍异常的处理方式之三:throw。
标签:throwJava程序员Java程序员面试指南
Oracle帮您准确洞察各个物流环节
7.4异常的处理方式之三:throw(1)
异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。本节主要讲解用throw抛出异常的方式,以及如何由try-catch来接收所抛出的异常。
当一个方法发生异常时可以通过throw关键字来抛出异常,把异常抛给它上一级的调用者,抛出的可以是异常引用,也可以是异常对象,它的语法格式如下:
throw异常对象名;或者
thrownew异常类名();一条throw语句一旦被执行,程序立即转入相应的异常处理程序段,它后面的语句就不再执行了(这一点类似于return语句),而且它所在的方法也不再返回有意义的值。在一个方法中,throw语句可以有多条,但每一次最多只能执行其中的一条。在一般情况下,throw语句都会写在判断语句块中,以避免每次都执行该语句。
【代码剖析】下面来看一个例子,也许从中你会明白点什么。具体代码如下:
publicclasscatchThows{staticintx;publicstaticvoidmain(Stringargv[]){doublea=Math.random()*10;if(x>0)System.out.println(a/x);elsethrownewException();//抛出异常}publicvoidsetX(intx){this.x=x;}}运行结果如图7.1所示。
(点击查看大图)图7.1运行结果
从上面的运行结果中可以看出,一个方法中如果使用throw来抛出异常,要么自己捕获它,要么声明抛出了一个异常。要声明抛出了异常,需要用throws关键字在方法的头部声明。如果我们将上面的代码修改成下面的代码,那么结果又会怎样呢?
publicclasscatchThows_1{staticintx;publicstaticvoidmain(Stringargv[]){newcatchThows().setX(0);doublea=Math.random()*10;if(x>0)System.out.println(a/x);elsetry{thrownewException();//抛出异常}catch(Exceptione){System.out.println("出现异常的原因是:"+e.getMessage());}}publicvoidsetX(intx){this.x=x;}}运行结果如下:
出现异常的原因是:null还有一种抛出异常的方法是让被调用的方法表示它将不处理异常,该异常将被抛出到它的调用方法中。这点是和throws声明异常很相似的,但它们的位置是完全不同的。具体代码如下:
publicclasscatchThows_2{voidfindThows(){try{//抛出方法thrownewArithmeticException();}catch(ArithmeticExceptionae){throwae;}}publicstaticvoidmain(Stringargs[]){catchThowsct=newcatchThows();//对方法进行异常处理try{ct.findThows();}catch(ArithmeticExceptionae){System.out.println("出现异常的原因是:"+ae);}}}运行结果如下:
出现异常的原因是:java.lang.ArithmeticException
【责任编辑:云霞TEL:(010)68476606】
回书目上一节下一节
上一篇:7.3异常的处理方式之二:throws(2)下一篇:7.4异常的处理方式之三:throw(2)
·7.5内存的管理(2)
·7.4异常的处理方式之三:throw(2)
·17.3Java高级编程试题(1)
·17.1Java基础编程试题(6)
·17.1Java基础编程试题(5)
·自己动手写搜索引擎
·1.1.2编写代码(15分钟)
·1.1.1准备工作环境(10分钟)
·软件调试的艺术
·WCF编程(第2版)
参考资料:
本回答由网友推荐
C++基础编程题。
/*计算银行利息,假设活期利率1%,定期一年2%,定期两年3%,定期三年4%*/#includevoid main(){?float x;/*这个p没有用,我给删了,而且定义double的话有些浪费内存*/?int y;?printf("请输入本金\n");?scanf("%f",&x);/*c里面好像没有这个lf*/?printf("请选择存储类型:1.活期一年2.定期一年3.定期二年4.定期三年\n");?scanf("%d",&y);?switch(y)/*楼主这个选择结构没写完*/?{?case 1:printf("本息=%.3f,利润=%.3f\n",x*(0.01+1),x*0.01);break;/*这个结构中,break是必须的*/?case 2:printf("本息=%.3f,利润=%.3f\n",x*(0.02+1),x*0.02);break;?case 3:printf("本息=%.3f,利润=%.3f\n",x*(0.03+1)*(0.03+1),x*0.03+x*(1+0.03)*0.03);break;?case 4:printf("本息=%.3f,利润=%.3f\n",x*(0.04+1)*(0.04+1)*(0.04+1),x*0.04+x*(1+0.04)*0.04+x*(0.04+1)*(0.04+1)*0.04);break;?default :printf("输入错误,请重新输入");break;?}/*楼主,这个利息问题的数学公式我忘了,你自己先看一下,不对的话自己改,实在不好意思*/}/*最后,楼主,貌似你这完全是C语言哈*/
甚么网站有免费的计算机编程题或项目题带效果图的请热情朋友们告知下先谢谢了!
?url=zCXX2bQUzftcuvE31ocGx1fON9sMUnteW-zqNCJFrv2kCAXE6t8fYjpSOyQqpEARp2xnOL3gzf2ZWbiPHtcfcnS-S69R1w_IeZTPMca7d5C