一、选择题
1. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。
A. (n-n/10×10)×10+n/10
B.n-n/l0×l0+n/10
C.n/10+(n-n/10)
D. (n-n/10)×10+(n/10)
答:A
A 项n/10得到十位数字,n-n/10得到个位数字,,n-n/10【解析】将个位数乘以10加上十位数字(
×10)×l0+n/10实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项n-n/10×10得到个位数字,n/10为十位数字,n-n/10×l0+n/10实现两位整数个位数与十位数之和,B 项错误。C 项n/10+(n-n/10)=n, 不能实现题目中要求,C 项错误。D 项n/10是十位数字,n-n/10为原两位整数减去十位数字,不是个位数字,D 项错误。
2. 有以下程序:
程序运行后的输出结果是( )。
A.-1
B.0
C.1
D.7
答:A 【解析】
和运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当
直到while 判断为0以后缀形式出现时,贝U 先取值,再进行加一或减一操作。程序中执行
时才跳出循环,执行下条语句,即a 为0时再执行后输出,最终输出的结果为-1。
3. 按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是( )。
A. 大写字母
B. 连接符
C. 数字字符
D. 下划线
答:B
【解析】C 语言中标识符只能由下划线、字母和数字组成,且不能以数字开头。
4. 以下叙述正确的是( )。
A.C 程序总是以main ( )作为程序执行的起始行
B.main ( )函数若不带参数,其后面的一对圆括号可省略
C. 函数体内的定义语句和可执行语句允许任意穿插出现
D.C 语言中的语句之间必须用分号作为分隔符
答:A
【解析】main ( )函数后面的括号告诉编译器这是一个函数,不可以省略,排除B 选项;在复合语句中, 不仅可以有执行语句,还可以有定义语句,定义语句应该出现在执行语句的前面,故排除C 选项;C 语言中的某 些语句可以不用分号,例如if 语句,宏定义,故D 选项错误;答案为A 选项。
5. 有以下程序(说明:字母A 的ASCII 码值是65):
程序运行后的输出结果是( )。
A.BY
B.BT
C.YT
D.YE
答:D
【解析】函数只会输出ASCII 码值为奇数的字母,执行fun (a )时,依次取出a □中的字母,当取第一个字母8时,因为8的ASCII 码值为66, 所以不会输出B , 字母Y 的ASCII 码值为89, 字母T 的ASCII 码值为84,字母E 的ASCII 码值为69,所以最后输出字母YE 。
6. 若有定义语句inta=10;doubleb=3.14;, 则表达式'A'+a+b值的类型是( )。
A.char
B.int
C.double
D.float
答:C
【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使
a 是整型,b 是double 两边的类型达到一直后,再进行运算,转换的规则是由“低到高V A' 是字符型,
型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为double 型,即选择答案C 。
7. 以下选项中不合法的标识符是( )。
答:C
【解析】标识符是由若干个字符组成的字符序列,用来命名程序的一些实体。语法规则为:①标识符由字母、数字或下画线组成;②第一个字符必须是字母或下画线;③标识符最多由274个字符组成;④在标识符中严格区 分大小写字母;⑤关键字不能作为自定义的标识符在程序中使用。
8. 有如下程序:
程序运行后的输出结果是( )。
A.NAME0
B.NAMEE
C.NAME D.
答:A
【解析】程序执行过程为:调用函数disp ,将字符串“NAME”首地址传给指针str , 在while 循环中,依次
判断字符串中字符是否为
时,结束循环,返回字符NAME0。
9. 以下叙述正确的是( )。
A. 只使用三种基本结构即可解决任何复杂问题
B.C 语言程序并不是必须要定义main ( )函数
不是的则输出字符,
否则结束循环。当码0, 并输出。程序运行后的输出结果是: