(A 卷)第 1 页 共 11 页
韩山师范学院 2018 年本科插班生考试试卷
计算机科学与技术专业 高级语言程序设计试卷 ( A 卷)
题号 得分
一 二 三 四 五 总分 评卷人
得分 评卷人 一、填空题(每空 2 分,共 10 分)
1.C程序源文件的后缀名是
.C 。
2 . 设 变量 a 的 值是 1, 则 表 达 式( 2+a) ∧ ( ~ 3) 的 值是 _ _____
。
函数的作用是从指定文件读入一个
main
字符
函数。
3. fgetc
。
4. C 语言程序至少必须包含一个 5. 若有定义: int a[3][5];
则数组 a 中共有 __15__个元素。
得分 评卷人 二、单项选择题(每题 2 分,共 30 分)
题号 答案 题号
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
答案
1
(A 卷)第 2 页 共 11 页
1.C语言程序编译时,程序中的注释部分 ___B_______。
A.不参加编译,但会出现在目标程序中
B.不参加编译,也不会出现在目标程序中
C.参加编译,但不会出现在目标程序中 D.参加编译,并会出现在目标程序中
2.以下程序执行后 sum的值是 ___A_______。
A.15 B.不确定
C. 14
D.0
main()
{ int i , sum=0; for(i=1;i<6;i++) sum+=i;
printf(\ }
3.下列程序段的输出结果是 __A________。
A.2 1 4 3
B .1 2 1 2 C . 1 2 3 4 D .2 1 1 2void fun(int *x, int *y)
{ printf(\main()
{ int x=1,y=2; fun(&y,&x);
printf(\ }
// 解析:本题中函数传递的是变量的地址,如果形参在函数中发生改变,相对 应的实参也就有了改变
4.以下程序的输出结果是 ____D______。
2
(A 卷)第 3 页 共 11 页
main()
{ char c='a'; printf(\
}
A.A
B . a C .a+25 D.z
5. 以下能正确定义,且赋初值的语句是 ___B______ A. int n1=n2=10;
B. char c=32;
D. double x=12.3E2.5
C. Float f=f+1;
6. 以下程序的输出结果是 ____B______ main()
{ char ch[3][5]={\
printf(\
1]); // 指的是第二个元素
}
A.\
B.\ C.\D . \ 则下列使
b 不为 3 的语句是
7. 设有定义: int a=3,b,*p=&a; ___D______
A.b=*&a
B.b=*p C.b=a D.b=*a
8. 若有说明语句: int a,b,c,*d=&c
;,则能正确从键盘读入三个
整数分别赋给变量 a、 b、 c 的语句是 ___A_______。 A.scanf(\
B .scanf(\
D
.scanf(\
C.scanf(\
9. 有定义语句: int x, y; 若要通过 scanf(\语句使变量 x 得到数值 11,变量 y 得到数值 12,下面四组输入形式中,错误的是 ____C______。
A.11, 12< 回车 >
B
.11 12< 回车 >
3
(A 卷)第 4 页 共 11 页
C.11,< 回车 >12<回车 >
D
.11,12< 回车 > D____
10.有以下程序的输出结果是 _
char ch;int k;
ch='a';k=12;
printf(\
printf(\
A. 因为变量类型与格式描述符的类型不匹配输出无定值 B. 输出项与格式描述符个数不符,输出为零值或不定值
C.a,97,12k=12
D.a,97k=12
11.有以下程序,输出是 ___B_______
#include
void main()
{
int a=0,b=0,c=0,d=0;
if(a=1) b=1;c=2;
else d=3;
printf(
“%d, %d, %d, %d ”,a,b,c,d);
}
A. 0,1,2,0
B. 0,0,0,3 C. 1,1,2,0 D. 编译有错
12. 判断 char 型变 量 c1 是 否为 小写 字 母的 正确 表达 式为 ____D______
A. 'a'<=c1<='z'
B. (c1>=a)&&(c1 C.( 'a'<=c1)||( 'z'>=c1) D.(c1>= 'a')&&(c1<='z') 13. 设有以下结构类型说明和变量定义, 则变量 a 在内存所占字节数 4 (A 卷)第 5 页 共 11 页 是__________ struct stud { char num[6]; double ave; } a; A.14B. 18 C .26D .22 14. 下面表达式中 _____C_____的值等于 0。( 设:int a=1;b='0';) A.!a==!b B.!a||b C.!(a==b) D.a&&!b 15. 在位运算中,操作数每左移一位 , 其结果相当于 ___C_______。 A、操作数除以 2 B 、操作数乘以 16 D 、操作数除以 16 C、操作数乘以 2 // 左移乘二,右移除以 2 得分 评卷人 三、阅读程序,将运行结果写到各题右侧的空 白处(每题 4 分,共 20 分) 1. main() { int i=0,s=0; do{ if(i%2){i++;continue;} i++; s+=i; }while(i<7); printf(\ } 答: 16 5