一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。 A.2,6 B.0,0 C.2,4 D.1,2 答:B
【解析】程序执行过程为:定义数组
调用函数fun ,将数组地址传人
函数,指针pi 指向a ,s 指向b ,定义指针t 并使其指向开辟的两个整型内存,为第一个内存赋值为数组a 第一个元素的2倍,即2,然后指针pi 指向a 数组第二个元素,为第二个内存赋值为数组a 第二个元素的2倍,即4,最后使指针s 指向动态开辟的两个内存的首地址。整个过程中数组b 没有发生变化,依次输出b 中元素为0,0,故B 项正确。
2. 有以下程序:
程序运行后的输出结果是( )。 A.10 B.9 C.8 D.7 答:B
【解析】
主函数中语句
代
入
3. 有以下程序
即为计算
用函数的返回值作为参数,
所以首先计算
代
入
得6, 所
以
值为9。
得值为3, 然后计
算
程序的运行结果是( )。 A.Afternoon B.flemoon C.Morning D.oming 答:A
p 指向a[0], 在函数fun 中执行【解析】用字符串数组a 给形参p 赋初始值,程序运 行结果是Afternoon 。
4. 以下选项中正确的定义语句是( )。
答:C
【解析】同一类型变量的定义时,不同变量之间需要用
则p 指向
分隔;定义变量时初始化赋值时
不能用等号连接;变量类型说明后面不能用逗号,而是用空格分离。
5. 有以下程序:
程序运行后的输出结果是( )。 A.0
B. 变量无定义,输出不确定 C.-1 D.1 答:A
【解析】NULL 是包含在头文件stdiah 中的宏定义,其数值由编译器确定,一般情况下是0。
6. 若有定义并已正确给变量赋值,则以下选项中与表达式(x-y )? (x++):(y++)中的条件表达式(x-y )等价的是( )。
A. (x-y==0) B. (x-y<0) C. (x-y>0) D. 答:D
【解析】条件表达式:x=表达式1? 表达式2:表达式3的含义是:先求解表达式1,若其值为,则求解表达式2, 将表达式2的值赋给X ,若表达式1的值为0(假),则求解表达式非0(真)
3, 将表达式3的值赋给X 。在本题中与表达式(x —y )等价的是
7. 有以下程序
}
程序的输出结果是( )。 A.8 B.5 C.7 D.6 答:D
【解析】C 语言中的标识符区分大小写,pad 只实现了一次自增操作,结果输出6。