itgle.com

阅读下列程序,当输入数据的形式为25,13,10<回车>,程序的输出结果为: #include <stdio.h> int main() { intx,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%dn",x+y+z); return 0; }A.x+y+z=48B.x+y+z=35C.x+z=35D.不确定值

题目

阅读下列程序,当输入数据的形式为25,13,10<回车>,程序的输出结果为: #include <stdio.h> int main() { intx,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%dn",x+y+z); return 0; }

A.x+y+z=48

B.x+y+z=35

C.x+z=35

D.不确定值


相似考题
更多“阅读下列程序,当输入数据的形式为25,13,10<回车>,程序的输出结果为: #include <stdio.h> int main() { intx,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%dn",x+y+z); return 0; }”相关问题
  • 第1题:

    有以下程序

    #include <stdio.h>

    int f(int x)

    { int y;

    if(x==0||x==1) return(3);

    y=x*x-f(x-2);

    return y;

    }

    main()

    { int z;

    z=f(3); printf("%d\n",z);

    }

    程序的运行结果是

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析:函数int f(int x)是一个递归函数调用,当x的值等于0或1时,函数值等于3,其他情况下y=x2-f(x-2),所以在主函数中执行语句z=f(3)时,y=3*3-f(3-2)=9-f(1)=9-3=6。

  • 第2题:

    若输入1.5、2.5,则以下程序的运行结果为______。main(){ float a,b; int c; scanf("%f,%f,",&a,&b); c=max(a,b); printf("%d",c);}max(x,y)float x,y;{ float z; z=x>y?x:y; return(z);}

    A.1.5

    B.2.5

    C.2

    D.3


    正确答案:C

  • 第3题:

    有如下程序:includeint func(int a,int b){return(a+b):}main(){int x=2,y=5,z=8,r; r

    有如下程序: #include <stdio.h> int func(int a,int b) { return(a+b):} main() { int x=2,y=5,z=8,r; r=func(func(x,y),z); printf("%d\n",r); } 该程序的输出结果是( )。

    A.12

    B.13

    C.14

    D.15


    正确答案:D
    解析:在表达式r=func(func(x,y),z)中,func(x,y)是第一次调用函数,它的返回值7作为func函数第二次调用的实参,结果为15。

  • 第4题:

    下列程序的运行结果是 #include"stdio.h" main() { intx=-9,y=5,z=8; if(x<y) if(y<0)z=0; else z+=1; printf("%d\n",z);}

    A.6

    B.7

    C.8

    D.9


    正确答案:D
    解析: if…else语句的执行过程如下,首先计算if后面一对圆括号内表达式的值,若表达式的值为非0,执行if子句,然后跳过else子句,去执行if语句后的下一条语句;若表达式的值为0,跳过if子句,去执行else子句,接着去执行if语句后的下一条语句。C语言的语法规定,else子句总是与前面最近的不带else的if匹配,与书写格式无关,本题目的后一个if-else相当于嵌套在第一个if子句里,相当于xy&&y0时,z=0;当xy&&y>=0时,z=2+1。

  • 第5题:

    以下程序运行时若要正确输出函数的入口地址和输入数的绝对值,应在程序空缺处填入的正确选项是 ( )。 abs(int x) { if(x>=0)return x: else return -x;} main() { int y,z,(*p)(int x)=abs; scanf(" %d" ,&y); z=(*p)(y); ______;}

    A.printf(" %d%d\n" ,&p,z)

    B.printf(" %d%d\n" ,p,z)

    C.printf(" %d%d\n" ,*p,z)

    D.Printf(" %d%d\n" ,p,*z)


    正确答案:B
    解析:可以使用函数指针来调用函数。调用形式为:(*指针变量)(实参表列)。注意:调用函数和被调用函数之间的数据传递。

  • 第6题:

    有下列程序: include int f(int x) { int y; if(x=0‖x==1)r

    有下列程序: #include <stdio.h> int f(int x) { int y; if(x=0‖x==1)return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3);printf("%d\n",z); 程序的运行结果是( )。

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析:主函数调用f()函数,将实参3传递给x,进行if条件语句的判断不成立,接着执行y=3*3-f(1),再执行f(1)而f(1)满足if条件语句,所以f(1)的值为3,那么代入y=3*3-f(1)=9-3=6,故选项C)为正确的运行结果。

  • 第7题:

    若执行下述程序时,从键盘输入的数据是3和6,则程序的输出结果是()。includevoid main(){

    若执行下述程序时,从键盘输入的数据是3和6,则程序的输出结果是( )。 #include <stdio.h> void main() {int x,y,z; scanf("%d%d",&X,&y); z = y + x; if (x<y) z = y + x; printf("%d",z); }

    A.9

    B.3

    C.0

    D.有语法错误


    正确答案:B
    解析:变量x得到数据3,变量y得到数据6。z=6+3=9。xy即36关系表达式的值为1,执行z=y-x=6-3=3。最后输出z的值为3。

  • 第8题:

    有以下程序includeint f(intx){inty; if(x==0||x==1)return(3); y=x*x-f(x-2); return

    有以下程序 #include <stdio.h> int f(int x) { int y; if(x==0||x==1) return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3); printf("%d\n",z); } 程序的运行结果是

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析:函数int f(int x)是一个递归函数调用,当x的值等于0或1时,函数值等于3,其他情况下y=x2-f(x -2),所以在主函数中执行语句z=f(3)时,y=3*3-f(3-2)=9-f(1)=9-3=6。

  • 第9题:

    下面程序的输出结果是( )。 #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为所选。

  • 第10题:

    下列程序的运行结果是

    #include "stdio.h"

    main( )

    { int x=-9,y=5,z=8;

    if(x<y)

    if(y<0) z=0;

    else z+=1;

    printf("%d\n",z);}

    A.6

    B.7

    C.8

    D.9


    正确答案:D
    解析:if…else语句的执行过程如下,首先计算if后面一对圆括号内表达式的值,若表达式的值为非0,执行if子句,然后跳过else子句,去执行if语句后的下一条语句;若表达式的值为0,跳过if子句,去执行else子句,接着去执行if语句后的下一条语句。C语言的语法规定,else子句总是与前面最近的不带else的if匹配,与书写格式无关,本题目的后一个if-else相当于嵌套在第一个if子句里,相当于x=0时,z=z+1。

  • 第11题:

    有以下程序:includefun(int x,int y,int z){z=x*y;}main(){int a=4,b=2,c=6; fun(a,b,

    有以下程序: #include <stdio.h> fun(int x,int y,int z) { z=x*y;} main() { int a=4,b=2,c=6; fun(a,b,c); printf("%d",c); } 程序运行后的输出结果是( )。

    A.16

    B.6

    C.8

    D.12


    正确答案:B
    解析:本题考查函数形参与实参的传递规则,当形参与实参都是简单的数据类型时,形参值的改变不能影响实参值,即本题中c的值未改变,仍然是6。

  • 第12题:

    以下程序输出的结果是()。includeusing namespace std;int main(){int **x,*y,z=10;y=

    以下程序输出的结果是( )。 #include<iostream> using namespace std; int main() { int **x,*y,z=10; y=&z; x=&y; cout<< **x+1<<endl; return 0; }

    A.11

    B.x的地址

    C.y的地址

    D.运行错误


    正确答案:A
    解析:执行语句y=&z;后,指针y指向了变量z。执行语句x=&y;后,指针**x指向z。所以**x的值为z的值10,那么程序最后输出为11。

  • 第13题:

    有以下程序:includefun(int a, int b){if(a>b) return(a); elsereturn(b);}main(){int

    有以下程序: #include <stdio.h> fun(int a, int b) { if(a>b) return(a); else return(b); } main() { int x=3,y=8,z=6,r; r=fun(fun(x,y),2*z); printf("%d\n",r); } 程序运行后的输出结果是( )。

    A.3

    B.6

    C.8

    D.12


    正确答案:D
    解析:本题考查函数的返回值。fun函数的功能是比较a,b的值,返回其中较大者。对于main函数中的语句r=fun(fun(x,y),2*z);是先调用fun(x,y)返回8,再将8和12作为实参调用函数fun,得到的返回值为12。

  • 第14题:

    下面程序的结果【】。 include int f(int); void main() { int x=1,i; for (i=0; i<3;

    下面程序的结果【 】。

    include<iostream.h>

    int f(int);

    void main() {

    int x=1, i;

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

    cout<<f(x)<<‘ ’ ;

    cout<<end1;

    }

    int f(int x){

    int y=1;

    static int z=3

    y++;

    z++;

    return (x+y+z);

    }


    正确答案:7 8 9
    7 8 9

  • 第15题:

    main() { int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\n”,x+y+z); } 输入数据的形式是25,13,10<回车>,则程序的输出结果是( )

    A. x+y+z=48

    B. x+y+z=35

    C. x+z=35

    D. 不确定值


    正确答案:A

  • 第16题:

    有以下程序includeintf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}m

    有以下程序 #include <stdio.h> intf(int x) { int y; if(x==0||x==1) return(3); y=x*x-f(x-2); return y; } main() { int z; z=f(3); printf("%d\n",z); } 程序的运行结果是

    A.0

    B.9

    C.6

    D.8


    正确答案:C
    解析: 函数int f(int x)是一个递归函数调用,当x的值等于0或1时,函数值等于3,其他情况下y=x2-f(x-2),所以在主函数中执行语句z=f(3)时,y=3*3-f(3-2)=9=f(1)=9-3=6。

  • 第17题:

    阅读程序段,当输入数据形式为25,13,10时,正确的输出结果为 ______。 int x, y, z; cin>>x>>y>>z;; cout<< "x+y+z=%d\n" <<x+y+z;

    A.x+y+z=48

    B.x+y+z=35

    C.x+z=35

    D.不确定值


    正确答案:D

  • 第18题:

    关于下面的程序 include main() { int x=3,y=0,z=0; if(x=y+z)printf("****"); else p

    关于下面的程序 #include<stdio.h> main() { int x=3,y=0,z=0; if(x=y+z)printf("****"); else printf("$$$$"); }说法正确的是______。

    A.有语法错误不能通过编译

    B.输出****

    C.输出$$$$

    D.可以通过编译,但不能通过连接,无法运行


    正确答案:C

  • 第19题:

    有以下程序:includemain(){int x=3,y=2,z=1; printf("%d\n",x/y&~z);程序运行后的

    有以下程序: #include <stdio.h> main() { int x=3,y=2,z=1; printf("%d\n",x/y&~z); 程序运行后的输出结果是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:D
    解析:&是按位“与”运算符,若参加运算的两个运算量的相应位都为1,则该位的结果值为1,否则为0。~是“取反”运算符,用来对一个二进制数按位取反,即将0变1,1变0。对于x/y&~z,先计算x/y的值,结果为1,用十六进制表示为0001;z用十六进制表示为0001,则~z为FFFE;最后进行&运算,整个表达式的值为0。

  • 第20题:

    下列程序的输出结果是______。 include main() {intx=10,y=10,i; for(i=0;x>8;y=++) pri

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

    include<stdio.h>

    main()

    { intx=10,y=10,i;

    for(i=0;x>8;y=++)

    printf("%d%d",X--,y);

    }


    正确答案:101091
    101091 解析:for(表达式1;表达式2;表达式3) 语句的功能是:首先计算表达式1的值,然后检测表达式2的值,若其值为真,则执行循环体语句,执行完毕后,再计算表达式3的值。然后再检测表达式2的值是否为真,若为真,继续执行循环体语句,若为假,则退出循环;第 1次循环x>8成立,输出x=10,y=10后,x的值减1,i=1,执行y=++i操作,y的值变为1;判断条件还成立,输出x=9,y=1,然后x的值减1,循环条件不成立,则退出循环。

  • 第21题:

    请读程序:includefunc(int a,int b) { int c; c=a+b; return c;}main(){ int x=6,y=7,

    请读程序: #include<stdio.h> func(int a,int b) { int c; c=a+b; return c; } main(){ int x=6,y=7,z=8,r, r=func((x-,y++,x+y),z-); printf("%d\n",r); } 上面程序的输出结果是_______。

    A.11

    B.20

    C.21

    D.31


    正确答案:C
    解析:函数func()的作用是返回两个形参的和,第一个形参是x、y分别自减和自增后的和,其中(x-,y++,x+y)是一个逗号表达式,它的值应该等于x+y,所以整个表达式(x-,y++,x+y)的值为13,而第二个形参的值为8(根据语法规则,应当先使用,后自增),所以func()的返回值为13+8=21。

  • 第22题:

    请读程序:includefunc(int a, int b){int c; c=a+b; return c;}main(){int x=6,y=7,z=

    请读程序: #include <stdio.h> func(int a, int b) { int c; c=a+b; return c; } main() { int x=6,y=7,z=8,r; r=func((x--,y++,x+y),z--); printf("%d\n",r); 上面程序的输出结果是( )。

    A.11

    B.20

    C.21

    D.31


    正确答案:C
    解析:函数func的作用是返回两个形参的和,第一个形参是x,y分别自减和自增后的和13,第二个形参的值为8(根据语法规则,应当先使用,后自增),所以func的返回值为13+8=21。

  • 第23题:

    下列程序的运行结果是

    #include "stdio.h"

    main()

    { int x=-9,y=5,z=8;

    if(x<y)

    if(y<0)z=0;

    else z+=1;

    printf("%d\n",z);}

    A.6

    B.7

    C.8

    D.9


    正确答案:D
    解析:if卐lse语句的执行过程如下,首先计算if后面一对圆括号内表达式的值,若表达式的值为非0,执行if子句,然后跳过else子句,去执行if语句后的下一条语句;若表达式的值为0,跳过if子句,去执行else子句,接着去执行if语句后的下一条语句。C语言的语法规定,else子句总是与前面最近的不带else的if匹配,与书写格式无关,本题目的后一个if-else相当于嵌套在第一个if子句里,相当于x<y&&y<0时,z=0;当x<y&&y>=0时,z=z+1。

  • 第24题:

    单选题
    有以下程序:#include int f(int x){ int y; if(x==0||x==1)  return (3); y=x*x-f(x-2); return y;}main(){ int z; z=f(3); printf(%d,z);}程序的运行结果是(  )。
    A

    0

    B

    9

    C

    6

    D

    8


    正确答案: C
    解析:
    函数f是递归函数,递归的终止条件是x为1或2。f(3)=3*3-f(1),当x=0或x=1时返回值为3,即f(0)=3,f(1)=3;所以y=3*3-3=6。答案选择C选项。