??????????????????????精品自学考 料推荐??????????????????
全国 2018 年 10 月高等教育自学考试
高级语言程序设计(一)试题
课程代码: 00342
一、单项选择题(本大题共
20 小题,每小题 1 分,共 20 分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括
号内。错选、多选或未选均无分。 1.下列不 正确的转义字符是 ( )
. A. ′ ′ B. ′ ″ C. ′ \\086′
D. ′ \\0′ 2.下列运算符中,优先级最高的是 (
)
A. [] B.++ C.%
D.&&
是 C 语言保留字的是 (
)
3.下列标识符中,不 .
A. char B. while C. min
D. default 4.下列数据中,不 .是 C 语言常量的是 ( )
A. ′ \\n′ B. ″ a″ C. e-2
D. 012
5.若定义了 int a; char b; float c ;,则表达式 a*b-c 的类型是 ( )
A. float B. int C. char
D. double
6.若定义了 int a, x,y;,则下列语句中不 .正确的是 ( )
A. x=3 ,y=5 ; B. ++x ;
C. x=y+=x*30 ;
D. a=y+x=30 ;
7.调用函数时,若实参是一个数组名,则向函数对应的形参传送的是 (
)
A. 数组的长度
B.数组的首地址 C. 数组第一个元素的值
D. 整个数组元素的值
8.在 C 语言中,函数返回值的类型是由 (
)
A. 定义的函数类型决定
B.return 语句中表达式的类型决定 C.调用该函数的主调函数类型决定
D. 调用该函数时系统状态决定
9.若定义了 int b [][ 3]={ 1 ,2, 3,4, 5, 6, 7};,则 b 数组第一维的长度是 (A. 2
B. 3
C. 4
D.无确定值
1
)
??????????????????????精品自学考 料推荐??????????????????
10.若定义了 char ch[] ={″ abc\\0def″}, *p=ch ;则执行 printf( ″ %c″ ,*p+4) ;语 句的输出结果是 ( A. def
)
B. d D. 0
)
C. e
11.若定义了 x=100 ;,则表达式 x++>100?x+20 : x+10 的值是 ( A.110
B.111 D.121
)
C.120
12.执行 printf( ″% d\\n″, strlen(″ ″ 066\\xee\\n″ ));语句的输出结果是 ( A.7 C.13
B.12
D.输出项不合法,无正常输出
(
)
13.在函数中定义的局部变量,若未指定存储类别,则其隐含的存储类别是 A. static
B. anto
D. register
C. extern
14.若定义了 unsigned short a=32768 ;,则执行 printf( ″ a=% d″, a);语句的输出结果是 (
)
A. a=-32768 C. a=32768
B. a=-1
D.数据类型不一致,出错
15.若定义了 int m , n=0, *p1=&m ;,则下列与 m=n;等价的正确语句是 ( A. m=*p1 ; C. *&p1=&*n ;
16.下列程序的运行结果是 (
)
B. *p1=&*n ; D. *p1=*&n ;
)
main( )
{ int a [][ 4] ={1, 3, 5,7, 9, 11,13, 15,17, 19,21,
23}; int (*p) [4], i=2 , j=1 ; p=a;
printf( ″ %d\\n ″, *(*(p+i)+j)) ; }
B.11
A.9 C.17
x% y
D.19
17.若有宏定义: #define MOD(x , y)
则执行以下语句后的输出结果是 int a=13 , b=94;
printf( ″% d\\n″, MOD(b , a+4));
B.7 )
A.5
18.若定义了 (
union
C.9 D.11
2
??????????????????????精品自学考 料推荐??????????????????
{ char a[ 10];
short b[4][ 5]; long c [ 5];
}u;
则执行 printf( ″% d\\n″, sizeof(u)) ;语句的输出结果是 (
)
D.70
A.10
B.20 )
C.40
19.若定义了 (
enum color
{ yellow , green, blue=5 , red, brone};则枚举常量 yellow 和 red 的值分别是
A.0 , 3 C.1, 6 20.若定义了 (
B.0, 6 D.3 , 6
)
struct num
{ int a; int b ;
} d[ 3]={{ 1, 4},{ 2, 5},{ 6, 7}};
则执行 printf( ″% d\\n″, d[ 2] .a*d[ 2] .b/d[ 1].b);语句的输出结果是 (
)
A.2
二、填空题(本大题共
B.2.5 C.8 D.8.4
10 小题,每小题 2 分,共 20 分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.一个 C 程序一般由若干个函数构成,其中至少应包含一个
函数。
22.在 Turbo C 中,一个 int 型变量所能表示的数的范围是
。
23.表达式 10<< 3+1 的值是
。
p 的赋值语句
24.若定义了
int a[ 10], *p ;,将数组元素 a[ 8 ]的地址赋给指针变量
。
是
25.若定义了 int a=1 ;,则执行 printf( ″% d\\n″, ((a=a+4, a+5),a+6)) ;语句的输出结 果是
。
进制。
26.在 C 语言中,整型常量的书写形式包括:八进制、十进制和 27.在 C 语言中,一个双精度数
-5.88 在二进制文件里占用的字节数是
。
。
28.C 语言标识符的第一个字符必须为下划线或者 29.在 C 语言中,当定义一个函数的类型为
void 时,说明执行该函数后 。
30.若使用 fopen 函数打开一个新的二进制文件,对该文件进行读写操作,则文件使用方式
字符串应该是
三、程序分析题(本大题共
。
5 小题,每小题 5 分,共 25 分)
阅读下列程序,将输出结果写到各题右侧的空白处。
3