下述代码中,statement应该如何写才能使得程序输出1 int t = 1; try { ...... throw t; ...... } catch (statement ) { cout << i; }A.int iB.float iC.unsigned int iD.exception i

题目

下述代码中,statement应该如何写才能使得程序输出1 int t = 1; try { ...... throw t; ...... } catch (statement ) { cout << i; }

A.int i

B.float i

C.unsigned int i

D.exception i


相似考题
更多“下述代码中,statement应该如何写才能使得程序输出1 int t = 1; try { ...... throw t; ...... } catch (statement ) { cout << i; }”相关问题
  • 第1题:

    ( 28 )阅读下面程序

    1 public class Try extends Thread{

    2 public static void main(String args[ ]){

    3 Try t = new Try( );

    4 t.start( );

    5 }

    6

    7 public void run( int j){

    8 int i = 0;

    9 while(i<5){

    10 System.out.println(" 祝你成功! ");

    11 i++;

    12 }

    13 }

    14 }

    该程序要求打印 5 行 “ 祝你成功! ” ,必须改正程序中的某行代码,程序才能完成。选择正确的修改是

    A )将第 1 行的 extends Thread 改为 implements Runnable

    B )将第 3 行的 new Try() 改为 new Thread()

    C )将第 4 行 t.start() 改为 start(t)

    D )将第 7 行的 public void run( int j) 改为 public void run()


    正确答案:D

  • 第2题:

    若有以下程序: include using namespace std; template T min(T x,T y) {i

    若有以下程序:

    include <iostream>

    using namespace std;

    template <class T>

    T min(T x,T y)

    {

    if(x<y)

    return x;

    else

    return y;

    }

    int main()

    {

    int n1=2,n2=10;

    double d1=1.5;d2=5.6;

    cout<<min(n1,n2)<<",";

    cout<<min(d2,d2)<<end1;

    return 0;

    }

    程序运行后的输出结果是【 】。


    正确答案:21.5
    2,1.5 解析:上述程序中主函数的作用是从函数变量的两个值中挑选小的。在 main()中有两次调用min()函数,第1次以两个整数调用该函数,第2次以两个双精度数调用该函数。程序将min()设计成函数模板。当执行“min(n1,n2)”时,便建立了该函数模板的一个实例,这个过程称为函数模板实例化。生成的模板函数中两个变量的类型是int,int代替了占位符T,这个模板函数可以比较两个整数的大小。同理,当执行“min(d1,d2)”时,创建了该函数模板的第2个实例。

  • 第3题:

    以下程序的输出结果是includevoid reverse(int a[],int n){ int i ,t; for(i=0;

    以下程序的输出结果是 #include<iostream.h> void reverse(int a[],int n) { int i ,t; for(i=0;<n/2;i++) { t=a[i]=a[i] =a[n-1-i];a[n-1-i]=t;} } void main() { int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0; reverse(b,8); for(i=6;i<10;i++)s+=b[i]; cout<<s; }

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:在main函数中,调用reverse函数将b数组中的前8个成员进行互置,执行完毕后,b数组中的成员为{8,7,6,5,4,3,2,l,9,10},在执行for循环结构后,将b[6],b[7]……b[9]的值相加,结果为l+2+9+10=22。注意:在计算累加和时,应将累加变量赋值为零。

  • 第4题:

    下列程序的输出结果是______。 include template T max(T x[],int n) { int

    下列程序的输出结果是______。

    include<iostream.h>

    template<class T>

    T max(T x[],int n)

    {

    int i;

    T maxv=x[0];

    for(i=1;i<n;i++)

    if(maxv<x[i])

    maxv=x[i];

    return maxv;

    }

    void main( )

    {

    int a[]={3,2,7,6,8,9};

    double b[]={1.2,3.4,2.5,7.3,6.8};

    cout<<max(a,4)<<","<<max(b,3)<<endl;

    }


    正确答案:73.4
    7,3.4 解析:函数的功能是求出数组中指定范围的元素中的最大值。所以在a数组中前四个数据中最大值为7,数组b中前3个元素中最大值为3.4。

  • 第5题:

    阅读下面程序 1 public class Try extends Thread{ 2 public static void main(String args[]){ 3 Try t=new Try(); 4 t.start(); 5 } 6 7 public void run(int j){ 8 int i=0; 9 while(i<5){ 10 System.out.println(“祝你成功!”); 11 i++; 12 } 13 } 14 } 该程序要求打印5行“祝你成功!”,必须改正程序中的某行代码,程序才能完成。选择正确的修改是

    A.将第1行的extends Thread改为implements Runnable

    B.将第3行的new Try()改为new Thread()

    C.将第4行t.start()改为start(t)

    D.将第7行的public void run(int j)改为public void run()


    正确答案:D
    解析:本题考查线程的创建。Java语言中提供两种创建线程的方法,一种是通过实现Runnable接口来创建线程,另一种是通过继承Thread类创建线程。显然,题目中的程序是使用第二种方法来创建线程。Thread类中定义了run()方法,所以通过继承 Thread类来创建线程时还要重写Thread类中的run()方法。而run()方法的定义如下: public void run(){ }
    题目中的代码比较简单,就是创建了一个线程,这个线程完成的操作就是打印5行“祝你成功”。仔细阅读程序,不难发现第7行有错。在run()方法的定义中是没有参数的,而题目程序中的run方法却带有一个参数。因此,要把第7行的代码改为“public void run()”。因此,本题的正确答案是D。

  • 第6题:

    以下程序的输出结果是 include void reverse(int a[ ] ,int n) { int i,t;for(i=0

    以下程序的输出结果是

    #include<iostream.h>

    void reverse(int a[ ] ,int n)

    { int i,t;

    for(i=0;i<n/2;i++)

    {t=a[i] ;a[i] =a[n-1-i] ;a[n-1-i] =t;}

    }

    void main( )

    { int b[10] ={1,2,3,4,5,6,7,8,9,10};int i,s=0;

    reverse(b,8) ;

    for(i=6;i<10;i++) s+=b[i] ;

    cout < < S;

    }

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:在main函数中,调用reverse函数将b数组中的前8个成员进行互置,执行完毕后,b数组中的成员为{8,7,6,5,4,3,2,1,9,10},在执行for循环结构后,将b[6] ,b[7] ……b[9] 的值相加,结果为 1+2+9+10=22。注意:在计算累加和时,应将累加变量赋值为零。

  • 第7题:

    有以下程序void fun(int* a, int i, int j){ int t; if(i<j); { t =a[i] ;a[i]= a[j] ;a[i]= t; fun(a, ++i, --j);}}main(){ int a[i]={1,2,3,4,5,6}, i; fun(a,0,5); for(i=0;i<6; i++) cout<<a[i];}执行后输出结果是

    A.654321

    B.432156

    C.456123

    D.123456


    正确答案:A
    解析:本题采用递归函数的方式将数组中的元素进行倒置,只要能够看出函数fun的功能,即可以得出正确答案为A。

  • 第8题:

    有以下程序

    void fun(intā*a,int i,int i)

    { int t;

    if(i<j);

    { t=a[i];a[i]=a[j];a[j]=t;

    fun(a,++i,- -j);

    }

    }

    main( )

    { int a[]={1,2,3,4,5,6},i;

    fun(a,0,5);

    for(i=0;i<6;i++)

    cout<<a[i];

    }

    执行后输出结果是

    A.6 5 4 3 2 1

    B.4 3 2 1 5 6

    C.4 5 6 1 2 3

    D.1 2 3 4 5 6


    正确答案:A
    解析:本题采用递归函数的方式将数组中的元素进行倒置,正确答案为A。

  • 第9题:

    下列程序的输出结果是( )。 public class Test{ public static void main(String[]args){ int[]array=(2,4,6,8,lO); int size=6; int result =-1: try{ for(int i=0;i(size 8L&result= = -1;) if(array[i]= =20)result=i: } catch(ArithmeticException e){ System.out.println("Catch- - -l"); } 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.以上都不对


    正确答案:B
    B。【解析】由题可知先判断i<sizeresuh==-1,结果为真,则执行if语句array数组中的任何数都不等于20,并且i从0开始一直到i=5时发生越界,则输出Cateh==-2,结果为B。

  • 第10题:

    对于下列代码段,执行后输出结果是()。 int n,m; int[] a=new int[5]; n=10; m=10; try{ for(inti=0;i<=a.Length;i++); a[i]=i; n=1/(n-m); } catch(DivideByZeroExceptione1){ Console.WriteLine(“产生零除异常!”); } catch(IndexOutOfRangeExceptione2) { Console.WriteLine(“产生数组访问越界异常!”); }


    正确答案: 输出“产生数组访问越界异常!

  • 第11题:

    Which the statement is true?()

    • A、 The Error class is a Runtime Exception.
    • B、 No exceptions are subclasses of Error.
    • C、 Any statement that may throw an Error must be enclosed in a try block.
    • D、 any statement that may throw an Exception must be enclosed in a try block.
    • E、 Any statement that may throw an Runtime Exception must be enclosed in a try block.

    正确答案:B

  • 第12题:

    单选题
    1. class A implements Runnable (  2. int i;  3. public void run ( ) (  4. try (  5. thread.sleep(5000);  6. i= 10;  7. ) catch(InterruptedException e) {}  8. )  9. )  10.    11. public class Test {  12. public static void  main (string args[]) ( 13. try (  14. A a = new A ( );  15. Thread t = new Thread (a);  16. t.start( );  17.    18. int j= a.i;  19.    20. ) catch (Exception e) {}  21. )  22. }   Which statement al line 17 will ensure that j=10 at line 19?()
    A

     a.wait();

    B

     t.wait();

    C

     t.join();

    D

     t.yield();

    E

     t.notify();

    F

     a.notify();

    G

     t.interrupt();


    正确答案: D
    解析: 暂无解析

  • 第13题:

    下面程序的输出结果为【】。 include main() { char a[]="morning",t; int i,j=0; for(

    下面程序的输出结果为【 】。

    include<iostream.h>

    main()

    {

    char a[]="morning",t;

    int i,j=0;

    for(i=1;i<7;i++)

    if(a[j]<a[i])

    j=i;

    t=a[j];

    a[j]=a[7];

    a[7]=a[j];

    cout<<a;

    }


    正确答案:mo
    mo

  • 第14题:

    使用VC6打开考生文件夹下的工程test37_1,此工程包含一个源程序文件test37_1.cpp,但该程序运行有问题,请改正函数中的错误,使该程序的输出结果为:

    0149 16 25 36 49 64 81

    源程序文件test37_1.cpp清单如下:

    include<iostream.h>

    template <class T, int N = 100> class Vector

    {

    T vec[N];

    public:

    void set(int pos, T val);

    T get(iht pos);

    /***************** found *****************/

    }

    template <class T, int N> void Vector<T, N>::set(int pos, T val)

    {

    vec[pos] = val;

    }

    /***************** found *****************/

    template <class T, int N> Vector<T, N>::get(int pos)

    {

    return vec[pos];

    }

    int main ()

    {

    Vector<double, 10> v;

    int i = 0;

    double d = 0.0;

    for (i = 0; i < 10; i++)

    v.set(i, double(i * i));

    for (i = 0; i < 10; i++)

    cout<<v.get(i)<<" ";

    cout<<end1;

    /***************** found *****************/

    }


    正确答案:(1) 错误:} 正确:}; (2) 错误:templateclass Tint N>VectorTN>::get(int pos) 正确:templateclass Tint N>T VectorTN>::get(int pos) (3) 错误:缺少返回值 正确:加入 return 0;
    (1) 错误:} 正确:}; (2) 错误:templateclass T,int N>VectorT,N>::get(int pos) 正确:templateclass T,int N>T VectorT,N>::get(int pos) (3) 错误:缺少返回值 正确:加入 return 0; 解析:(1)主要考查考生对于类定义的理解,即使使用了类模板,在类定义的结尾仍然需要使用分号,这是C++的规定;
    (2)主要考查考生是否会掌握了模板类的定义,template是关键字,在0中间是类型的定义,题目中Vector是一个类的名称,前面应该有该模板的名称,即T,这样才是完整的定义;
    (3)主要考查考生对于函数返回值的掌握,任何返回值类型不为int型的函数最后都必须使用returen语句返回对应类型的值,就算是main函数也不例外。

  • 第15题:

    有以下程序: void fun(int a*a,int i,int i) {int t; if(i<j); {t=a[i];a[i]=a[j];a[j]=t; fun(a,++i,--j); } } main() {inta[]={1,2,3,4,5,6},i; fun(a,0,5); for(i=0;i(6;i++) cout<(a[i]; } 执行后输出结果是( )。

    A.6 5 4 3 2 1

    B.4 3 2 1 5 6

    C.4 5 6 1 2 3

    D.1 2 3 4 5 6


    正确答案:A
    解析: 本题采用递归函数的方式将数组中的元素进行倒置,正确答案为A。

  • 第16题:

    以下程序的输出结果是includevoid reverse(int a [ ] ,int n){int i,t;for(i=0;i

    以下程序的输出结果是 #include<iostream.h> void reverse(int a [ ] ,int n) {int i,t; for(i=0;i<n/2;i++) {t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;} } void main( ) {int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0; reverse(b,8); for(i=6;i<10;i++)s+=b[i]; cout << S; }

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:在main函数中,调用reverse函数将b数组中的前8个成员进行互置,执行完毕后,b数组中的成员为{8,7,6,5,4,3,2,1,9,10},在执行for循环结构后,将b[6],b[7]……b[9]的值相加,结果为1+2+9+10=22。注意:在计算累加和时,应将累加变量赋值为零。

  • 第17题:

    下面程序的输出结果是 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.以下都不对


    正确答案:B
    解析:ArithmeticException是当出现异常的运算条件时,抛出此异常。例如,一个整数“除以零”时,是抛出此类的一个实例;ArrayIndexOutOfBoundsException是用非法索引访问数组时抛出的异常。如果索引为负或大于等于数组大小,则该索引为非法索引。本程序中,数组大小为5个元素,数组下标为0~4,而循环为0~5,数组越界,所以会捕获ArrayIndexOutOfBoundsException。

  • 第18题:

    以下程序的输出结果是()。includemain(){int b[3][3]={0,1,2,0,1,2,0,1,2},ij,t=1;f

    以下程序的输出结果是( )。 #include<iostream.h> main() { int b[3][3]={0,1,2,0,1,2,0,1,2},ij,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t=t+b[i][b[j][j]; cout<<t; }

    A.3

    B.4

    C.1

    D.9


    正确答案:B

  • 第19题:

    以下程序的输出结果是()。//includemain(){ int b[3][3]={0,1,2,0,1,2,0,1,2},i,j, t

    以下程序的输出结果是( )。 //include<iostream.h> main() { int b[3][3]={0,1,2,0,1,2,0,1,2},i,j, t=1; for(i=0,i<3; i+ +) for(j=i;j<=i; j+ +) t=t+b[i][b[j][j]]; cout<<t; }

    A.3

    B.4

    C.1

    D.9


    正确答案:B

  • 第20题:

    下列程序的输出结果是( )。 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.以上都不对


    正确答案:B
    B。【解析】本题考查了数组及for循环。本题数组定义的值为5,下标从0~4。数组越界,所以答案为B。

  • 第21题:

    ( 17 )下列程序的输出结果是

    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 )以上都不对


    正确答案:U

    答案暂缺

  • 第22题:

    研究下面的Java代码:  public class testException{  public static void main(String args[]){       int a[]={0,1,2,3,4};      int sum=0;      try{  for(int i=1;i<6;i++)  sum=sum+a[i];  System.out.println("sum="+sum);                 }      catch(ArrayIndexOutOfBoundsException ){                    System.out.println("数组越界");     }  finally{   System.out.println("程序结束");}  } }  输出结果将是()。       

    • A、10  数组越界  程序结束
    • B、10   程序结束
    • C、数组越界  程序结束
    • D、程序结束

    正确答案:C

  • 第23题:

    单选题
    Which the statement is true?()
    A

     The Error class is a Runtime Exception.

    B

     No exceptions are subclasses of Error.

    C

     Any statement that may throw an Error must be enclosed in a try block.

    D

     any statement that may throw an Exception must be enclosed in a try block.

    E

     Any statement that may throw an Runtime Exception must be enclosed in a try block.


    正确答案: E
    解析: 暂无解析

  • 第24题:

    问答题
    对于下列代码段,执行后输出结果是()。 int n,m; int[] a=new int[5]; n=10; m=10; try{ for(inti=0;i<=a.Length;i++); a[i]=i; n=1/(n-m); } catch(DivideByZeroExceptione1){ Console.WriteLine(“产生零除异常!”); } catch(IndexOutOfRangeExceptione2) { Console.WriteLine(“产生数组访问越界异常!”); }

    正确答案: 输出“产生数组访问越界异常!
    解析: 暂无解析