单选题下面代码  在J2EE中,aa.jsp文件如下                 { out.pringt(j++) ; out.print(“   ”);} %> 有两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览aa.jsp依次, 那么第二个客户看到浏览器显示()。A0  1B1 2C3  4D 5  6E什么也没有

题目
单选题
下面代码  在J2EE中,aa.jsp文件如下                 { out.pringt(j++) ; out.print(“   ”);} %> 有两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览aa.jsp依次, 那么第二个客户看到浏览器显示()。
A

 0  1

B

 1 2

C

 3  4

D

5  6

E

 什么也没有


相似考题
更多“下面代码  在J2EE中,aa.jsp文件如下 <%!  Starci  int I=0;  int j=0;%>   ”相关问题
  • 第1题:

    有以下程序:int f(int b[][4]){int i,j,s=0;for(j=0;i<4;i++){i=j;if(i>2)i=3-j;s+=b[i][j];}ret

    有以下程序: int f(int b[][4]) { int i,j,s=0; for(j=0;i<4;i++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s; } main() { int a[4][4]={{1,2,3,4,},{0,2,4,6},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a)); } 执行后的输出结果是( )。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:在主函数中首先定义了一个4行4列的二维数组a,并用该数组的数组名作为实参调用函数f()。函数f()中的for循环作用,是将数组前3行中的对角线上的元素,即b[0][0]、b[1][1]、b[2][2]和第一行的第四列元素即b[0][3]累加到变量s中, s=a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。然后将s的值返回在主函数中输出。

  • 第2题:

    下面代码段的输出结果为( )。 public class Test { public static void main(String sss[]) { int i=0xFFFFFFFl; int j=~i; } }

    A.0

    B.1

    C.14

    D.-15


    正确答案:C
    解析:本题考查对位运算符的理解和掌握。j的值是将i的值按位取反得到的,所以,将0xFFFFFFF1取反得到0x0000000E,十进制数值为14。故本题答案是C。

  • 第3题:

    下面程序的输出结果为【】。 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

  • 第4题:

    下面程序的运行结果是( )。 include main() {char a[80],*p="AbabCDcd"; int i=0,j=0; w

    下面程序的运行结果是( )。 include<stdio.h> main() {char a[80],*p="AbabCDcd"; int i=0,j=0; while(*(p++)!='\0') {if(*p>='a'&&*p<='z'){a[i]=*p;i++;} } a[i]='\0'; puts(A); }


    正确答案:babcd
    babcd 解析:C语言中“\0”表示字符串的结束。程序将p指针指向字符串“AbabCDcd”的首地址,循环开始后若指针不是指向当前字符串的结束标志位,则进入循环体。循环中每次检验字符串中字母是否在'a'与'z'之间,若满足则将当前值赋值给数组a,最后给数组添加字符结束标志。此程序可以筛选出字符串中的小写字母。

  • 第5题:

    下面的程序段运行后,输出结果是 int i,j,x=0; static int a[8][8]; for(i=0;<3;++) for(j=0;<3;j++) a[i][j]=2*i+j; for(i=0;<8;++) x+=a[i][j]; printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析: 本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:[*]
    由于数组的下标是从0开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第6题:

    阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。

    【说明】

    本程序的功能是实现任意两个大整数的乘法运算,例如:

    输入整数1:8934793850094505800243958034985058

    输入整数2:234584950989689084095803583095820923

    二者之积:

    209596817742739508050978890737675662366433464256830959194834854876 8534

    【C++代码】

    include<iostream.h>

    const int MAXINPUTBIT=100;

    const int MAXRESULTBIT=500;

    class LargeNumber{

    int i,j;

    int temp;

    int one[MAXINPUTBIT+1];

    int onebit; //one的位数

    int two[MAXINPUTBIT+1];

    int twobit; //two的位数

    int result[MAXRESULTBIT+1];

    public:

    LargeNumber();

    ~LargeNumber();

    int inputone(); //出错返叫0,否则返回1

    int inputtwo(); //同上

    void multiplication(); //乘

    void clearresult(); //清零

    void showresult(); //显示

    };

    LargeNumber∷LargeNumber()

    {

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

    {

    one[i]=0;

    two[i]=0;

    }

    nebit=0;

    twobit=0;

    inputone();

    inputtwo();

    }

    LargeNumber∷~LargeNumber()

    {

    }

    int LargeNumber∷inputone()

    {

    char Number[MAXINPUTBIT+1];

    cout<<"Please enter one:";

    cin>>Number;

    i=0;

    j=MAXINPUTBIT;

    while(Number[i]!='\0')

    i++;

    nebit=i;

    for(i--;i>=0;i--,j--)

    {

    if(int(Number[i])>=48&&int(Number[i])<=57)

    (1); //由字符转换为数字

    else

    return 0;

    }

    return 1;

    }

    int LargeNumber∷inputtwo()

    {

    char Number[MAXINPUTBIT+1];

    cout<<"Please enter two:";

    cin>>Number;

    i=0;

    j=MAXINPUTBIT;

    while(Number[i]!='\0')

    i++;

    twobit=i;

    for(i--;i>=0;i--,j--)

    {

    if(int(Number[i])>=48&&int(Number[i])<=57)

    two[j]=int(Number[i]-48); //由字符转换为数字

    else

    return 0;

    }

    return 1;

    }

    void LargeNumber∷multiplication() //乘法

    {

    clearresult();

    int m;

    for(i=MAXINPUTBIT;i>=0;i--)

    {

    temp=two[i];

    for(j=(2),m=MAXINPUTBIT;m>=0;m--,j--)

    {

    result[j]+=temp*one[m];

    if(result[j]>9)

    {

    result[j-1]+=result[j]/10;

    (3);

    }

    }

    &n


    正确答案:(1)one[j]=int(Number[i]-48) (2)MAXRESULTBIT-(MAXINPUTBIT-i) (3)result[j]%=10 (4)result[i] (5)result[i]=0
    (1)one[j]=int(Number[i]-48) (2)MAXRESULTBIT-(MAXINPUTBIT-i) (3)result[j]%=10 (4)result[i] (5)result[i]=0 解析:本题考查用C++实现大整数的乘法运算。
    题目要求程序能实现从键盘任意输入的两个大整数的乘法运算。在程序中定义了一个大整数类,在类中抽象了大整数的一些属性,如长度等,还声明了一些操作,有对大整数输入的操作和对大整数求乘积的操作等。下面来具体[分析]程序。
    第(1)空在第一个大整数的输入函数中,根据此空后面的注释我们知道,其功能是把字符转换为数字。在这里需要注意的是,从键盘输入的是字符型的一串字符,此空所在的条件判断语句是用来把这串字符中的数字找出来,接下来就是此空,要求把字符型的数字转换为整型的数字,而字符型数字与整型数字之间的ASCⅡ码值相差48。从第二个大整数的输入函数中,我们也可以很容易知道此空答案为one[j]=int(Number[i]-48)。
    第(2)空在对大整数求乘积的函数中,是一个循环的初始条件,从程序中不难看出,这个二重循环是用来实现对两个大整数求乘积的,而变量j是用来存放计算结果数组的当前下标的,根据乘法的规则,不难得出此空答案为MAXRESULTBIT-(MAXINPUTBIT-i)。
    第(3)空也在求积的二重循环中,它是在语句if(result[j]>9)为真的情况下执行的语句,如果这个条件为真,说明当前需要进位,但到底是进几位,进位后余下的数又应该是多少呢?这就是这个条件判断语句下要完成的任务,从程序中不难看出,对于到底进几位这个问题已经解决,剩下的就是对进位后余数的处理,此空的任务就是求出进位后的余数并存放到数组的当前位置。所以,此空答案为result[j]%=10。
    第(4)空在输出计算结果的函数中,从程序中可以看出,此空在_个循环中,循环的作用是输出计算结果,而计算结果存放在数组中,因此,这个循环是用来输出数组中的所有元素。因此,此空答案为result[i]。
    第(5)空是在清除计算结果的函数中,函数中只有一个循环,此空就在循环下面,计算结果存放在数组中,要清除计算结果就是把数组清零,那么此空的任务是把数组中的每个元素变成零,因此,此空答案为result[i]=0。

  • 第7题:

    程序片断如下:

    int i = 4;

    int a[] = new int[5];

    while(i>=0)

    {

    a[i] = i;

    }

    for(int j=0; j<=a.length; j++)

    {

    System.out.println(a[j]);

    }

    请问当该程序片断被运行时,是否会出现错误?如果没有,输出结果是什么?如果有错误,请指出错误并

    改正。


    正确答案:
      

  • 第8题:

    有以下程序:int f(int b[][4]){ int i, j, s=0;for(j=0j<4;j++){ i=j;if(i>2) i=3-j;s+=b[i][j];

    有以下程序:int f(int b[][4]){ int i, j, s=0; for(j=0j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s;}main(){ int a[4][4]={ { 1,2,3,4}, {0,2,4,6},{3,6,9,12 }, {3,2,1,0} }; printf("%d\n", f(a)); }执行后的输出结果是( )。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:分析程序可知,函数f()中的for循环作用,是将数组前三行中的对角线上的元素,即b[0][0]、b[1][1]、b[2][2]和第一行的第四列元素即b[0][3]累加到变量s中,然后将s的值返回。在主函数中首先定义了一个4行4列的二维数组,接着通过输出语句输出函数f(a)的返回值。调用f(a)的返回值为a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。所以,4个选项中选项D符合题意。

  • 第9题:

    阅读下面程序:includevoid main(){int i,j,row=0,column=0,min;static int a[3][3]

    阅读下面程序: #include<iostream.h> void main() { int i,j,row=0,column=0,min; static int a[3][3]={100,28,72,-30,2,-100}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][jl<min) { min=a[i][j]; row=i; column=j; } cout<<min<<","<<row<<","<<column<<endl; } 该程序的执行结果为( )。

    A.-100,2,3

    B.-100,1,2

    C.100,1,1

    D.100,0,0


    正确答案:B
    解析:该程序是找到数组a中的最小值,然后输出其数值及行、列。首先将min的值赋值为a中的第一行第一列的数值。然后在for两层循环中利用if语句进行大小比较,求出数组最小值,即-100。它的位置为第二行;第三列。标识由0开始计数,所以是1,2。

  • 第10题:

    有以下程序:int f(int b[][4]){int i, j, s=0;for(j=0; j<4; j++){i=j;if(i>2)i=3-j;S+=b[i][j];

    有以下程序: int f(int b[][4]) { int i, j, s=0; for(j=0; j<4; j++) { i=j; if(i>2)i=3-j; S+=b[i][j]; } return s; } main() { int a[4][4]={{1, 2, 3, 4}, {0, 2, 4, 6}, {3, 6, 9, 12}, {3, 2, 1, 0}}; printf("%d\n", f(a)); } 执行后的输出结果是______。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:f(a)=a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。

  • 第11题:

    以下代码的运行结果为:

    public class Calc {

    public static void main (String args []) {

    int total = 0;

    for (int i = 0, j = 10; total >30; ++i, --j) {

    System.out.println(" i = " + i + " : j = " + j);

    total += (i + j);

    }

    System.out.println("Total " + total);

    }

    }

    A. 产生运行错误

    B. 产生编译错误

    C. 输出 "Total 0"

    D. 产生如下输出:

    i = 0 : j = 10

    i = 1 : j = 9

    i = 2 : j = 8

    Total 30


    正确答案:C

  • 第12题:

    下面代码  在J2EE中,aa.jsp文件如下 <%!  Starci  int I=0;  int j=0;%>    <% for ( ; I++<2;) method_  { out.pringt(j++) ; out.print(“   ”);} %>      <%! i="0;" int="" j="0;%" starci="">      <% for="" method_="" />{ out.pringt(j++) ; out.print(“   ”);} %> 有两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览aa.jsp依次, 那么第二个客户看到浏览器显示()。

    • A、 0  1
    • B、 1 2
    • C、 3  4
    • D、5  6
    • E、 什么也没有

    正确答案:A

  • 第13题:

    下面程序的运行结果是includevoid delch(char*s){int i,j;char *a;a=S;for(i=0,j=0;a[

    下面程序的运行结果是 #include<stdio.h> void delch(char *s) { int i,j; char *a; a=S; for(i=0,j=0;a[i]!='\0';i++) if(a[i]>='0' &aa[i]<='9') {s[j]=a[i]; j++;} s[j]='\0';} main() { char *item="a34bC"; delch(item); printf("\

    A.abc

    B.34

    C.a34

    D.a34bc


    正确答案:B

  • 第14题:

    下面的程序段运行后,输出结果是

    int i,j,x=0;

    static int a[8][8];

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

    for(j=0;j<3;j++)

    a[i][j]=2*i+j;

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

    x+=a[i][j];

    printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析:本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:
    0  1  2
    2  3  4
    4  5  6
    由于数组的下标是从0开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第15题:

    执行下面程序后输出的结果是()。include using namespace std;int main(){ int a[4][4

    执行下面程序后输出的结果是( )。 #include <iostream> using namespace std; int main(){ int a[4][4]={{1,2,3,-4},{7,-12,-13,8},{-21,9,0,-24},{-31,10,-33,11}}; int i,j,s=0; for(i=0;i<4;i++){ for(j=0;j<4;j++){ if(a[i][j]>=0)continue; s+=a[i][j]; } } coat<<s<<endl; return 0; }

    A.141

    B.-138

    C.-1

    D.75


    正确答案:B
    解析:在内层循环中,遇到大于等于0的数,继续执行下次循环,否则执行s+=a[i][j],即把其值累加并保存在变量s中。所以本题双重循环的功能是:计算数组中所有负数的累加和。

  • 第16题:

    有如下程序includevoid main( ){char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0

    有如下程序 #include<iostream.h> void main( ) { char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]>'\0';j+=2) s=10*s+p[i][j]-'0';

    A.69825

    B.63825

    C.6385

    D.693825


    正确答案:C
    解析:该题主要要搞清楚以下几点:
      ①定义了一个指针数组char*p[2]后,程序中第一个循环for(i=0;i2;i++)p[i]=ch[i];的作用是使指针数组的P[0]元素(它本身是一个指针)指向了二维数组ch的第一行字符串,并使指针数组的p[1]元素指向了二维数组ch的第二行字符串,这样,就使指针数组p和二维数组ch建立起了一种对应关系,以后对二维数组ch的某个元素的引用就有两种等价的形式: ch[i][j]或p[i][j]。②对二维数组ch的初始化,使其第一行ch[0]中存入了字符串“6937”,第二行ch[l]中的内容为字符串“8254”。③程序中第二个循环中的循环体s=s*10+p[i][j]-'0';的功能是这样的,每执行一次,将s中的值乘以10(也即,将s中的数值整体向左移动一位,并在空出来的个位上添一个o),再将当前P[i][j]中的字符量转换为相应的数字,然后把这个数字加到s的个位上。④注意到内层循环的循环条件
    p[i][j]>'\0'是指p[i][j]中的字符只要不是字符串结束标志'\0'就继续循环,语句j+=2;是使下标j每次增加2,也即一个隔一个地从p[i]所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p [0]所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p[1]所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果s中的值应该是6385。

  • 第17题:

    有以下程序:include int f(int b[] [4]){int i,j,s=0; for(j=0;j<4;j++) {i=j;if(i>2)

    有以下程序: #include <stdio.h> int f(int b[] [4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s; } main() { int a[4][4]={{1,2,3,4},{0,2,4,6},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a)); } 执行后的输出结果是( )。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:程序中,当j=0时,i=0,i>2不成立,s+=b[0][0)=1;j=1时,i=1,i>2不成立,s=s+b[1][1]=1+2=3;j=2时,i=2,i>2不成立,s=s+b[2][2]=3+9=12;j=3时,i=3,i>2成立,i=3-j,此时i=0,s=s+b[0][3]=12+4=16;j=4时循环结束。所以最后s值为16。

  • 第18题:

    有如下程序段#include "stdio.h"void fun(int *a,int *b,int *c,int *d,int *e){ int i,j,k,m; for(i=0;i< *a;i++) for(j=0;j< *b;j++)  for(k=0;k<*c;k++)  for(m=0;m< *d;m++)  ++*e;}main(){ int a=10,b=10,c=10,d=10,e=0; fun(&a,&b,&c,&d,&e); printf("%d\n",e);} 则程序段的输出结果是A.10000 B.1000 C.100 D.0


    正确答案:A
    在本题中,程序首先定义了一个无返回值的函数fun,该函数带有五个整型的指针形参变量,然后通过一个四层循环来操作++*e;语句,由于*与++运算符的优先级一样,它们都是自右至左结合的操作,因此,++*e等价于++(*e),这个操作可描述为:先用地址取值,然后对其进行自加,由于是通过传址传值法的,因此,还需要将相加后的结果传递到实参中。
    在主函数中,定义五个整型变量并分别赋初值,然后调用fun函数,传递的参数是刚定义的五个整型变量的地址,采用的是传址传值法,能为实参带回一个结果值。从fun函数中我们不难看出,当变量a,b,c,d分别为10时,循环总共执行10000次,即自加进行了10000次,而且每次自加后都改变了实参的结果。因此,循环结束后,变量e的值为10000。本题的正确答案是A。

  • 第19题:

    下面程序的输出结果是( )。 #include "stdio.h" fun (x int x { int y=0; static int z=5; z=x++,y++; return(Z); } main() { int a=4,i,j; for(i=0;i<2;i++) j=fun(a++); printf("%d",j); }

    A.0

    B.3

    C.4

    D.5


    正确答案:D
    解析:本题在fun()函数中定义了一个静态局部变量z,在第一次调用此函数时,z被初始化为5,而以后的调用2都会保留上次调用后的值。主函数通过一个for循环,二次调用fun()函数,第1次调用实参表达式a++的值为4,执行z=x++,y++;语句,因运算符“=”的优先级高于“,”,故z的值为表达式x++的值,x++是先对z赋值再对x加1,则z的值为4。第二次调用实参表达式a++的值为5,返回结果也为5,所以最后输出结果是5。D为所选。

  • 第20题:

    关于下面的代码行 int []arr={1,2,3}; for(int i=0;i<2;i++) arr[i]=0;哪一个表达式的值

    关于下面的代码行 int []arr={1,2,3}; for(int i=0;i<2;i++) arr[i]=0;哪一个表达式的值为true()

    A、arr[0]==0

    B、arr[0]==01

    C、arr[1]==1

    D、arr[2]==0


    答案:A

  • 第21题:

    下面的程序段运行后,输出结果是 int i,j,x=0; static int a[8][8]; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=2*i+j; for(i=0;i<8;i++) x+=a[i][j]; printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析:本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:

    由于数组的下标是从。开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第22题:

    以下程序中,fun函数的功能足求3行4列二维数组每行尢素中的最大值。请填空。 void fun(int,int,int(*)[4],int*); main() {int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i; fun(3,4,a,B); for(i=0;j<3;i++)printf("%4d",b[i]); printf("\n"); } void fun(int m,int n,int ar[][4],int*br) {int i,j,x; for(i=0;i<m;i++) {x=ar[i][0]; for(j=0;j<n;j++) if(( )) x=ar[i][j]; br[i]=x; } }


    正确答案:xar[i][j]
    xar[i][j] 解析:本题考查的是循环的嵌套。本题定义了二维数组a,存放3行4列的数组元素,定义了,一维数组b用于存放每行的最大数。存函数fun中,通过二重for循环求每行的最大数,外层for循环用于控制行数,内层for循环用于控制列数。当外层循环执行一次时,内层循环则执行4次,并求出了这一行的最大值x,最后将每一行求出最大值x赋值给存放最大值的数组br,故本题答案为xar[i][j]。

  • 第23题:

    public class test3  {  public static void main(String args[])  {           for(int i = 0; i < 3; i++)  {  for(int j = 3; j >= 0; j--)  {                if(i == j)                    continue;       System.out.println("i="+ i + " j="+j);       }    }       }  }  上面的Java代码编译运行后,下列选项中,()会出现在输出结果中。 

    • A、i=0 j=3
    • B、i=0 j=0
    • C、i=2 j=2
    • D、i=0 j=2
    • E、i=1 j=2

    正确答案:A,D,E