对于下列代码段,执行后输出结果是()。 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(“产生数组访问越界异常!”); }

题目

对于下列代码段,执行后输出结果是()。 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(“产生数组访问越界异常!”); }


相似考题
更多“对于下列代码段,执行后输出结果是()。 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(“产生数组访问越界异常!”); }”相关问题
  • 第1题:

    以下程序的输出结果是 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;} } 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]; printf("%d\n",s); }

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:在main函数中,调用revere函数将b数组中的前8个成员进行互置,执行完毕后,b数组中的成员为{8,7,6,5,4,3,2,1,9,10},然后再执行for循环结构,将b[6],b[7]…b[9]的值相加,结果为22。

  • 第2题:

    有以下程序 #define N 20 fun(int a[],int n,int m) { int i,j; for(i=m;i>=n;i--) a[i+1]=a[i]; } main() { int i,a[N]={1,2,3,4,5,6,7,8,9,10}; fun(a,2,9); for(i=0;i<5;i++) printf("%d",a[i]); } 程序运行后的输出结果是——。

    A.10234

    B.12344

    C.12334

    D.12234


    正确答案:C

  • 第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题:

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

    以下程序运行后的输出结果是( )。 #include<stdio.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;} } main() {int b[10]={10,9,8,7,6,5,4,3,2,1};int i,s=0; reverse(b,10); for(i=0;i<3;i++)s+=b[i]; printf("%d\n",s); }

    A.27

    B.6

    C.25

    D.30


    正确答案:B
    解析:本题考查函数调用时的参数传递。函数reverse将数组b进行了逆置,此时b[10]={10,9,8,7,6,5,4,3,2,1),后面for语句的功能是将b中的后3个数累加,并将结果放在s中,最后将s输出,结果s=1+2+3=6。

  • 第5题:

    有以下程序:include define N 20fun(int a[] ,int n,int m){int i,j;for(i=m;i> :n;i

    有以下程序: #include <stdio.h> #define N 20 fun(int a[] ,int n,int m) { int i,j; for(i=m;i> :n;i--) a[i+1] =a[i]; } main( ) { int i,a[N.] = 11,2.3,4,5,6,7,8,9,10[; fun( a,2,9) for(i =0;i<5;i ++ ) printf("% d" ,a[i] );程序运行后的输出结果是( )。

    A.10234

    B.12344

    C.12334

    D.12234


    正确答案:C
    解析:本题函数fun的作用是将指定的数组元素(下标从n~m)向后移一位。调用函数fun(a,2,9)将a[2]到a[9]的各元素依次向后移一位,最后a数组中各元素的值分别为1,2,3,3,4,5,6,7,8,9,10,程序输出数组的前5个元素:12334。

  • 第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题:

    下列程序的输出结果是 #include"stdio.h" #define N3 #define M3 void fun(int a[M][N]) { printf("%d\n",*(a[1]+2));} main() { int a[M][N]; int i,j; for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=i+j-(i-j); fun(a);}

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析: 若有以下定义:int a[3][4],i,j;且当 0=i3,0=j4,则可以有以下几种方式来引用数组中的第i行,第j列的元素:
    a[a][j],*(a[i]+j),*(*(a+i)+j),(*(a+i)[j],*(&a [0][0]+4*i+j)”。

  • 第8题:

    阅读以下函数说明和C语言函数,将应填入(n)处的字句填写在对应栏内。

    [函数2.1说明]

    函数fun1 (int m, int k, int xx [])的功能是:将大于整数m且紧靠m的k个素数存入数组xx中传回。例如:若输入17,5,则应输出:19,23,29,31,37。

    [函数2.1]

    fun1 (int m, int k, int xx [] )

    {

    inti, j, s=0;

    for ( i=m+1; k>0; i++ )

    {for (j=2; j<i; j++ )

    if ( i %j=0 )

    (1)

    if( i==j )

    {

    (2)

    k--; }

    }

    }

    [函数2.2说明]

    函数void fun 2 ()的功能是:打印出杨辉三角形(要求打印出10行)。

    [函数2.2]

    void fun2 ( )

    {

    int i, j;

    int a[10][10];

    printf ("\n" );

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

    {a [i] [0]=1;

    (3))

    for (i=2; i<l0; i++ )

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

    (4)

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

    {for (j=0; j<=i; j++ )

    (5)

    printf ( "\n" );

    }

    }


    正确答案:(1)break; (2) xx [s++]=i; (3)a[i][i] =1; (4) a[i][j]=a[i-1] [j-1)+a[i-1][j]; (5) printf ("%5d"a[i] [j]);
    (1)break; (2) xx [s++]=i; (3)a[i][i] =1; (4) a[i][j]=a[i-1] [j-1)+a[i-1][j]; (5) printf ("%5d",a[i] [j]);

  • 第9题:

    以下程序中函数reverse的功能是对a所指数组中的内容进行逆置。 void reverse(int a[], int n) { int i, t; for(i=0; i<n/2; i++) {t=a[i]; a[i]=a[n-1-1]; a[n-1-i]=t;} } 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]; printf("% d\n", s); } 程序运行后的输出结果是______。

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:主函数调用reverse时。实参为b和8,即reverse函数的功能是将数组b中的前8个元素逆置,其余元素不变。因此函数调用结束后数组b的内容为:8、7,6、5、4、3、2、1、9、10。main函数中for循环语句的功能是求b[6]元素到b[9]元素的和,即s=b[6]+b[7]+b[8]+b[9]=2+1+9+10=22,因此printf语句的输出结果是22。

  • 第10题:

    研究下面的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

  • 第11题:

    单选题
    以下程序执行的结果是什么?()  int[] myArray = new int[3];  try{  for(int i=0; i<=myArray.length;i++){  myArray[i]=i*3;   System.out.println("myArray数组的第"+i+"个元素的值是:"+myArray[i]);       }  }catch(ArrayIndexOurOfBoubsException e){  System.out.println("数组下标越界");}
    A

    程序执行,屏幕上显示“数组下标越界”

    B

    程序出现异常,屏幕上提示出现数组下标越界异常

    C

    程序正常执行结束,屏幕上显示数组中每个元素的值

    D

    程序编译出错


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

  • 第12题:

    单选题
    研究下面的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

    程序结束


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

  • 第13题:

    有以下程序 #define N 20 fun(int a[],int n,:Int m) { int i,i; for(i=m; i>n; i--) a[i+1);a[i]; } main() { int i,a[N]={1,2,3,4,5,6,7,8,9,10}; fuu(a,2,9); for(i=0; i<5; i++) printf("%d",a[i]); } 程序运行后的输出结果是

    A.10234

    B.12344

    C.12334

    D.12234


    正确答案:C
    解析:数组名可以作为实参传送,由于数组名本身是一个地址值,因此,在函数中对形参数组元素的修改也会相应改变实参数组的元素.在本题中,函数fun()通过一个for循环,将形参数组a中下标为n到m之间的元素向后移动一位,a[n]元素的值不变。所以主函数调用fun(a,2,9);之后,数组a的内容变成{1,2,3,3,4,5,5,6,7,8,9,10},最后通过for循环输出数组前5个元素为12334。选项C符合题意。

  • 第14题:

    以下程序执行后的输出结果是【】。includemain(){int i, m=0,n=0,k=0;for(i=9;i<= 11 ;

    以下程序执行后的输出结果是【 】。

    include<iostream.h>

    main()

    {

    int i, m=0,n=0,k=0;

    for(i=9;i<= 11 ;i++)

    switch(i/10)

    {

    case 0: m++; n++; break;

    case 10: n++; break;

    default: k++; n++;

    }

    cout<<m<<n<<k;

    }


    正确答案:132
    132

  • 第15题:

    有以下程序: # define N 20 fun(int a[], int n, int m) { int i, j; for(i=m; i>=n; i--)a[i+1]=a[i]; } main() { int i, a[N]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; fun(a, 2, 9); for(i=0; i<5; i++)printf("% d", a[i]); } 程序运行后的输出结果是______。

    A.10234

    B.12344

    C.12334

    D.12234


    正确答案:C
    解析:由于用了宏定义a[10]~a[19]均为0。函数fun的功能是把从a[n]到a[m]中的元素依次赋给后面的一个元素。调用了fun(a, 2, 9)以后,a[N]={1, 2, 3, 3, 4, 5, 6, 7, 8, 9, 10}。

  • 第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题:

    以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。 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;} } 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]; printf(“%d\n”,s); } 程序运行后的输出结果是

    A.22

    B.10

    C.34

    D.30


    正确答案:A
    解析:reverse()函数的功能是将具有n个元素的数组a反序存放。在主函数中调用语句是“reverse(b,8);”,实现的功能是把b数组的前八个元素逆置,所以b数组中依次存放的值为“8,7,6,5,4,3,2,1,9,10”。for循环了4次,分别把b[6]、b[7]、b[8]和b[9]的值(分别是2、1、9、10)加到了s中,s的结果是22,所以最后输出的s值为22。

  • 第18题:

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

    以下程序的输出结果是( )。 #include <stdio.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;} } 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]; printf("%d\n",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]的值相加,结果为22。

  • 第19题:

    以下程序的输出结果是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}

    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。注意:在计算累加和时,应将累加变量赋值为零。

  • 第20题:

    以下程序的输出结果是#include <conio.h>#include <stdio.h>#define M 100void fun(int m, int *a, int *n){ int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i%11==0) a[j++]=i; *n=j;}main(){ int aa[M],n,k; clrscr(); fun(100,aa,&n); for(k=0;k<n;k++) if((k+1)%20==0)printf("\n"); else printf("%d",aa[k]); printf("\n"); }


    正确答案:77
    在本题中,程序首先定义一个宏M,然后定义一个fun函数,函数带有三个形参,分别是一个整型形参m和两个整型指针形参a、n。在函数体中,首先定义两整型变量i和j,并给j赋初值为0,然后执行循环,循环体中首先是一个条件判断语句,如果结果为真,则说明变量i能同时被7和11整除,并将变量i保存到数组中,循环结束后,将数组中元素的个数通过指针变量n进行返回。通过分析可以知道,fun函数的作用是求取1到m中能同时被7和11整除的整数,并将结果保存到数组a中。
    在主函数中,首先定义了两个整型变量和一个整型数组aa,然后调用clrscr()函数对文本模式窗口进行清除操作。接着调用fun函数,根据上面我们对fun函数的分析,要计算1~100之间能同时被7和11整除的整数,很显然,这样的数只有77一个,那么此时数组aa中只有一个元素为77,而n的值是1。
    接着执行for循环,从程序中不难看出循环的作用是将数组aa中的元素按一定的规则输出,其规则为每行最多只能输出20个值。结合上面的分析,数组aa中只有一个元素为77,因此,本题程序的最终输出结果为77。

  • 第21题:

    下述程序的输出结果是( )。 #define N 20 void fun(int a[],int n,int m) { int i,j; for(i=m;i>n;i--)a[i+1]=a[i]; } main( ) { int i,a[N]={1,2,3,4,5,6,7,8,9,10}; fun(a,2,9); for(i=0;i<5;i++)printf("%d",a[i]); }

    A.10234

    B.12344

    C.12334

    D.12234


    正确答案:B
    函数fun的功能是从数组a中依次将当前值赋给一个元素,所以当函数fun(a,2,9)执行后,数组a[]={1,2,3,4,4,5,6,7,8,9,10)。

  • 第22题:

    以下程序执行的结果是什么?()  int[] myArray = new int[3];  try{  for(int i=0; i<=myArray.length;i++){  myArray[i]=i*3;   System.out.println("myArray数组的第"+i+"个元素的值是:"+myArray[i]);       }  }catch(ArrayIndexOurOfBoubsException e){  System.out.println("数组下标越界");} 

    • A、程序执行,屏幕上显示“数组下标越界”
    • B、程序出现异常,屏幕上提示出现数组下标越界异常
    • C、程序正常执行结束,屏幕上显示数组中每个元素的值
    • D、程序编译出错

    正确答案:A

  • 第23题:

    问答题
    对于下列代码段,执行后输出结果是()。 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(“产生数组访问越界异常!”); }

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