C - C++语言同步习题 - 2007(答案和分析zeng)(9)

2019-08-03 11:55

return r; }

main( ) {

int x,a[ ]={2,3,4,5,6,7,8,9}; x=f(a,3);

printf(\

return 0;

}

上面程序的输出结果是( )。B A)720 B)120 C)24 D)6 5. 有以下程序:

#include

void fun(int a,int b,int c) {

a=456; b=567; c=678;

} main( ) {

int x=10,y=20,z=30; fun(x, y, z);

printf(\

return 0;

}

输出结果是( )。B A)30,20,10 B)10,20,30 C)456,567,678 D)678,567,456 6. 下面程序的输出结果是( )。C

#include 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--);(13,8) 将逗号表达试的值作为函数的参数 printf(\

return 0;

} A)11 B)20 C)21 D)31

41

7. 下列程序执行后输出的结果是( )。A

#include int d=1; int fun(int p) p=3 {

int d=5;

d+=p++; d=d+p=5+3=8 p++=4

printf(\ \

return d;

}

main( ) {

int a=3;

fun(a); fun(3)

d+=a++; d=d+a=1+3=4 a++

printf(\

return 0;

}

A)8 4 B)9 6 C)9 4 D)8 5 8. 下面程序的输出是( )。A

#include int fun3(int x) {

static a=3; a+=x;

return a; }

main( ) {

int k=2,m=1,n;

n=fun3(k); n=fun3(m); printf(\

return 0;

}

A)6 B)9 C)0 D)3 9. 以下叙述中不正确的是( )。 D

A)在不同的函数中可以使用相同名字的变量 B)函数中的形式参数是局部变量

C)在一个函数内定义的变量只在本函数范围内有效

D)在一个函数内的复合语句中定义的变量在本函数范围内有效 10. 以下程序的输出结果是( )。 B #include

main( )

42

{

int i=1,j=3;

printf(―%d,‖,i++); i=1 i++=2

{ int i=0;i+=j*2;printf(―%d,%d,‖,i,j); } j*2=6 i=i+6=0+6=6 printf(―%d,%d\\n‖,i,j); }

A)1,6,3,1,3 B)1,6,3,2,3 C)1,6,3,6,3 D)1,7,3,2,3 11. 下列程序执行后输出的结果是( )。D

#include f (int a) {

int b=0;

static c=3;

i f(a) a++ a b c a=c c++ b++ k a=c++,b++;

0 f(2) 3 2 0 3 3 4. 1 3 return a;

1 f(3) 4 3 0 4 4 5 1 4 }

int main(int argc, char argv[])

{

int a=2,i,k;

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

k=f(a++);

printf(\ return 0; } A)3 B)0 C)5 D) 4 12. 以下程序的输出结果是( )。A

#include func(int a, int b); main( ) { k m a b m i m+1 i=i+(m+1) m=i+a+b p int k=4,m=1,p; 4 1 4 1 0 2 1 3 8 8 p=func(k, m); 4 1 4 1 8 3 9 12 17 17 printf(\ p=func(k, m); printf(\ return 0;

}

func(int a, int b) { static int m=0,i=2; i+=m+1; m=i+a+b;

return m;

}

43

A)8,17 B)8,16 C)8,20 D)8,8 13. 如果一个文件要引用另一个文件中的变量,必须通过( )来实现。 B A)用extern对变量说明 B)#include预处理命令

C)#define预处理命令 D)用typedef重新定义 二、阅读程序写出程序运行结果

1. 下列程序执行后输出的结果是 4 。如果语句static z=3;改为int z=3;程序执行后输出的结果是 3 。 4 3

#include func(int x) {

int y=0;

static z=3;

x=z++,y++;

return(x);

}

main( )

{

int a=2,i,b;

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

b=func(a++); printf(\}

2. 下面程序输出的结果 。 4

#include func(int x) {

int y=0;

static z=3;

x=z++,y++; return(x);

} main( ) {

int a=2,i,b;

for(i=0; i<2; i++) b=func(a++); printf(\ return 0; }

3. 有下列程序:

#include int f(int m) {

static int x[3]={2, 3, 4};

44

i a func() a++ x y z x=z z++ y++ b 0 2 2 3 2 0 3 3 4 1 3 1 3 3 4 3 0 4 4 5 1 4 0 2 2 3 2 0 3 3 4 1 3 1 3 3 4 2 0 3 3 4 1 3 int i; for(i=0; i<3; i++) x[i]+=x[i]-m; for(i=0; i<3; i++) printf(\ printf(\ return(x[m]); } main( ) {

int y=1;

f(f(y)); } 3 5 7

该程序运行的结果为 。 1 5 9 4. 读下列C程序,请写出程序运行后的输出结果。

#include void f (char p[][10],int n) {

char t[20]; int i,j;

p1:‖abc‖ p2:‖aabdfg‖ for(i=0;i

p3:‖abbd‖ p4:‖acdbe‖ for (j=i+1;j

if(strcmp(p[i],p[j])<0) p5:‖cd‖ i j p[i]

0 1 p0 p1 strcpy(p[i],p[j]);

将数组用冒泡法从大到小的排序 strcpy(p[j],t);

}

}

main( ) {

char p[ ][10]={\int i; f(p,5);

printf(\ }

程序的输出结果为 。 5 5. 以下程序的输出结果是 。 8,17 同选择12题

#include int func(int a, int b); main( ) {

int k=4,m=1,p;

p=func(k, m); printf(\ p=func(k, m);

45

y=1 f(y)=f(1) m=1 x:2,3,4 i m x[i]-m x[i]=x[i]+ 0 1 2-1=1 2+1=3 1 1 3-1=2 3+2=5 2 1 4-1=3 4+3=7 x:3 5 7 x[1] return(5) f(f(y))=f(5) m=5 x:3 5 7 i m x[i]-m x[i]=x[i]+ 0 5 3-5=-2 3+(-2)=1 1 5 5-5=0 5+0=5 2 5 7-5=2 7+2=9 x:1 5 9


C - C++语言同步习题 - 2007(答案和分析zeng)(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:反应釜液位控制电路信号变换综合设计课程设计 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: