一 单项选择题
1.以下程序的输出结果是( C )。
int d=1;
fun(int p)
{static int d=5;
d+=p;
printf("%d ",D);
return(D);
}
main( )
{ int a=3; printf("%d\n",fun(a+fun(D)));}
A) 6 9 9
B) 6 6 9
C) 6 15 15
D) 6 6 15
2.下列程序执行后的输出结果是( C )。
void func1(int i);
void func2(int i);
char st[ ]="hello,friend!";
void func1(int i)
{printf("%c", st[i]);
if(i<3){i+=2;func2(i);}
}
void func2(int i)
{printf("%c", st[i]);
if(i<3){i+=2;func1(i);}
}
main()
{int i=0; func1(i); printf("\n");}
A) hello
B) hel
C) hlo
D) hlm
3.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( B )。
A) 地址传递
B) 单向值传递
C) 由实参传给形参,再由形参传回实参
D) 传递方式由用户指定
4.以下函数值的类型是( A )。
fun( float x )
{float y;
y=3*x-4;
return y;
}
A) int
B) 不确定
C) void
D) float
5.设有以下函数:
f( int a)
{int b=0;
static int c=3;
b++; c++;
return(a+b+C);
}
如果在下面的程序中调用该函数,则输出结果是( A )。
main()
{int a=2, i;
for(i=0;i<3;i++) printf("%d\n", f(a));
}
A) 7
B) 7
C) 7
D) 7
8 9 10 7
9 11 13 7
6.以下程序的输出结果是( B )。
int a, b;
void fun()
{a=100; b=200;}
main()
{int a=5, b=7;
fun();
printf("%d%d\n", a,
B);
}
A) 100200
B) 57
C) 200100
D) 75
7.以下所列的各函数首部中,正确的是( C )。
A) void play(var a:Integer, var b:Integer)
B) void play(int a, B)
C) void play(int a, int B)
D) Sub play(a as integer, b as integer)
8.以下程序的输出结果是( C )。
fun(int x, int y, int z)
{z=x*x+y*y; }
main()
{int a=31;
fun(5, 2, a);
printf("%d", a);
}
A) 0
B) 29
C) 31
D) 无定值}
9.当调用函数时,实参是一个数组名,则实参向形参传递的是( B )。
A) 数组的长度
B) 数组的首地址
C) 数组每一个元素的地址
D) 数组每个元素中的值
10.以下程序的输出结果是( A )。
long fun( int n)
{long s;
if(n= =1 || n= =2) s=2;
else s=n-fun(n-1);
return s;
}
main()
{printf("%ld\n", fun(3)); }
A) 1
B) 2
C) 3
D) 4
编辑推荐:
2013年9月计算机等级考试真题及答案解析专题北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |