2012年天津市大学软件学院高职升本专业课试题-理工类 考场号 考生号 姓名 第一部分 C语言部分 100分 一、单项选择题(共25小题,每题2分,共50分)
以下每小题列出的四个备选答案中只有一个符合题目要求,请将正确答案填入“单项选择题答题表”对应的格中,未填入答题表,错选或多选均不得分。 1. 一个C语言程序是由( B )组成的。
A. 一个主程序和若干个子程序 B. 函数
C. 若干过程 D. 若干子程序
2. 若x、i、j和k均是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为( C )。
A. 4 B. 16 C. 32 D. 52 3. 下列程序不是..死循环的是( B )。 A. int i=100; B. int k=0;
while(1) do { ++k; } while(k>=0); { i=i0+1; if(i>100) break; }
C. for(;;); D. int s=36; while(s);--s; 4. 在C语言中一位数组的定义形式为:类型说明符 数组名( D )。
A. [常量表达式] B. [整型表达式] C. [整型常量]或[整型表达式] D. [整型常量]
5. 下面四个选项中,均是正确的八进制数或十六进制数的选项是( C )。
A. -10 B. 0abc -0x8f -017 -011 0xc C. 010 D. 0a12 -0x11 -0x123 0xf1 -Ox8 6. putchar函数可以向终端输出一个( D )。
A. 整型变量表达式值 B. 实型变量值
C. 字符串 D. 字符或字符型变量值 7. 下列程序的输出结果是( B )。
main()
{ printf(\
A. 65 B. 41 C. A D. 101
8. 程序char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;的输出结果是( C )。
printf(\
A. 非法 B. a[4]的地址 C. 5 D. 3 9. 以下选项中,与k=n++完全等价的表达式是( A )。
A. k=n,n=n+1 B. n=n+1,k=n C. k=++n D. k+=n+1
1
10. 被调函数调用结束后,返回到( D )。
A. 主调函数中该被调函数调用语句后 B. 主函数中该被调函数调用语句处
C. 主调函数中该被调函数调用语句的前一语句 D. 主调函数中该被调函数调用语句的后一语句 11. 以下程序的输出结果是( A )。
#define MIN(x,y) (x)<(y)?(x):(y) main()
{ int i,j,k; i=10,j=15; k=10*MIN(i,j); printf(\ }
A. 15 B. 100 C. 10 D. 150 12. 对于以下变量定义,正确的赋值是( D )。
int *p[3],a[3];
A. p=a B. *p=a[0] C. p=&a[0] D. p[0]=&a[0]
13. C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( C )。
A. float型 B. long型 C. int型 D. double型 14. 以下关于指针概念的叙述中,错误的是( C )。 ..A. 一个指针变量只能指向同一类型的变量 B. 一个变量的地址称为该变量的指针
C. 两个同类型的指针变量可以加减运算 D. 任何指针变量都可以与指针NULL进行比较 15. C语言的整型数据在内存中的存储形式是( C )。
A. 原码 B. 反码 C. 补码 D. ASCII码 16. 调试程序是指对程序进行( C )。
A. 编辑 B. 编译 C. 查错和排错 D. 连接 17. 以下叙述正确的是( D )。
A. 可以把define和if定义为用户标识符
B. 可以把if定义为用户标识符,但不能把define定义为用户标识符 C. define和if都不能定义为用户标识符
D. 可以把define定义为用户标识符,但不能把if定义为用户标识符 18. 以下程序的输出结果是( B )。
void prtv(int *x) { printf(\ main() { int a=25; prtv(&a); }
A. 25 B. 26
C. 27 D. 以上均不对 19. 在C语言程序中( B )。
A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义和调用均不可以嵌套
2
D. 函数的定义和调用均可以嵌套 20. 以下程序的输出结果是( A )。
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf(\
A. 3 B. 4 C. 1 D. 2 21. 构成C语言程序的基本单位是( B )。
A. 过程 B. 函数 C. 语句 D. 命令 22. 在C语言中,复合语句的构成是将一系列语句( D )。
A. begin和end之间 B. 方括号“[]”之间 C. 圆括号“()”之间 D. 花括号“{}”之间 23. 以上对一维整型数据a进行正确初始化的语句是( D )。 A. int a[10]=(0,0,0,0,0); B. int a[10]={};
C. int a[]={}; D. int a[10]={10*1}; 24. 在C语言中,要求运算数必须是整型的运算符是( D )。 A. / B. ++ C. != D. % 25. 以下程序的输出结果是( B )。 #define PS 3+4
#include
printf(\ }
A. 14 B. 11 C. 2 D. 24
二、填空题(共5小题,每题1分,共10分,请按照试题中对应的标号顺序填写到答题表中) 1. 设有定义int x=9,y=8;表达式x==y+1的结果是 1 。
2. 在内存中存储\要占用 2 个字节,存储'A'要占用 1 个字节。 3. 访问变量的方式有 直接访问 和 间接访问 。
4. 结构化程序的三种结构是 顺序结构 、 选择结构 、 循环结构 。
5. C语言中,数组在内存中一块 连续 的存储区,由 数组名 代表它的首地址。 三、判断题
判断下题是否正确,正确的划√,错误的划×(每题1分,共15分) ( √ )1. 在C语言中,除了main函数外,任何函数都可以递归调用。 ( × )2. break和return语句所起的作用是一样的,都是跳出循环。 ( √ )3. 结构体类型本身不占内存空间,结构体变量占用内存空间。 ( × )4. C语言函数的返回值只能是数值,不能是地址。
( × )5. 在C语言中,字符串常量存放在字符数组中要有一个结束符,该结束符是0。 ( √ )6. 在C语言中,逗号既可以作为运算符,也可以作为分隔符。 ( √ )7. 任何表达式语句都是表达式加分号组成的。 ( √ )8. 形参只有在被调用时才分配存储空间。
( × )9. 对于二维数组来说a+1与*(a+1)的值相等,因此二者的含义是一样的。
3
相关推荐: