intn=(int)(Math.random()*1000);
number[i]=(26);//在number数组中写入生成的随机数
System.out.println("number["+i+"]="+number[i]);
}
return(27);//返回生成的数组
}
/*
*计算给定数组的奇数的比率
*@paramint[]number 要计算的数组
*@returndouble奇数的比率
*/
doublecalculateOddRate(int[]number){
intcount= (28);//读取数组元素的个数,即要计算平均数的整数个数
doubleodd=0; //奇数计数
for(intn:
number){
if((29)){//如果n是奇数,奇数计数加1
odd++;
}
}
returnodd/count;
}
publicstaticvoidmain(String[]args){
T25t=newT25();
int[]number=t.createArray(100);
doubleoddRate=t.calculateOddRate(number);
System.out.println("奇数为:
"+oddRate*100+"%");
System.out.println("偶数为:
"+(1-oddRate)*100+"%");
}
}
运行结果:
number[0]=907
…..//此处省略98行
number[99]=598
奇数为:
52.0%
偶数为:
48.0%
程序二:
以下程序是通过JDBC读取数据表Student的基本操作,认真阅读程序和运行结果,补全程序的空白处。
表:
Students
ID
NAME
GENDER
2
name02
女
4
name04
女
部分程序如下
classStudent{
privateintid;
privateStringname;
privateStringgender;
publicStudent(intid,Stringname,Stringgender){
super();
this.id=id;
this.name=name;
this.gender=gender;
}
…………//此处省略n行
publicStringtoString(){
return"Student[id="+id+",name="+name+",gender="+gender+"]";
}
}
publicclassT30{
/*取得数据库连接*/
ConnectiongetConnection(){
……//此处省略n行
}
/*查询数据库中所有学生的数据,将一条学生信息记录转化成一个Studetn对象,
*多个记录生成多个Student,将生成的对象放入到List中,一起返回到*/
ListqueryAllStudent(){
ListstuList=(30);//创建可以存储Student的List
Connectionconn=null;
Statementst=null;
ResultSetrs=null;
try{
conn=getConnection();
st=(31).createStatement();//通过连接创建statement
rs=st.executeQuery("SELECTID,NAME,GENDERFROMStudents");
while((32)){//结果是否有记录
Studentstu=newStudent(
rs.getInt("ID"),
rs.getString("NAME"),
rs.getString("GENDER"));
(33);//把stu对象加入到stuList中
}
}catch(SQLExceptione){
e.printStackTrace();
}finally{
try{
rs.close();
st.close();
conn.close();
}catch(SQLExceptione){}
}
returnstuList;
}
/*显示List中的学生*/
voidshowStudent(ListstuList){
for(______(34)_______s:
stuList){//指明s的类型
System.out.println(s);
}
}
publicstaticvoidmain(String[]args){
T30demo=newT30();
ListstuList=demo.queryAllStudent();
demo.showStudent(stuList);
}
}
运行结果
Student[id=2,name=Name02,gender=女]
Student[id=4,name=Name04,gender=女]
得分
阅卷人
四、基本代码编写(共12分)
35、(5分)编写一个main方法,计算如下数组元素的平均值
doublesource[]={2,5,9,10,3};
36、(7分)文件名解析器,仔细阅读如下代码和运行结果,完成WindowsFileNameParse类的代码,执行后得到给定的运行结果。
interfaceFileNameParse{
voidshowSourceFileName();
StringgetDiskName();
StringgetFullFileName();
StringgetFileName();
StringgetExtendName();
StringgetDir();
}
classWindowsFileNameParseimplementsFileNameParse{
privateStringfileName;
WindowsFileNameParse(StringfileName){
this.fileName=fileName;
}
publicvoidshowSourceFileName(){
System.out.println("解析文件名:
"+this.fileName);
}
//////////////////////////////////////////////////////////////////////////////////////
//////////请完成此类的中其他方法的代码////////////////////////
}
publicclassT36{
publicstaticvoidmain(String[]args){
FileNameParsefp=newWindowsFileNameParse("d:
/MyDocuments/MyJob/Pages/2012-2013-2/PageA/src/T37.java");
fp.showSourceFileName();
System.out.println("盘符:
"+fp.getDiskName());
System.out.println("文件全名(带扩展名):
"+fp.getFullFileName());
System.out.println("文件名(不带扩展名):
"+fp.getFileName());
System.out.println("文件扩展名:
"+fp.getExtendName());
System.out.println("路径(不带盘符):
"+fp.getDir());
}
}
运行结果
解析文件名:
d:
/MyDocuments/MyJob/Pages/2012-2013-2/PageA/src/T37.java
盘符:
d
文件全名(带扩展名):
T37.java
文件名(不带扩展名):
T37
文件扩展名:
java
路径(不带盘符):
/MyDocuments/MyJob/Pages/2012-2013-2/PageA/src
附String类部分的apidoc
publicintindexOf(Stringstr)
Returnstheindexwithinthisstringofthefirstoccurrenceofthespecifiedsubstring.
Examples:
"abca".indexOf("a")return0
Parameters:
str-thesubstringtosearchfor.
Returns:
theindexofthefirstoccurrenceofthespecifiedsubstring,or-1ifthereisnosuchoccurrence.
publicintlastIndexOf(Stringstr)
Returnstheindexwithinthisstringofthelastoccurrenceofthespecifiedsubstring.Thelastoccurrenceoftheemptystring""isconsideredtooccurattheindexvaluethis.length().
Examples:
"abca".lastIndexOf("a")return3
Parameters:
str-thesubstringtosearchfor.
Returns:
theindexofthelastoccurrenceofthespecifiedsubstring,or-1ifthereisnosuchoccurrence.
publicStringsubstring(intbeginIndex)
Returnsanewstringthatisasubstringofthisstring.Thesubstringbeginswiththecharacteratthespecifiedindexandextendstotheendofthisstring.
Examples:
"Harbison".substring(3)returns"bison"
"emptiness".substring(9)returns""(anemptystring)
Parameters:
beginIndex-thebeginningindex,inclusive.
Returns:
thespecifiedsubstring.
publicStringsubstring(intbeginIndex,intendIndex)
Returnsanewstringthatisasubstringofthisstring.ThesubstringbeginsatthespecifiedbeginIndexandextendstothecharacteratindexendIndex-1.ThusthelengthofthesubstringisendIndex-beginIndex.
Examples:
"hamburger".substring(4,8)returns"urge"
"smiles".substring(1,5)returns"mile"
Parameters:
beginIndex-thebeginningindex,inclusive.
endIndex-theendingindex,exclusive.
Returns:
thespecifiedsubstring.
得分
阅卷人
五、设计并编程(共8分)
37、仔细阅读给定的代码和程序运行结果,完方法size()、del()代码编写。
MyList类是可以存储字符串对象的、基于链表的List的简单实现
classMyListNode{
Stringelement;
MyListNodenextNode=null;
MyListNode(Stringelement){
this.element=element;
}
}
classMyList{
privateMyListNodefirstNode=null;
publicvoidadd(Stringelement){ //加入字符串到MyList中
MyListNodenode=newMyListNode(element);
if(firstNode==null){
firstNode=node;
}else{
MyListNodelastNode=firstNode;
while(lastNode.nextNode!
=null){
lastNode=lastNode.nextNode;
}
lastNode.nextNode=node;
}
}
publicintsize(){//返回MyList中节点数
//////////////////完成此方法代码////////////////
}
publicString[]toArray()