2017年天津工业大学0835软件工程高级语言程序设计考研复试核心题库
● 摘要
一、选择题
1. 以下关于C 语言的叙述中正确的是( )。
A.C 语言中的注释不可以夹在变量名或关键字的中间 B.C 语言中的变量可以在使用之前的任何位置进行定义
C. 在C 语言算术表达式的书写中,运算符两侧的运算数类型必须一致 D.C 语言的数值常量中夹带空格不影响常量值的正确表示 【答案】B
【解析】A 项错误,C 语言中,程序中的注释可以出现在程序中任何合适的地方,为了方便程序理解,一般不建议写在变量名或关键字的中间;C 项错误,在C 语言的算术运算符中,取余运算符“%”的两个运算分量必须是整数,但对于其他运算符,如“+”来说,两侧的运算符类型也可以不一样,例如左侧为一个字符类型,右侧为一个整数类型,系统在执行程序时会自动将字符类型转换为ASCII 值进行运算;D 项错误,C 语言的数值表示时各个数位必须紧靠在一起,否则编译系统只会识别紧靠运算符的一部分数值,另一部分数值会发生语法错误。
2. 以下能正确进行字符串赋值的语句组是( )。
A. B. C. D. 【答案】A
【解析】一个字符串包括字符部分和字符串结束标志。将字符指针变量初始化为一个字符串有两种方式,① 通过赋值运算使一个字符指针指向一个字符串常量:一个字符指针变量,并且初始化为一个字符串的首地址:
②定义
A 项正确。B 项定义一
个字符数组并为其赋初值,因为没有字符串结束标志,所以字符数组不是一个字符串,B 项错误。C 项定义字符数组,长度为3, 用字符串“abc”初始化,但是字符串的结束标志由于数组长度不够并未放入数组,所以数组不是一个完整的字符串,C 项错误。D 项正确 定义了数组,长度为4, 但是不能用这样的形式为数组赋值,需要按照元素赋值,D 项错误。
3. 有以下程序(注:字符a 的ASCII 码值为97):
程序运行后的输出结果是( )。 A.abc B.789 C.7890 D.979800 【答案】B
【解析】a 、b 、c 的ASCII 值分别为97、98、99。程序中执行输出S 中的内容与10进行模运算后的值,s 是一个指针,首先指向字符a ,先执行97%10, 结果为7; 然后++s,指针指向下一个字符b ,执行98%10, 结果为8, 直到s 所指为空,故最后输出的结果为789。
4. 以下选项中叙述正确的是( )。
A. 结构化程序的三种基本结构是循环结构、选择结构、顺序结构 B.C 语言源程序不编译也能直接运行 C. 使用N —S 流程图不能描述复杂算法
D. 计算机能够直接运行C 语言源程序,不必进行任何转换 【答案】A
【解析】编译就是把高级语言变成计算机可以识别的二进制语言,不经过编译的源程序是不能运行的,B 项错误。算法可以用各种描述方法进行描述,能用
流程图把算法的每一步都用一个
矩形框来表示,把一个个矩形框按执行的次序连接起来就是一个算法描述,无论算法复杂与否都
流程图描述,C 项错误。C 语言源程序需要经过编译和连接生成目标文件和可执行文件
后才能运行,D 项错误
5. 有以下程序:
程序运行后的输出结果是( )。 A.1, 2 B.1, 1 C.2, 3 D.3, 3 【答案】A
【解析】在整个程序运行期间,静态局部变量在内存的静态存储区中占据着永久性的存储单元,可以继续使 用存储单元中原来的值。程序先执行
即n 先自増1, 再调用f 函数,函数中进
行运算,结果仍为1,即第一个输出值即为1; 第二次调用f 函数时,执行
运算,结果为
2, 返回输出,即输出值为2, 然后n 再
6. 有以下程序:
程序运行时键盘输入9〈回车>,则输出的结果是( )。 A.10 B.11 C.9 D.8
【答案】A
【解析】“++”和“一”运算,当以前缀形式出现时,贝U 先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。判断条件中if (a++<9)是先用后加,即a 的值为9,所以条件不成立,但是a 已经进行了自增1操作,a 的值此时为10。执行else 语句时,因为打印a_-,是先用后减,所以先输出10,然后a 的值变为9。
7. 有以下程序:
程序的运行结果是( )。
A. B. C. D. 【答案】A
【解析】函数fun 的功能:对字符串数组S 中n 个字符串按照字符串的长度由小到大进行排序,要求输出 数组的第一个和第五个字符串的内容,即
相关内容
相关标签