成都东软信息技术职业学院
2009~2010学年第二学期期末试题——C语言程序设计(A卷)
(适用:08级软件技术、英语强化、日语强化、测试专业)
题号一二三四五总分分数
说明:本试卷共五大题,试卷满分100分,考试时间120分钟。
选择题:(本题共30分,每小题2分)
C语言程序从( )开始执行。
??? A、?????????????????B、????????????
?C、???????????? ?D、?下列叙述错误的是( )
A、一个C源程序可以由一个main函数和若干个其他函数组成
B、在C程序中,一行可以写几条语句,但提倡一行一条语句的风格
C、对一个C程序进行编译的过程中可以发现注释中的拼写错误
D、C系统不对注释进行编译,因此不能发现注释中的拼写错误
3、有输入语句:scanf(“%d,%d,%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是( )。
A、1 3 2
B、a=1,b=3,c=2
C、a=1 b=3 c=2
D、1,3,2
? 4、以下不合法的用户标识符为( )
??? A、?????????B、????????C、?????????D、??
5、下面运算符优先级最高的是 ( )
A、&& B、= C、++ D、%
6、设a ,b ,c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是( )
A、 a && b B、a<=b C、a || b +c && b-c D、(a
7、判断char型变量ch是否为数字字符的正确表达式是( )。
A、(ch>=‘0’)||(ch<=‘9’) B、(ch>=‘0’)&(ch<=‘9’)
C、‘0’==‘0’)&&(ch<=‘9’)
8、下面程序运行后的输出结果是( )
void main()
{
int a=1,b=2,c=3;
if(c=a)
printf(“%d”,c);
else
printf(“%d”,b);
}
?? A、while(E);中的表达式E等价于(???)A、E==0?????????????B、E!=0????????????????C?、E!=1??????????????D、E==1
10、设有程序段
int k=10;
while(k=0) //k的值不满足0则循环,而k=0,所以就没有循环
k=k-1;
下面描述中正确的是( )
?? A、????????? ??? ?B、?????????????
C?、循环体语句一次也不执行 D、while10次
11、函数调用过程中,参数传递方向为( )
A、形参到实参 B、先实参到形参,后形参到实参
C、同时互相传递 D、实参到形参
12、若有语句int *point,a=4; point=&a;下面均代表地址的一组选项是( )
A、&a,&*point ,point B、 a,point,*&a
C、*&point,*point,&a D、&*a,&a,*point
13、有定义:int a[N],*p=a;则下列语句中不与a[i]等价的是A、*(a+i)?? ??B、&p[i]?????? ??C、p[i]?? ??D、*(p+i)
14、 若有如下说明
struct st
{
int n;
char name[20];
}stu[3],*p=stu;
下面各输入语句错误的是( )。
A、scanf(“%d”,&stu[0].n); B、scanf(“%s”,&stu[0].name);
注:应该不取地址,
取地址也对
C、scanf(“%d”, p->&n);