浙江省2004年7月高等教育自学考试高级语言程序设计(一)试题
课程代码:00342
一、单项选择题(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.函数调用语句“f((e1,e2),(e3,e4,e5))”中参数的个数是( )
A.1
B.2
C.3
D.5
2.不正确的标识符是( )
A._a2
B.2ai
C.a2_i
D.INt
3.若int a[3]={1,2,3},*p;则下列赋值语句中正确的是( )
A.p=&a;
B.*p=a;
C.*(a+1)=a;
D.p=a+1
4. C程序在作逻辑运算时判断操作数真、假的表述中,正确的是( )
A.0为假,非0为真
B.只有1为真
C.-1为假,1为真
D.0为真,非0为假
5.若p1、p2都是指向整型的指针,p1已经指向数量x,要使p2也指向x,正确的是( )
A.p2=p1;
B.p2=**p1;
C.p2=&p1;
D.p2=*p1;
6.定义一个有4个元素的一维整型数组,正确的是( )
A.float a[4];
B.int a[]={1,2,3,4,5};
C.int a[]={1,2,3};
D.int a[4]={1}
7.若变量a,b已经正确定义并赋值,符合C语言语法的表达式是( )
A.a2+b
B.a*a+b
C.a×a+b
D.a•a+b
8.算术运算符,赋值运算符和关系运算符的运算优先级按从高到低依次为( )
A.算术运算、赋值运算、关系运算
B.算术运算、关系运算、赋值运算
C.关系运算、赋值运算、算术运算
D.关系运算、算术运算、赋值运算
9.表达式strcmp(“3.14”,“3.278”)的值是一个( )
A.非零整数
B.浮点数
C.0
D.字符
10.执行下列语句printf(“%d”,’a’= =’A’)后输出为( )
A.1
B.语法错
C.0
D.97
11.若数组定义为int a [4][5];则下列哪个表达式是错误的?( )
A.*a
B.a[1][1]
C.&a[2][3]
D.++a
12.若定义char a[80]=“95”,b[]=“windows”;则语句printf(“%s”,strcry(a,b));的输出结果为( )
A.windows95
B.windows
C.95
D.95windows
13.求一个双精度实数的绝对值,应该调用函数( )
A.sqrt
B.pow
C.abs
D.fabs
14.表达式10%2值是( )
A.0
B.1
C.5
D.5.0
15.若变量已正确定义,表达式(j=3,j++)的值是( )
A.3
B.4
C.5
D.0
二、判断题(判断下列各题,正确的在题后括号内打“√”,错的打“×”。本大题共5小题,每小题来源:91考试网2分,共10分)
16.主函数可以分为两个部分:主函数说明部分和主函数体。 ( )
17.函数的定义和函数的调用均可以嵌套。 ( )
18.在C语言中,当我们定义了数组int a[5];则数组元素的下标从1到5。 ( )
19.在C语言中,“A”占两个字节,而‘A’占一个字节。 ( )
20.程序中定义的整型变量的初值都为0。 ( )
三、程序填空题(本大题共2小题,共6个空格,每空4分,共24分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.下面程序调用swap函数交换a和b的值,并输出交换后的a和b的值。程序的输出结果是:After Call Function Swap 5,9。
#include
void main(){
int x=9,y=5;
swap( ① );
printf(“After Call Function Swap %d, %d”,x,y);
}
swap( ② ){
int temp;
temp=*x;
③ ;
*y=temp; }
22. 输入一个正整数后,输出该数的位数。例如,若输入3576,则输出为4,输入为31678,则输出为5。
#include
void main(){
int n,k=0;
scanf(“%d”, ④ );
while( ⑤ ){
k++;
n= ⑥ ;
}
printf(“%dn”,k);}