67,513
社区成员
发帖
与我相关
我的任务
分享
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<title>My JSP 'MyJsp.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<head>
<script language="javascript">
<!--
function checkNum()
{
var num1=cal.num1.value;
var num2=cal.num2.value;
if(num1==""||num2=="")
{
window.alert("运算数不能为空!");
return false;
}
else
{
var msg="";
if(Math.round(num1)!=num1)
msg+="第一个数类型错误!";
if(Math.round(num2)!=num2)
msg+="第二个数类型错误!";
if(msg!="")
{
window.alert(msg);
return false;
}
}
}
-->
</script>
</head>
<body>
<%
String n1=request.getParameter("num1");
String n2=request.getParameter("num2");
String op=request.getParameter("opera");
int num1;
int num2;
char opera;
int result;//变量在这里申明
if(n1!=null&&n2!=null&&op!=null){
result=0;
num1=Integer.parseInt(n1);
num2=Integer.parseInt(n2);
opera=op.charAt(0);
switch(opera){
case '+':result=num1+num2;
break;
case '-':result=num1-num2;
break;
case '*':result=num1*num2;
break;
case '/':result=num1/num2;
break;
default:
break;
}
}
%>
<form name="cal" action="Calculator.jsp" method="post">
<h1>我的计算器</h1><br>
<hr/>
第一个数:<input type="text" name="num1"/><br/>
选择运算符:
<select name="opera">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select><br/>
第二个数:<input type="text" name="num2"/><br/>
<input type="submit" value="确定" onclick="return checkNum()"/>
</form>
<hr/>
<%
out.println(num1+" "+opera+" "+num2+" = "+result);//为什么在这里不能访问呢???????提示:The local variable opera may not have been
initialized
%>
</body>
</html>