niusouti.com

有以下程序 main( ) { int i,s=0; for(i=1;i<l0;i+=2) s+=i+1 printf("%d\n",s); } 程序执行后的输出结果是 ______。A.自然数1~9的累加和B.自然数1~10的累加和C.自然数1~9中奇数之和D.自然数1~10中偶数之和

题目

有以下程序 main( ) { int i,s=0; for(i=1;i<l0;i+=2) s+=i+1 printf("%d\n",s); } 程序执行后的输出结果是 ______。

A.自然数1~9的累加和

B.自然数1~10的累加和

C.自然数1~9中奇数之和

D.自然数1~10中偶数之和


相似考题
参考答案和解析
正确答案:D
解析:本题中s=(1+1)+(3+1)+(5+1)+(7+1)+(9+1)=2+4+6=8+10。
更多“有以下程序 main( ){int i,s=0;for(i=1;i<l0;i+=2) s+=i+1printf("%d\n",s); }程序执行后的输出 ”相关问题
  • 第1题:

    有以下程序

    main()

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

    for(i=0;i<9;i+=2)s+=*(t+i);printf("%d\n",s);}

    程序执行后的输出结果是

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:统计1~9九个数中的奇数和,此题考察指向数组的指针。C语言规定数组名代表数组的首地址,也就是第一个元素的地址。因此*(t+i)代表数组的第i+1个元素。程序运行的结果是1+2+3+4+5+6+7+8+9=25。

  • 第2题:

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

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:本题的功能是计算0~7之间所有奇数的和(包括7)。

  • 第3题:

    有下列程序:main{int i,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf(&qu

    有下列程序:

    main

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

    for(i=0;i<9;i+=2)s+=*(t+i);

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

    }

    程序执行后的输出结果是( )。

    A.A.45

    B.20

    C.25

    D.36


    正确答案:C
    在for循环语句中自变量i从0开始,每次自加2,执行s+=*(t+i)语句,因为C语言规定数组名做表达式相当于数组的首地址,也就是第一个元素的地址。因此,*(t+i)代表数组的第i+1个元素。所以程序运行的结果是1+3+5+7+9=25,即变量S的值等于25。

  • 第4题:

    以下程序的输出结果是 ( ) main( ) { int a[3] [3]={1,2},{3,4,},{5,6,},i,j,s=0; for(i=1;i<3;i+ +) for(j=0;j<i;j+ +) s+=a [i][j]; printf ("%d\n",s); }

    A.18

    B.19

    C.20

    D.21


    正确答案:A

  • 第5题:

    若有以下程序: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。

  • 第6题:

    下面程序的运行结果是______。

    main()

    { int i=0,j=10,k=2,s=0;

    {i+=k;

    if(i>j)

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

    break;}

    s+=i;}}


    正确答案:

  • 第7题:

    有以下程序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。

  • 第8题:

    有以下程序:includemain(){int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s

    有以下程序: #include <stdio.h> main() { int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s); } 程序执行后的输出结果是( )。

    A.正整数1~9的累加和

    B.正整数1~10的累加和

    C.正整数1~9中奇数之和

    D.正整数1~10中偶数之和


    正确答案:D
    解析:通过for(i=1;i10;i+=2)可知,i取值为1~10的奇数,即1,3,5,7,9,i+1即为2,4,6,8,10。因此,程序的功能是计算并输出1~10中的偶数之和,s+=i+1就是累加这些偶数。

  • 第9题:

    若有以下程序: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

  • 第10题:

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

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:do循环与continue语句,在循环体中有一条if语句,其后面表达式为“i%2”,当i的值为奇数时,其值为真,执行其后面的语句,i的值加1,重新开始循环,当i的值为偶数时,“i%2”为假,执行“i++;s+=i”。在循环中i为偶数时的值分别为0、2、4、6,加1过后的值分别为1、3、5、7,s中存放的是它们的和,值为16。

  • 第11题:

    有以下程序:include main( ){int i,s=0,t[] = {1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)

    有以下程序:#include <stdio.h>main( ){ int i,s=0,t[] = {1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2) s+=*(t+i); prinff("% d \n ",s);

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:程序中的*(t+i)相当于t[i]。由于for循环变量的增量为2,因此i分别取值0,2,4,6,8,因为t[0]=1,t[2]=3,t[4]=5,t[6]=7,t[8]=9,对其进行求和运算,结果为25。

  • 第12题:

    单选题
    有以下程序#include main(){ int i,s=0,t[]={1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2)s+=*(t+i); printf(%d,s);}程序执行后的输出结果是(  )。
    A

    25

    B

    20

    C

    45

    D

    36


    正确答案: B
    解析:
    *(t+i)等价于t[i],依次访问数组t中的偶数位元素,s = t[0]+t[2]+t[4]+t[6]+t[8] = 1+3+5+7+9 = 25。答案选择A选项。

  • 第13题:

    有以下程序: maln() { int i,s=0,t[]={1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2)s+=*(t+i); printf("%d\n",s); } 程序执行后的输出结果是( )。

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:通过for循环语句s=*(t+0)+*(t+2)+*(t+4)+*(t+6)+*(t+8)=1+3+5+7+9=25。

  • 第14题:

    以下程序的输出结果是 include int f( ) { static int i=0; int s=1 s+ =i;

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

    A.20

    B.24

    C.25

    D.15


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

  • 第15题:

    以下程序的输出结果是【】。 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。这是最后一次循环。

  • 第16题:

    若有以下程序: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。

  • 第17题:

    以下程序运行后的输出结果是()。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。

  • 第18题:

    有下列程序: main {int i,s=0,t[]={1,2,3,4,5,6,7,8,9); for(i=0;i<9;i+=2)s+=*(t+i); printf("%d\n",s); } 程序执行后的输出结果是( )。

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    在for循环语句中自变量i从0开始,每次自加2,执行s+=*(t+i)语句,因为C语言规定数组名做表达式相当于数组的首地址,也就是第一个元素的地址。因此,*(t+i)代表数组的第i+1个元素。所以程序运行的结果是1+3+5+7+9=25,即变量S的值等于25。

  • 第19题:

    有以下程序 main() {int i,s=0,t[]={1,2,3,4,5,6,7,8,9 }; for(i=0;i<9;i+=2) s+=*(t+i); printf("%d\n",s); }

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:此题考核的是指针与数组间的应用,数组可以通过实现对数组元素的操作,*(t+i)相当于t[i]。执行for()循环语句,i分别为0、2、4、6、8,有数组可知t[0]=1;t[2]=3;t[4]=5;t[6]=7;t[8]=9进行求和运算结果为25。

  • 第20题:

    有以下程序includevoid fun(float* p1,int n1,float,*p2,int n2,float* s){ int i;s=(

    有以下程序 #include<stdio.h> void fun(float * p1,int n1,float,*p2,int n2,float * s) { int i; s=(float *)calloc(1,sizeof(float)); *s=0; for(i=0;i<n1;i++) *s+=*p1++; for(i=0;i<n2;i++) *s+=*p2++; } main() { float a[2]={1.1,2.2},b[3]={10.0,20.0,30.0),*s=a; fun(a,2,b,3,s); printf("%f\n",*s); } 上面程序的输出结果是( )

    A.60

    B.3.3

    C.63.3

    D.1.1


    正确答案:D

  • 第21题:

    有以下程序

    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。

  • 第22题:

    有以下程序: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。

  • 第23题:

    下面程序的运行结果是【 】。

    main()

    { int i=0,j=10,k=2,s=0;

    for(;;)

    {i+=k;

    if(i>j)

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

    break; }

    s+=i; } }


    正确答案:30
    30 解析:考查for循环的使用。题目中for(;;)表示:for循环的初始化表达式,条件表达式和修正表达式都省略了,表示进行for循环和for循环的终止都没有限制。