一、选择题
1. 有以下程序
程序运行后的输出结果是( )。
A.-1
B.0
C.1
D.7
【答案】A
【解析】当a 为0时,a-表达式为0, 条件为假,循环结束,执行判断条件后a 为-1。
2. 以下叙述中正确的是( )。
A. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度
B. 如果p 是指针变量,则*p表示变量p 的地址值
C. 如果p 是指针变量,则&p是不合法的表达式
D. 如果p 是指针变量,则*p+1和*(p+1)的效果是一样的
【答案】A
【解析】A 项正确,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”,而是指1个存储单元长度。B 项错误,
3. 有如下程序:
第 2 页,共 34 页 表示p 的值;C 项错误,表示变量p 的地址;D 项错误
,是先取p 的值,然后执行+1操作
,是先对指针移动1个存储空间,然后取值。
程序运行后的输出结果是( )。
A.Ta=0,b=l
B.Fa=l,b=2
C.Ta=l,b=2
D.Fa=0,b=2
【答案】C
【解析】程序执行过程为:判断++a==b++是否成立,++a前置运算先加1,则a=l,b++后置运算先取值,则b=l,也即是判断1==1,成立,输出T ,之后b=2,输出a=l,b=2。故C 选项正确。
4. 以下选项中关于程序模块化的叙述错误的是( )
A. 把程序分成若干相对独立的模块,可便于编码和调试
B. 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C. 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
D. 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
【答案】C
【解析】把一个大程序分解成若干相对独立的子程序,大大提高了程序编制的效率。软件编制人员在进行程序设计时,首先应当集中考虑主程序中的算法,写出主程序后再动手逐步完成子程序的调用。对于这些子程序也 可用调试主程序的同样方法逐步完成其下一层,就是自顶向下、逐步细化、模块化的程序设计方法。
5. 以下程序段中的变量已正确定义:
程序段的输出结果是( )。
A.
B.
C. D.
【答案】D
【解析】for
语句在没有说明时,仅仅是跟随其后的第一条语句。这时注意第二个for 循环有一个“;”结束,所以视为空语句,表示什么也不做,然后是下一个顺序语句,即输出语句,这时没有for 循环,只输出一个“*”。
第 3 页,共 34 页
6. C 语言中,最基本的数据类型包括( )。‘
A. 整型、实型、逻辑型
B. 整型、字符型、数组
C. 整型、实型、字符型
D. 整型、实型、结构体
【答案】C
【解析】C 语言中,最基本的数据类型包括整型、实型、字符型,答案为C 选项。
7. 已定义以下函数
fun 函数返回值是( )。
A. —个整数
B. 不确定的值
C. 形参p 中存放的值
D. 形参p 的地址值
【答案】A
【解析】题目中fun ( )函数的返回表达式是
型指针,所以该值是一个整数。
8. 以下不是C 语言字符型或字符串常量的是( )
A.
B.
C.
D.
【答案】C
【解析】字符常量是用单引号把一个字符括起来,转义字符常量以一个反斜线开头后跟一个特定的字符或者对应的ASCII 值表示。字符串常量是由双引号括起来的一串字符。C 项既不是字符型常量,也不是字符串常量。AB 两项,均是字符串常量;D 项,是字符型常量。
9. 有以下程序:
程序运行的结果是( )。
第 4 页,共 34 页 是形参p 所指内容的值,因为p 为int