有以下程序void f(int v,int w){ int t;t=v;v=w;w=t}main(){int x=1,y=3,z=2; if(x>y)f(x,y);els

题目

有以下程序 void f(int v,int w) { int t; t=v;v=w;w=t } main() {int x=1,y=3,z=2; if(x>y) f(x,y); else if(y>z) f(y,z); else f(x,z); pfintf("%d,%d,%d\n",x,y,2); } 执行后输出结果是

A.1,2,3

B.3,1,2

C.1,3,2

D.2,3,1

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序的输出结果是()。 include define F(x)2.84+x define w(y)printf("%d",(int)

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

#include<stdio.h>

#define F(x)2.84+x

#define w(y)printf("%d",(int)(y))

#define P(y)w(y)putchar('\n')

main()

{ int x=2;

P(F(5) *x);

}

A.12

B.13

C.14

D.16


正确答案:A
解析:本题考查带参数的宏的定义及相关运算。P(P(5)*x)=P(2.84+5*2)=P(12.84),调用w(12.84),输出 (int)(12.84)=12。

第2题:

有以下程序:

void f(int x,int y)

{ int t;

if(x<y){t=x;x=Y;y=t;)

}

main

{ int a=4,b=3,c=5;

f(a,b);f(a,c);f(b,c);

printf("%d,%d,%d\n",a,b,c);

}

执行后输出结果是( )。

A.3,4,5

B.5,3,4

C.5,4,3

D.4,3,5


正确答案:D
a、b、C都是按值传递给函数f,函数f不能改变它们的值。所以,a、b、t的值仍然是4、3、5。

第3题:

有以下程序:includeint f(int x){int y;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
解析:本题主要考查函数的递归调用。当x=0或者x=1时返回值为3,即f(0)=3,f(1)=3;否则返回值为x*x-f(x-2)。f(3)=3*3-f(1)=9-3=6。

第4题:

有如下程序: include using namespace std; void f1(int& x, int& y){int z=

有如下程序:

#include<iostream>

using namespace std;

void f1(int& x, int& y){int z=x; x=y; y=z;)

void f2(int x, int y){int z=x; x=y; y=z;}

intmain(){

int x=10, y=26;

f1(x, y);

f2(x, y);

cout<<y<<end1;

return 0;

}

运行时的输出结果是( )。

A) 10

B) 16

C) 26

D) 36

A.

B.

C.

D.


正确答案:A

第5题:

以下程序执行后的输出结果是( )。include usingnamespacestd;void try(int,int,int,in

以下程序执行后的输出结果是( )。 #include <iostream> using namespace std; void try(int,int,int,int); int main ( ) { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = X*X; y = y*y; r = z+x+y; }

A.18

B.9

C.10

D.不确定


正确答案:D
解析:本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。下面是正确解答。根据程序逐步分析:①程序中定义了一个名为try的void型函数,即函数try()没有任何返回值。②而try()函数在主函数中是以一条独立语句的方式被调用的,且主函数最后输出变量r的值。③但在主函数中,并没有对变量r赋值。④在C++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以,虽然在函数try()中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

第6题:

有以下程序 void f(int x,int y) { int t; if(x<y){ t=x; x=y; y=t; } } main( ) { int a=4,b=3,c=5; f(a,b); f(a,c); f(b,c); printf("%d,%d,%d\n",a,b,c); } 执行后输出的结果是

A.3,4,5

B.5,3,4

C.5,4,3

D.3,5,4


正确答案:D

第7题:

有如下程序:include void fun (int& x,int y){int t=x;x=y;y=t;}int main(){ int

有如下程序: #include <iostream> void fun (int& x,int y){int t=x;x=y;y=t;} int main() { int a[2]={23,42}; fun (a[1],a[0]; std::cout<<a[0]<<”,”<<a[1]<<std:: ond1; retum0; }执行后的输出结果是______ 。

A.41,41

B.23,23

C.13,42

D.42,23


正确答案:B
解析:a[0]做的是地址传递,所以执行函数后值发生变化,而a[1]做的是值传递,值并没有发生变化,所以此题应选择A。

第8题:

有以下程序: void f(int v,int w) { int t; t=v;V=W;W=t; } main() { int x=1,y=3,z=2; if(x>y) f(x,y); else if(y>z) f(y,z); else f(x,z); printf("%d,%d<%d\n",x,y,Z); } 执行后输出结果是( )。

A.1,2,3

B.3,1,2

C.1,3,2

D.2,3,1


正确答案:C
解析:C语言规定else总是和离它最近的if语句配对。分析可以知道,。函数f()作用是让形参v和形参w的值交换。在主函数中首先定义了3个变量x、y和z。然后再执行下面的if-else语句。由程序可以看出第一个else和第一个if搭配,第二个else和第二个if搭配。由于调用函数时是进行值传递的。即将实参x、y、z传给形参v和w,以后行参和实参再无联系,故通过if语句调用f()函数后,x、y和z的值并没有改变。因此最后输出的x、y和z的值为1、3和2,所以,4个选项中选项C符合题意。

第9题:

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

第10题:

有以下程序: void f(int v , int w) { int t; t=v;v=w;w=t; } main() { int x=l,y=3,z=2; if(x>y} f(x,y); else if(y>z) f(y,z); else f(x,z); printf("%d,%d,%d\n",x,y,z); } 执行后输出结果是

A.1,2,3

B.3,1,2

C.1,3,2

D.2,3,1


正确答案:C
解析:本题考核的知识点是函数的调用和if-else语句的应用。C语言规定else总是和离它最近的if语句配对。分析可以知道,函数f()作用是让形参v和形参w的值交换。在i函数中首先定义了三个变量x。y和z。然后再执行下面的if-else语句.由程序可以看出第—个else和第一个订搭配,第二个else和第二个if搭配。由于调用函数时是进行值传递的。即将实参x,y,z传给形参v和w,以后行参和实参再无联系,故通过if语句调用f()函数后,x、y和z的值并没有改变。故最后输出的x、v和z的值为1、3和2,所以,4个选项中选项C符合题意。

更多相关问题