资源描述
2016年下半年《高级语言程序设计(高起专)》期末考试试题
窗体顶端
1. ( 单选题 )
以下程序的输出结果是( )。
main()
{int i,k,a[10],p[3];
k=5;
for(i=0;i<10;i++) a[i]=i;
for(i=0;i<3;i++) p[i]=a[i*(i+1)];
for(i=0;i<3;i++) k+=p[i]*2;
printf("%d\n",k);
}
(本题2.0分)
A、 20
B、 21
C、 22
D、 23
标准答案:B
2. ( 单选题 )
有以下程序,输出结果是( )
float fun(int x,int y)
{ return(x+y); }
main()
{
int a=2,b=5,c=8;
printf("%3.0f\n",fun((int)fun(a+c,b),a-c));
}
(本题2.0分)
A、 9
B、 21
C、 9.0
D、 编译出错
标准答案:A
3. ( 单选题 ) C语言程序的基本单位是( )(本题2.0分)
A、 程序行
B、 语句
C、 函数
D、 字符
标准答案:C
4. ( 单选题 ) 一个 C 程序的执行是从( )(本题2.0分)
A、 本程序的main函数开始,到main函数结束
B、 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C、 本程序的main函数开始,到本程序文件的最后一个函数结束
D、 本程序文件的第一个函数开始,到本程序main函数结束
标准答案:C
5. ( 单选题 ) 一个 C 语言程序是由( )(本题2.0分)
A、 一个主程序和若干子程序组成
B、 函数组成
C、 若干过程组成
D、 若干子程序组成
标准答案:B
6. ( 单选题 ) 变量的指针,其含义是指该变量的( )(本题2.0分)
A、 值
B、 名
C、 地址
D、 一个标志
标准答案:C
7. ( 单选题 ) C语言提供的合法的数据类型关键字是_____(本题2.0分)
A、 Double
B、 short
C、 integer
D、 Char
标准答案:B
8. ( 单选题 ) 以下关于数组的描述正确的是( )(本题2.0分)
A、 数组的大小是可变的,可以有不同的类型的数组元素
B、 数组的大小是固定的,所有数组元素的类型必须相同
C、 数组的大小是可变的,但所有数组元素的类型必须相同
D、 数组的大小是固定的,但可以有不同的类型的数组元素
标准答案:B
9. ( 单选题 ) C 语言提供的合法关键字是()(本题2.0分)
A、 swicth
B、 chan
C、 Case
D、 default
标准答案:D
10. ( 单选题 ) 若定义int a[2][2]={1,2,3,4},则a数组的各数组元素值分别为( )(本题2.0分)
A、 a[0][0]=1,a[0][1]=3,a[1][0]=2,a[1][1]=4
B、 a[0][0]=4,a[0][1]=3,a[1][0]=2,a[1][1]=1
C、 a[0][0]=1,a[0][1]=2,a[1][0]=3,a[1][1]=4
D、 a[0][0]=4,a[0][1]=2,a[1][0]=3,a[1][1]=1
标准答案:C
11. ( 单选题 ) 关于return语句,下列正确的说法是( )(本题2.0分)
A、 必须在每个函数中出现
B、 可以在同一个函数中出现多次
C、 在主函数和其他函数中均要出现
D、 只能在除主函数之外的函数中出现一次
标准答案:B
12. ( 单选题 ) C 语言中的标识符只能由字母、数字和下划线三种字符组成 , 且第一个字符 ()(本题2.0分)
A、 必须为下划线
B、 可以是字母、数字和下划线中的任意一种
C、 .必须为字母或下划线
D、 必须为字母
标准答案:C
13. ( 单选题 ) 设a=12、b=12345,执行语句printf(“%4d,%4d”,a,b)的输出结果为( )(本题2.0分)
A、 12, 123
B、 12, 12345
C、 12, 1234
D、 12, 123456
标准答案:B
14. ( 单选题 ) putchar 函数可以向终端输出一个()(本题2.0分)
A、 整型变量表达式值
B、 实型变量值
C、 字符串
D、 字符或字符变量值
标准答案:D
15. ( 单选题 ) C语言规定:在一个源程序中,main函数的位置 ( ) 。(本题2.0分)
A、 必须在最开始
B、 必须在系统调用的库函数的后面
C、 可以任意
D、 必须在最后
标准答案:C
16. ( 单选题 ) 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与 ( ) 配对。(本题2.0分)
A、 缩排位置相同的if
B、 其之前最近的没有else配对的if
C、 其之后最近的if
D、 同一行上的if
标准答案:B
17. ( 单选题 ) 为表示关系x≥y≥z,应使用C语言表达式___(本题2.0分)
A、 (x>=y)&&(y>=z)
B、 (x>=y)AND(y>=z)
C、 (x>=y>=z)
D、 (x>=y) & (y>=z)
标准答案:A
18. ( 单选题 ) 以下叙述不正确的是()(本题2.0分)
A、 一个C源程序可由一个或多个函数组成
B、 一个C源程序必须包含一个main函数
C、 C程序的基本组成单位是函数
D、 在C程序中,注释说明只能位于一条语句的后面
标准答案:D
19. ( 单选题 ) 下面不正确的字符串常量是()(本题2.0分)
A、 'abc'
B、 "12'12"
C、 "0"
D、 " “
标准答案:A
20. ( 单选题 ) C语言中非空的基本数据类型包括____(本题2.0分)
A、 整型,实型,逻辑型
B、 整型,实型,字符型
C、 整型,字符型,逻辑型
D、 整型,实型,逻辑型,字符型
标准答案:B
21. ( 单选题 ) 若在fopen函数中使用文件的方式是“ab”,该方式的含义是( )(本题2.0分)
A、 为读/写打开一个文件
B、 向二进制文件尾增加数据
C、 为输出打开一个文本文件
D、 为读/写建立一个新的二进制文件
标准答案:B
22. ( 单选题 ) 若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
printf("%d",(x,y));
上面程序片段的输出结果是____
(本题2.0分)
A、 200
B、 100
C、 200 100
D、 输出格式符不够,输出不确定的值
标准答案:A
23. ( 单选题 ) 在下列选项中,不正确的赋值语句是________.(本题2.0分)
A、 ++t;
B、 n1=(n2=(n3=0));
C、 k=i=j;
D、 a=b+c=1;
标准答案:D
24. ( 单选题 ) 下面能正确进行字符串赋值操作的是( )(本题2.0分)
A、 char *s; scanf(“%s”,s) ;
B、 char *s ; s=”ABCDE” ;
C、 char s[5]={“ABCDE”};
D、 char s[5]={‘A’,’B’,’C’,’D’,’E’};
标准答案:B
25. ( 单选题 ) 下面有关for循环的正确描述是( )(本题2.0分)
A、 for循环只能用于循环次数已经确定的情况
B、 for循环是先执行循环的循环体语句,后判断表达式
C、 在for循环中,不能用break语句跳出循环体
D、 for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
标准答案:D
26. ( 单选题 ) x 和 y 均定义为 int 型 ,z 定义为 double 型 , 以下不合法的 scanf 函数调用语句是()(本题2.0分)
A、 scanf(“%d%s,%1e",&x,&y,&z)
B、 scanf(“%2d*%d%f",&x,&y,&z)
C、 scanf(“%x%d*%o",&x,&y)
D、 scanf(“%x%o%6.2f",&x,&y,&z)
标准答案:D
27. ( 单选题 ) 设 C 语言中,一个 int 型数据在内存中占 2 个字节,则 unsigned int 型数据的取值范围为()(本题2.0分)
A、 0~255
B、 0~32767
C、 0~65535
D、 0~2147483647
标准答案:C
28. ( 单选题 ) 在“文件包含”预处理语句中,当#include后面的文件名用双引号括起时,寻找被包含文件的方式为( )(本题2.0分)
A、 仅仅搜索当前目录
B、 仅仅搜索源程序所在目录
C、 直接按系统设定的标准方式搜索目录
D、 先在源程序所在目录搜索,若找不到,再按系统设定的标准方式搜索
标准答案:D
29. ( 单选题 )
有如下函数调用语句:func(rec1, rec2+rec3, (rec4, rec5));
在该函数调用语句中,含有的实参个数是( )(本题2.0分)
A、 3
B、 4
C、 5
D、 有语法错
标准答案:A
30. ( 单选题 ) 能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是( )(本题2.0分)
A、 a>=10 or a<=0
B、 a>=0|a<=10
C、 a>=10 &&a<=0
D、 a>=10‖a<=0
标准答案:D
31. ( 单选题 ) 以下正确的描述是 ( ) 。(本题2.0分)
A、 函数的定义可以嵌套,但函数的调用不可以嵌套
B、 函数的定义不可以嵌套,但函数的调用可以嵌套
C、 函数的定义和函数的调用均不可嵌套
D、 函数的定义和函数的调用均可以嵌套
标准答案:B
32. ( 单选题 ) 下面程序的输出的是________.
#include<stdio.h>
void main()
{int x=10,y=3;
printf("%d\n",y=x/y);
}
(本题2.0分)
A、 0
B、 1
C、 3
D、 不确定的值
标准答案:C
33. ( 单选题 ) 表达式: 10!=9的值是________(本题2.0分)
A、 true
B、 非零值
C、 0
D、 1
标准答案:D
34. ( 单选题 ) 在C程序中将常数3.14159定义为宏常量PI的正确命令是( ) 。(本题2.0分)
A、 #define PI 3.14159
B、 define PI 3.14159
C、 *define PI 3.14159
D、 #define PI 3.14159;
标准答案:A
35. ( 单选题 ) 已知字母A的ASCII码为十进制的65,下面程序的输出是__________.
#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);}
(本题2.0分)
A、 67,D
B、 B,C
C、 C,D
D、 不确定的值
标准答案:A
36. ( 单选题 ) 若用数组名作为函数调用的实参,传递给形参的是 ( ) 。(本题2.0分)
A、 数组的首地址
B、 数组第一个元素的值
C、 数组中全部元素的值
D、 数组元素的个数
标准答案:A
37. ( 单选题 ) 对两个数组a和b进行如下初始化
char a[]="ABCDEF";
char b[]={'A','B','C','D','E','F'};
则以下叙述正确的是( )。
(本题2.0分)
A、 a与b数组完全相同
B、 a与b数组长度相同
C、 a和b中都存放字符串
D、 a数组比b数组长度长
标准答案:D
38. ( 单选题 ) 阅读下面的程序
#include<stdio.h>void main(){ int i,j; i=010; j=9; printf("%d,%d",i-j,i+j);}则程序的运行结果是____
(本题2.0分)
A、 1,19
B、 -1,19
C、 1,17
D、 -1,17
标准答案:D
39. ( 单选题 ) 下列运算符中优先级最高的是 ( ) 。(本题2.0分)
A、 <
B、 +
C、 &&
D、 !=
标准答案:B
40. ( 单选题 ) . 凡是函数中未指定存储类别的局部变量,其隐含的存储类别为 ( ) 。(本题2.0分)
A、 auto
B、 static
C、 extern
D、 register
标准答案:A
41. ( 单选题 ) 若已定义 int a, 则表达式 a=10,a+10,a++ 的值是 __(本题2.0分)
A、 20
B、 10
C、 21
D、 11
标准答案:A
42. ( 单选题 )
若有以下程序段(n所赋的是八进制数)int m=32767,n=032767;printf("%d,%o/n",m,n);执行后输出结果是( )
(本题2.0分)
A、 32767,032767
B、 32767,77777
C、 32767,32767
D、 32767,077777
标准答案:C
43. ( 单选题 )
下面程序的输出结果是( )。
main(){int a[ ]={1,2,3,4,5,6,7,8,9,0},*p; p=a; printf("%d\n",*p+9);}
(本题2.0分)
A、 0
B、 1
C、 9
D、 10
标准答案:D
44. ( 单选题 ) 在下列叙述中,正确的是( )(本题2.0分)
A、 下面的程序有一个整型输出值:
main(){int a; a=pp(); printf(“%d”,a);}void pp(){ … }
B、 以下程序的运行结果为1,3,5,7main(){static int a[4]={1,3,5,7}; printf(“%d,%d,%d,%d\n”,a);}
C、 以下程序中的PRINT()是一个函数
#define PRINT(V) printf(“V=%d\t”, V)main(){int a,b; a=1; b=2; PRINT(a); PRINT(b);}
D、 以下两个语句是等价的
for(;(c=getchar())!=‘\n’;printf(“%c\n”, c));
for(;(c=getchar())!=‘\n’;) printf(“%c\n”, c);
标准答案:D
45. ( 单选题 ) 字符(char)型数据在微机内存中的存储形式是(本题2.0分)
A、 反码
B、 补码
C、 EBCDIC码
D、 ASCII码
标准答案:D
46. ( 单选题 ) 执行下面程序中的输出语句后,输出结果是_____.
#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}
(本题2.0分)
A、 65
B、 20
C、 15
D、 10
标准答案:B
47. ( 单选题 ) 阅读下面的程序
#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);
printf("i=%d,j=%d\n",i,j);}
如果从键盘上输入1234567<回车>,则程序的运行结果是____
(本题2.0分)
A、 i=123,j=4567
B、 i=1234,j=567
C、 i=1,j=2
D、 i=123,j=45
标准答案:D
48. ( 单选题 ) 设有程序段
int k=10;while(k=0) k=k-1;则下面描述中正确的是 。
(本题2.0分)
A、 while循环执行10次
B、 循环是无限循环
C、 循环体语句一次也不执行
D、 循环体语句执行一次
标准答案:C
49. ( 单选题 ) 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为____(本题2.0分)
A、 a<>0
B、 !a
C、 a=0
D、 a
标准答案:D
50. ( 单选题 ) 下面程序的输出是_________.
#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}
(本题2.0分)
A、 17
B、 18
C、 23
D、 24
标准答案:B
窗体底端
展开阅读全文