应改为“catch(char*s)”。 (2)应改为“cateh(inti)”。 (3)应改为“catch(…)”。 【解析】本题中第1个标识前的异常抛出语句为“throw("error");”,其中的类型为字符串。所以对应的异常捕捉语句catch中应该符合这个类型,而程序中给出的语句“catch(chars)”是字符型的,所以第1处的语句修改为“catch(char*S)”。第2个标识前的异常抛出语句为“throw((int)0);”,其中的类型为int。对应的异常捕捉语句catch中应该符合这个类型,所以补充catch子句中的类型,否则如果找不到匹配的catch块,系统就会调用一个系统函数,使程序终止运行。即第2处的语句修改为“catch(inti)”。如果在catch子句中没有指定异常信息的类型,那么就用删节号“…”表示它可以捕捉任何类型的异常信息,即修改为“catch(…)”。
第1题:
( 27 )为计算 1+3+5+ …… +99 的值,某人编程如下
k=1
s=0
While k<=99
k=k+2 : s=s+k
Wend
Print s
在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是( )
A ) While … Wend 循环语句错误,应改为 For k=1 To 99 … Next k
B ) 循环条件错误,应改为 Whlie k<99
C ) 循环前的赋值语句 k=1 错误,应改为 k=0
D ) 循环中两条赋值语句的顺序错误,应改为 s=s+k : k=k+2
第2题:
下列域名书写正确的是( )。
A._cateh.gov.cn
B.catch.gov.cn
C.catch,edu,cn
D.catch..gov,cnl
第3题:
下列程序的输出结果是( )。 Public class Test{ Public static void main(String[]args){ int[]array=(2,4,6,8,10); int size=6; int result=-l: try{ for(int i=0;i<sizeresult= =-1:) if(array[i]= =20)result=i: } catch(ArithmeticException e){ System.out.println("Catch---1"); } catch(ArraylndexOutOfBoundsException e){ System.out.println("Catch---2"): } catch(Exception e){ System.out.println("Catch---3"): } }
A.Catch---1
B.Catch---2
C.Catch---3
D.以上都不对
第4题:
下面程序的输出结果是 public class Test{ public static void main(String[] args){ int[]array={2,4,6,8,10}; int size=6; int result=-1: try{ for(int i=0;i<size&&result==-1;i++) if(array[i]==20)result=i; }catch(ArithmeticException e){ System.out.println("Catch---1"); }catch(ArrayIndexOutOfBoundsException e){ System.out.println("Catch---2"); }catch(Exception e){ System.out.println("Catch---3"); } } }
A.Catch---1
B.Catch一--2
C.Catch---3
D.以下都不对
第5题:
以下程序拟实现计算s=1+2*2+3*3+…+n*n+…,直到s>;1000为止。
程序运行后,不能得到正确结果,以下修改方案正确的是( )。
A.把while(s>lOOO);改为while(s<=1000);
B.把s=1;改为s=0;
C.把n=1;改为n=0;
D.把n=n+1;改为n=n$n;