|
一、单选题(共 10 道试题,共 20 分。)V 1. 以下关于数组的描述正确的是
A. 数组大小固定,但是可以有不同类型的数组元素
B. 数组大小可变,但是所有数组元素的类型必须相同
C. 数组大小固定,所有元素的类型必须相同
D. 数组大小可变,可以有不同类型的数组元素
满分:2 分
2. 设有定义:int x=12,n=5; 则表达式 x%=(n%2) 的值为
A. 0
B. 1
C. 2
D. 3
满分:2 分
3. 设有语句:int x=10; x += x -= x - x; ,则执行语句后,x的值为
A. 30
B. 20
C. 10
D. 40
满分:2 分
4. 用数组名作为函数调用时的实参,则实际传递给形参的是
A. 数组的第一个元素值
B. 数组中全部元素值
C. 数组的首地址
D. 数组的元素个数
满分:2 分
5. 从变量的作用域来分,可分为全局变量和局部变量,形参是
A. 局部变量
B. 全局变量
C. 静态变量
D. 动态变量
满分:2 分
6. 以下选项中可作为C语言合法整数的是
A. 10110B
B. 0386
C. x2a2
D. 0Xffa
满分:2 分
7. 已知char b[5],*p=b; ,则正确的赋值语句是
A. b=“abcd” ;
B. *b=“abcd”;
C. p=“abcd”;
D. *p=“abcd”;
满分:2 分
8. 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是
A. ps+3
B. s[3]
C. ps[3]
D. ps+=3,*ps
满分:2 分
9. 在C语言中,下列字符常量中合法的是
A. ′\084′
B. ′\x43′
C. ′ab′
D. ”\0”
满分:2 分
10. 在C语言中,十进制数47可等价地表示为
A. 2f
B. 02f
C. 57
D. 057
满分:2 分
二、其他题(共 10 道试题,共 50 分。)V 1.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x=12,y=0;
if(x>=0)
{ if(x>0) y=1; }
else y=-1;
printf(“y=%d\n”,y);
}
满分:5 分
2.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int i,j,m=0;
for(i=1;i<=10;i+=3)
for(j=3;j<10;j+=4)
m++;
printf(“m=%d\n”,m);
}
满分:5 分
3.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int a[]={2,4,6,8,10} ;
int i,s=0,*p=a+2;
for(i=0;i<5;i+=2)s+=*p++;
printf(“s=%d\n”,s);
}
满分:5 分
4.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x=2,y=6;
int j;
for(j=1 ; y>0 ; y -- ) j=j*x;
printf(“j=%d\n”,j);
}
满分:5 分
5.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int a[3][4]={{1,2,3,4},{9,7,10,6},{-1,8,-5,5}};
int i,j,row=0,colum=0,max;
max=a[0][0];
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{ max=a[i][j];
row=i;
colum=j;
}
printf("max=%d,row=%d,colum=%d",max,row,colum);
}
满分:5 分
6.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int n=2;
printf(“%d\n”, (++n , n+=2 , --n)) ;
}
满分:5 分
7.
读程序写出程序执行结果
#include <stdio.h>
void ex( )
{ static int x=3 ;
--x ;
printf(“%d”,x) ;
}
void main ( )
{ ex( );
ex( );
}
满分:5 分
8.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x= -9, y ;
if(x>0) y=10 ;
else if(x==0) y=0;
else if(x<-5) y= -3;
else y= -2;
printf(“y=%d\n”,y);
}
满分:5 分
9.
读程序写出程序执行结果
#include <stdio.h>
#define S(x) x*x
void main()
{ int a,k=3,m=1;
a=S(k+m);
printf("%d",a);
}
满分:5 分
10.
读程序写出程序执行结果
#include <stdio.h>
void main ( )
{ char a[20]= "abcXYZ", c ;
int i, j;
j= strlen(a)-1 ;
for (i=0; j>i; i++,j--)
{ c=*(a+i); *(a+i)=*(a+j); *(a+j)=c; }
puts(a);
}
满分:5 分
三、简答题(共 3 道试题,共 30 分。)V 1.
(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
2. 编程: 计算sum=1-1/2!+1/3!-1/4!+ …… -1/10!(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
3. 编程:编写函数change使输入的字符串按反序存放,在主函数中输入和输出字符串。例如输入是:abcdefg,则输出为:gfedcba(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
|
|