一、选择题
1. 下面选项中的程序段,没有编译错误的是( )。
答:A
A 项正确,BCD 三项错误,【解析】首先定义了字符串指针sp ,然后执行字符串常量“Hello”。数组只有在初始化是可以被赋值,不能通过赋值语句将字符串常量或其他字符数组中的字符串直接赋给字符串变量。
2. 若有以下程序
则程序的输出结果是( )。
答:A
【解析】当把结构体变量中的数据作为一个整体传送给相应的形参时,传递的是实参结构体变量中的值,系统将为结构体类型形参开辟相应的存储单元,并将实参中各成员的值一一对应赋给形参中的成员,函数中形参结构体变量的改变不会影响到实参结构体变量。所以,在函数f 中对a , b 的操作不会影响main 函数中a , b 的值。
3. 以下选项中关于程序模块化的叙述错误的是( )
A. 把程序分成若干相对独立的模块,可便于编码和调试
B. 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块 C. 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序 D. 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序 答:C
【解析】把一个大程序分解成若干相对独立的子程序,大大提高了程序编制的效率。软件编制人员在进行程序设计时,首先应当集中考虑主程序中的算法,写出主程序后再动手逐步完成子程序的调用。对于这些子程序也 可用调试主程序的同样方法逐步完成其下一层,就是自顶向下、逐步细化、模块化的程序设计方法。
4. 有以下定义和语句:
能给w 中year 成员赋1980的语句是( )。
答:D
【解析】w 是一个结构体变量,Pw 是一个结构体指针变量,指向w 所在的内存单元。A 项错误,pw 是指针,
所以在引用其内部变量时应该用操作符是结构体workers 中的结构体成员s 中的成员。
5. 有以下程序:
程序的运行结果是( )。 A.-17,22,12 B.-17,12,22 C.-17,-22,-12 D.17,22,12
而不是BC 两项错误,year
答:A
【解析】整型常量有3种表示方法,①十进制整常量,没有前缀,输出格式控制符为%山②八进制整常量,以0作为前缀,输出格式控制符为%o ; ③十六进制整常量,以0x 或Ox 作为前缀,输出格式控制符为%x 。1-k=18,整型常量18用八进制表示为22,十六进制表示为12,故A 项正确。
6. 以下选项中,合法的C 语言实数是( )。
答:B
【解析】实型常量指数形式由十进制数加阶码标志符号)组
成。
为指数形式实数,B 项正确。
阶数不是整数,A 项错误。E13阶码标志前
缺少十进制数,C 项错误。
7. 有以下函数:
程序运行后的输出结果是( )。 A.98,18 B.39,11 C.39,18 D.98,11 答:B
【解析】根据该宏的定义,为39,11。
8. 有以下程序
或以及阶码(只能为整数,可以带
缺少阶码,D 项错误。
所以答案