更多“执行以下程序段后,i的值为() int i=1,s=3; do { s+=i++; if (s%7==0) continue; else ++i; } while (s<15);”相关问题
  • 第1题:

    以下程序的输出结果是( )。

    main

    { int i=0,S=0;

    for(;;)

    {

    if(i==3 ||i==5)continue;

    if(i==6)break;

    i++;

    s+=i:

    };

    printf("%d\n",s);

    }

    A.10

    B.13

    C.21

    D.程序陷入死循环


    正确答案:D
    当i一0时,两个if都不满足,所以都不执行,直接执行i++语句,此时i为1,S为l,返回for循环中;当i=1时,同样不执行两个if语句,执行i++后,i=2,s=3,返回for循环中;i=2时也不执行if语句,执行i++后,i=3,s=6,接着又执行for循环,此时符合第一个if语句,执行到continue时不再执行i++了,continue是跳出本次循环,接着下次循环。永远这样执行下去,i的值永远为3,故选择D选项。

  • 第2题:

    若有以下程序:include using namespace std;int f(){static int i = O;ints= 1;s+=i;

    若有以下程序:#include <iostream>using namespace std;int f(){ static int i = O; ints= 1; s+=i; i++; return s;}int main(){ int i, a =0; for(i=0;i<5;i++) a+=f(); cout<<a<<end1; return 0;}程序运行后,输出的结果是( )。

    A.20

    B.24

    C.25

    D.15


    正确答案:D

  • 第3题:

    若有以下程序:includeusing namespace std;int f(){ static int i=O; int s=1; s+=i;

    若有以下程序: #include<iostream> using namespace std; int f() { static int i=O; int s=1; s+=i; i++; return s; } int main() { int i,a=0; for(i=0;i<5;i++) a+=f(); cout<<a<<endl; retrun 0; } 程序运行后,输出的结果是

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考核静态局部变量在函数中的使用。静态局部变量就是将局部变量说明为静态的。静态局部变量既有在局部域作用的特性(即变量只能在变量的作用范围内被访问),又可以永久存在(变量的值得以保留,并可继续使用)。静态局部变量只在第一次执行时初始化一次。在函数f中定义了一个静态局部变量i,它的初始值为0,还定义了一个局部变量s(它的初始值为1),用来返回计算所得值。函数f中所进行的数据加工是s+=i和i++。即每调用一次函数f,返回(i+1)的值后,i的值增1。再看主函数,在主函数main中,通过一个for语句连续调用f函数5次,并把每次调用f函数的返回值相加并存入a。最后输出a的值。在了解各函数功能以及调用关系后就可计算出a的值为15。

  • 第4题:

    以下程序的输出结果是 intf() {static int i=0; int s=1; s+=i;i++; retumS;} main() { int i,a=0; for(i=0;i<5;i++)a+=f(); printf("%d\n",a);}

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析: 函数的静态局部变量在编译时就赋初值,即只赋初值一次,在程序运行时它已有初值,以后每次调用函数时不再重新赋值,而只是保留上次函数调用结束时的值。

  • 第5题:

    以下程序的输出结果是[ ]。

    main()

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

    for(i=0;i<3;i++) s+=-a[i][i]+a[i][3-i-1];

    printf("%d\n",s);

    }


    正确答案:30
    30 解析:此题主要考核的是多维数组以及for()循环语句的应用,即i=0时,s=()+a[0][0]+a[0][2]=10,i=1时, s=10+a[1][1]+a[1][1]=18,i=2时,s=18+a[2][2]+a[2][0]=30。

  • 第6题:

    有以下程序main( ){ int i=0,s=0;do{ if(i%2) {i+ +; continue; } i++; s+=i;}while(i<7)cout<<s<<end1;}执行后输出结果是

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:本题考察continue语句在while循环中的使用:直接跳转到条件判断表达式位置,不再执行continue后面的语句。另外,根据分析可知,本题循环体的功能是将0,2,4,6位元素加一后累加,故结果应是1+3+5+7,因此正确答案为A。

  • 第7题:

    若有以下程序:includeusing namespace std;int fun(){static int i=0;int s=1;s+=i;i

    若有以下程序: #include<iostream> using namespace std; int fun() { static int i=0; int s=1; s+=i; i++; return s; } int main() { int i,a=0; for(i=0;i<5;i++) a+=fun(); cout<<a<<endl; return 0; } 程序运行后,输出的结果是( )。

    A.20

    B.24

    C.26

    D.15


    正确答案:D

  • 第8题:

    有以下程序

    main( )

    { int i=0,s=0;

    do{

    if (i%2){i++;continue;}

    i++;

    s+=i;

    }while(i<7);

    cout<<s<<endl;

    }

    执行后输出结果是

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:本题考察continue语句在while循环中的使用:直接跳转到条件判断表达式位置,不再执行continue后面的语句。另外,根据分析可知,本题循环体的功能是将0,2,4,6位元素加一后累加,故结果应是1+3+5+7,因此正确答案为A。

  • 第9题:

    下列语句段中不是死循环的是( )。

    A.int i=100 While (1) { i=i%100+1 if(i==20) break; }

    B.int i sum=O; for (i=l;;i++) sum=sum +l;

    C.int k=0; do { ++K }while(k<=O);

    D.int s=3379; while (s+ +%2+3%2)s++;


    正确答案:A

  • 第10题:

    以下程序段运行后s的值是( )。

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

    int i,j,s=1;   

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

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

    s+=a[i][j];4

    A:6

    B:120

    C:7

    D:240


  • 第11题:

    int i=0,s=0;while(s<20){i++;s+=i;}在这个的while循环语句中,其循环体被执行的次数为()。

    A4

    B5

    C6

    D7


    C

  • 第12题:

    若变量已正确定义,以下不能正确计算1+2+3+4+5的程序段是()。

    • A、i=1;s=1;do{s=s+i;i++;}while(i<5);
    • B、i=0;s=0;do{i++;s=s+i;}while(i<5);
    • C、i=1;s=0;do{s=s+i;i++;}while(i<6);
    • D、i=1;s=0;do{s=s+i;i++;}while(i<=5);

    正确答案:B

  • 第13题:

    以下程序的输出结果是【】。 include using namespace std; int main() {int s,i;for(s=

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

    include <iostream>

    using namespace std;

    int main()

    {

    int s,i;

    for(s=0,i=1;i<3;i++)

    s+=i;

    cout<<s<<end1;

    return 0;

    }


    正确答案:3
    3 解析:此程序中,for循环用来统计符合条件的数的总和,在循环执行完后才输出s的值。s、i的初始值分别为0和1。首先判断条件“13”成立,执行“s+=i;”和“i++”后,i和s的值分别变为2和1。第2次循环时,s、i的初始值为2和1,判断条件“23”成立,进入循环体,执行“s+=i;”和“i++”后,i和s的值分别变为3和3。这是最后一次循环。

  • 第14题:

    若有以下程序:include using namespace std;int f(){static int i = 0;int s = 1;s+=

    若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; int s = 1; s+=i; i++; return s; } int main() { int i,a = 0; for(i = 0;i<5;i++) a+=f(); cout<<a<<endl; return 0; } 程序运行后,输出的结果是

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考核静态局部变量在函数中的使用。静态局部变量就是将局部变量说明为静态的。静态局部变量既有在局部域作用的特性(即变量只能在变量的作用范围内被访问),又可以永久存在(变量的值得以保留,并可继续使用)。静态局部变量只在第一次执行时初始化一次。在函数f中定义了一个静态局部变量i,它的初始值为0,还定义了一个局部变量s(它的初始值为1),用来返回计算所得值。函数f中所进行的数据加工是s+=i和i++。即每调用一次函数f,返回(i+1)的值后,i的值增1。再看主函数,在主函数main中,通过一个for语句连续调用f函数5次,并把每次调用f函数的返回值相加并存入a。最后输出a的值。在了解各函数功能以及调用关系后就可计算出a的值为15。

  • 第15题:

    若有以下程序: include using namespace std;int f(){static int i = 0;ints= 1;s+=i

    若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; ints= 1; s+=i; i++; return s; } int main() { int i,a = 0; for(i = 0;i<5;i++) a+=f(); cout<<a<<endl; return 0; } 程序运行后,输出的结果是

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考核静态局部变量在函数中的使用。静态局部变量就是将局部变量说明为静态的。静态局部变量既有在局部域作用的特性(即变量只能在变量的作用范围内被访问),又可以永久存在(变量的值得以保留,并可继续使用)。静态局部变量只在第一次执行时初始化一次。在函数f中定义了一个静态局部变量l它的初始值为0,还定义了一个局部变量s(它的初始值为1),用来返回计算所得值。函数f中所进行的数据加工是s+=i和i++。即每调用一次函数f,返回(i+1)的值后,i的值增1。再看主函数,在主函数main中,通过一个for语句连续调用f函数5次,并把每次调用f函数的返回值相加并存入a。最后输出a的值。在了解各函数功能以及调用关系后就可计算出a的值为15。

  • 第16题:

    有以下程序

    main( )

    { int i=0,x=0;

    for (;;)

    { if(i==3||i==5) continue;

    if (i==6) break;

    i++;

    s+=i;

    };

    printf("%d\n",s);

    }

    程序运行后的输出结果是

    A.10

    B.13

    C.21

    D.程序进入死循环


    正确答案:D
    解析:由于程序中for循环没有条件,只有靠其内部的break跳转循环,但在循环执行二次之后,i的值变为3,会使循环一直执行if(i= =3| | i= =5)continue这条语句,使程序进入死循环。

  • 第17题:

    以下程序的输出结果是intf(){ static int i= 0; int s=1; s+=i; i++; return s;}main( ){ inti, a=0; for(i=0;i<5;i++)a+=f(); cout<<a<<end1;}

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考察的是同名局部变量和全局变量的作用域之间的关系。同时考察了静态变量的特点:退出函数和进入函数并不影响静态变量的值。因此,循环多次,实际上完成静态变量的累加。即1+2+3+4+5,其值为15,故答案为D。

  • 第18题:

    以下程序的输出结果是 ______。includeInt f(){static int i=0;int a=1;a+=;i++;ret

    以下程序的输出结果是 ______。 #include<iostream.h> Int f(){ static int i=0; int a=1; a+=; i++; return a; } void main() { int i,s=0; for(i=0;i<4;i++) s+=f(); cout<<s;

    A.10

    B.15

    C.21

    D.28


    正确答案:A

  • 第19题:

    以下程序的输出结果是

    intf( )

    {

    static int i=0;

    int s=1;

    s+=i;i++;

    return s;

    }

    main( )

    {

    int i,a=0;

    for(i=0;i<5;i++)a+=f( );

    cout<<a<<endl;

    }

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考察的是同名局部变量和全局变量的作用域之间的关系。同时考察了静态变量的特点:退出函数和进入函数并不影响静态变量的值。因此,循环多次,实际上完成静态变量的累加。即1+2+3+4+5,其值为15,故答案为D。

  • 第20题:

    下面代码输出结果是( )。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(i<7);

    下面代码输出结果是( )。

    inti=0,s=0;

    do{

    if(i%2==0){

    i++;

    continue;

    }

    i++;

    s=s+i;

    }while(i<7);

    System.out.println(s);

    A、16

    B、12

    C、28

    D、21


    正确答案:B

  • 第21题:

    以下程序段执行结果是(57)。 Int s=0 i=1; Do {s+=i++;} While(i<=10); Consol

    A.wrfteline(“sum={0}”,sum)

    B.Sum=54

    C.sum=l

    D.sum=55

    E.sum=56


    正确答案:C
    本题考查Web设计基础-C#语言的相关知识。这是一个do-while循环的基本结构,共循环10次,其中循环体语句sum+=i++:计算累加和,i++是后置运算(先运算,后自加),因此,整个循环等价于s=o+1+2+3+4…+10。

  • 第22题:

    以下程序段的执行结果是______。int s=0,i=1;do{ S+=i++;}while(i<=10);Console.WriteLine("sum={0}",sum);

    A.sum=54
    B.sum=1
    C.sum=55
    D.sum=30

    答案:C
    解析:
    在该程序段中,i++表示“先使用、再增1”;而do……while是一种“先运行、再判断”的循环语句结构。题干中的循环体语句将被执行10次,最后程序段的运行结果是:sum=55,i=11。

  • 第23题:

    以下能正确计算1×2×3×…×10的程序段是()。

    • A、do{i=1;s=1;
    • B、do{i=1;s=0;s=s*i;s=s*i;i++;i++;}while(i<=10);}while(i<=10);
    • C、i=1;s=1;
    • D、i=1;s=0;do{s=s*i;do{s=s*i;i++;i++;}while(i<=10);}while(i<=10);

    正确答案:C

  • 第24题:

    单选题
    以下程序段中,与其他三个功能不同的程序段是(  )。
    A

    s=0;i=1;for(;;){s+=i; i++; if(i<=10) break;}

    B

    s=0,i=1;for(;i<=10;){s+=i; i++;}

    C

    s=0;for(i=1;i<=10;i++){s+=i;}

    D

    for(s=0,i=1;i<=10;s+=i,i++);


    正确答案: B
    解析:
    B、C、D项都表示对1到10进行累加后赋给s,而A项中含break语句,循环体只执行一次,结束整个循环过程。答案选择A选项。