2018年杭州师范大学阿里巴巴商院826计算机基础之C程序设计考研核心题库
● 摘要
一、选择题
1. 以下叙述中正确的是( )。
A. 赋值语句是一种执行语句,必须放在函数的可执行部分
B.scanf 和printf 是C 语言提供的输入和输出语句
C. 由printf 输出的数据都隐含左对齐
D. 由printf 输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的
【答案】A
【解析】A 项正确,赋值语句是一种可执行语句,应当出现在函数的可执行部分。但需要注意,不要把变量定义时的赋初值和赋值语句混为一谈。B 项错误,C 语言本身没有提供输入输出功能,scanf 和printf 属于标准库函数;C 项错误,数据都隐含右对齐,如果想左对齐,可以在格式控制中的“%”和宽度之间加一个号来实现;D 项错误,若给出的总宽度nl 小于n2加上整数位数和小数点(e 或E 格式还要加上指数的5位),则自动突破nl 的限制。
2. 有以下程序:
执行时如输入:
A. B. C. ^ D.
【答案】A 则输出结果是( )。
【解析】程序执行过程为:读入一个字符存入缓存区,判断字符是否为如不是,继续读入字符,直到读入的字符是“#”,存入缓存区,退出循环,将缓冲区字符一个个输出,
结果为
3. 有以下程序:
程序运行的结果是( )。
【答案】B
【解析】数组x 有4列。fan 函数中for 循环的作用是将二维数组前4
行的对角线元素赋给
在主函数中,二维数组初始化为
可以看出对角线元素为
4. 有以下程序:
所以
程序运行后的输出结果是( )。 A. B. C. D.
【答案】A
【解析】程序首先对name 数组进行初始化,再对元素输出字符串时,以
最后输出
5. 有以下程序:
赋值为由于用格式作为结束标志,对应于0, 在输出时,系统认为后面已经结束,
程序的运行结果是。(口代表一个空格)
A.10,12,a
B. □□0,012,a
C.010,12,a
D. □□10,12,a
【答案】D
【解析】%4d 表示先输出十进制,共占4个字符,而10已占2个字符,故先输出2个空格,然后输出10; %0表示输出八进制,10的八进制为12; 表示输出十六进制,即a 。
6. 有以下程序
程序运行后的输出结果是( )。
A.3
B.1
C.2
D.4
【答案】B
【解析】函数' 有两个形参,第一个形参是传值,第二个形参是传引用,在函数fun 内部改变s 的值,则在函数fun 外部也会发生相应改变。f 是函数内部的局部变量,递归调用时,把局部变量f 以指 针的形式传入,在下一层函数中会对f 进行修改,当下一层函数返回后,再把当前局部变量f 赋值给形参s 。函 数调用过程如下表所示。