2017年北京联合大学计算机科学与技术C语言程序设计复试实战预测五套卷
● 摘要
一、选择题
1. 有以下程序段:
已知字符a 的ASCII 码十进制值为97,则执行上述程序段后输出的结果是( )。 A. 因变量类型与格式描述符的类型不匹配输出无定值 B. 输出项与格式描述符个数不符,输出为零值或不定值 C.a ,97,12k=12 D.a ,97,k=12 【答案】D
【解析】字符变量中的值就是该字符的Ascn 代码值,
可以参与对整型变量所允许的任何运算。
c 表示以字符格式输出ch 的值,所以输出为a ; %d表示以十进制代码的形式输出。h
,然后以十进制的值,为97; k 没有对应的输出格式,不输出。在第二个语句中,首先输出“k=”
代码输出k 的值,为12。
2. 设有定义:inta=0,b=l, c=l;以下选项中,表达式值与其他三个不同的是( )。
A.b=a==c B.a=b=c C.a=c==b D.c=a!=c 【答案】A
【解析】赋值运算结合性为由右向左结合,成功实现赋值后以左值为返回值。逻辑表达式成立则返回1, 不成立返回0。A 项,逻辑表达式a==c不成立,则b=0, 表达式值为0;B 项,将c 赋值给b , b=l, 再将b 赋给a , a=l,表达式值为1; C 项,逻辑表达式c==b成立,则a=l,表达式值为1; D 项,逻辑表达式a!=c成立,则c=l,表达式值为1。A 项与其他项不同。
3. 若有定义语句:则执行语句:后,a 的值是( )。
A.-264 B.552 C.144 D.264
【答案】A
【解析】赋值运算结合性为自右向左
,
相当于
自右向左计算过程为
4. 下列形式中不合法的常量是( )。
【答案】C
【解析】
表示的是八进制的整型常量,但八进制的数字只能用0〜7表示。AD 两项为指
数形式的实数表示,在e 或E 的前面必须要有数字,且6或£后面的指数必须为整数;B 项,为整数常量。
5. 以下选项中合法的标识符是( )。
【答案】C
【解析】C 语言中标识符的命名规则是:标识符由字母、数字和下画线组成,并且第一个字符必须是字母或下画线。C 语言的标识符是区分大小写字母的。
6. 以下程序的功能是判断输入的一个整数是否能被3或7整除,若能整除,输出YES , 否则输出NO 。在下划线处应填入的选项是( )。
A. B. C. D.
【答案】A B 选项确。
A 选项正
【解析】求余运算符为%,是否能被3或7整除表达式为为逻辑与,本题应该为逻辑或
7. 有以下程序
C 选项中为赋值运算符,D 选项为除号,错误。不是逻辑运算符“==”,错误。
错误。
则以下函数调用语句错误的是( )。 A. B. C. D. 【答案】A 【解析】返回值是int ;
声明了一个函数指针,它可以指向一个函数,该函数的形参是两个int ,是把函数add 的地址赋给指针f ; 函数指针的调用有两种方式,
出现编译错误。
和
项
错误,已经表示调用函数add , 返回15,
8. 设有如下语句:
则以下叙述中错误的是( )。 A.DA TE 是用户定义的结构体变量 B.structDate 是用户定义的结构体类型 C.DA TE 是用户说明的新结构体类型名 D.struct 是结构体类型的关键字 【答案】A
【解析】C 语言允许用typedef 说明一种新类型名,其一般形式如下:typedef 类型名新类型DATE 是这种新类型的名字。DA TE ,名;题目中定义了新类型Date ,这种类型变量包含3个成员,是用户说明的新结构体类型名,不是结构体变量,C 选项叙述正确,A 选项叙述错误,选择A 选项。structDate 是用户定义的结构体类型,B 选项叙述正确。struct 是结构体类型的关键字,D 选项叙述正确。
二、设计题
9. 请根据以下各小题的要求设计C 应用程序(包括界面和代码)。
,它的功能是:统计各年龄段的人数。N 个年龄通过调用随机函数获请编写函数fun ( )
得,并放在主函数的 age 数组中;要求函数把0至9岁年龄段的人数放在年龄段的人数放在
中,把20至29岁年龄段的人数放在
100岁)以上年龄的人数放在
注意:部分源程序给出如下。
请勿改动主函数main ( )和其他函数中的任何内容,仅在函数fun 的花括号中填入所编
P ,把10至19岁
中,其余依次类推,把100岁(含
中。结果在主函数中输出。