📄 ex7_3.txt
字号:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.util.*" %>
<HTML>
<BODY>
<%
Vector vector=new Vector();
Connection con;
Statement sql;
ResultSet rs;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {}
try{
con=DriverManager.getConnection("jdbc:odbc:grade","","");
sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=sql.executeQuery("SELECT * FROM students");
rs.last();
int number=rs.getRow(); //获取表中记录总数
for(int i=1;i<=number;i++) //向vector中添加number个Integer型的对象
{
vector.add(new Integer(i));
}
double sum=0; //累计抽取的4个学生的数学成绩和
int shum=4; //shum表示抽取4个学生的成绩
int k=shum;
out.print("<Table Border>"); //输出表头
out.print("<TR>");
out.print("<TH width=100>"+"学号");
out.print("<TH width=100>"+"姓名");
out.print("<TH width=50>"+"数学");
out.print("</TR>");
while(shum>0) //输出抽取的4条记录
{
int i=(int)(Math.random()*vector.size());//在vector中,产生随机数
int index=((Integer)vector.elementAt(i)).intValue();//在向量//vector中随机抽取一个元素
rs.absolute(index); //游标移到这一行
out.print("<TR>");
out.print("<TD >"+rs.getString(1)+"</TD>");
out.print("<TD >"+rs.getString(2)+"</TD>");
int math=rs.getInt(3); //获取该行数学成绩字段的值
out.print("<TD >"+math+"</TD>");
out.print("</TR>");
sum=sum+math;
shum--;
vector.removeElementAt(i); //将抽取过的元素从向量中删除
}
out.print("</Table>");
out.print("<br>平均成绩是:"+sum/k);
con.close();
}
catch(SQLException e1) {}
%>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -