一、选择题
1. 有以下程序
}
程序的输出结果是( )。
A.8
B.5
C.7
D.6
答:D
【解析】C 语言中的标识符区分大小写,pad 只实现了一次自增操作,结果输出6。
2. 有以下程序:
程序运行的结果是( )。
A.0
B.10
C.20
D. 出错
答:C
【解析】fun 函数的功能是申请一个指针p ,把p 指向的存储空间赋值为n ,并返回p 指向的空间的值,即为n 。的返回值为10,所以
后a 的值为10,
3. 有以下程序
{
程序执行后的输出结果是( )。
A.Prohsbn
B.Prphsbn
C.Progsbn
D.Program
答:B
【解析】函数funl 功能是将字符串中元素加1,main 函数将数组第4个元素的指针传进funl 函数中,结果为Prohsbn 。
4. 有以下程序:
执行时如输入:
A.
B.
C. ^
D.
答:A 则输出结果是( )。
【解析】程序执行过程为:读入一个字符存入缓存区,判断字符是否为如不是,继续读入字符,直到读入的字符是“#”,存入缓存区,退出循环,将缓冲区字符一个个输出,
结果为
5. 若变量已正确定义,有以下程序段
i=0:
其输出结果是( )。
A.0, 1
B.0, 0
C.1, 1
D. 程序进入无限循环
答:A
【解析】首先进入do 语句,输出0
; 是先判定i 是否为0, 不管判定结果如何,都执行i++。i 等于0,判定结果为false ,执行i++,跳出do-while 循环,然后输出1。
6. 有以下程序
若想通过键盘输入,使得al 的值为12, a2的值为34, cl 的值为字符a ,c2的值为字符b , 程序输出结果是:12, a , 34, b ,则正确的输入格式是(以下□代表空格,代表回车)( )。
A. B. C. D.
答:A
【解析】因为空格和回车也是字符变量,所以在输入a 和b 时,它们的前面不能有空格和回车,否则将取到空格或者回车,而非a 和b ; int 类型不会取到空格和回车,所以12和34前面可以有空格和回车。在scanf 函数并没有使用通配符逗号,所以输入时不能输入逗号。
7. 有以下程序:
程序运行后的输出结果是( )。
A.02
B.13
C.57
D.12