"2010年杭州电子科技大学专升本C语言程序设计考试试卷,包含选择题和程序设计题目,考察C语言的基础知识和编程能力。"
在2010年的杭州电子科技大学专升本入学考试中,C语言程序设计是其中一门重要的科目。这份试卷主要测试学生的C语言基础知识,包括语法、数据类型、运算符、控制结构、函数、数组等核心概念。
1. 选择题中的第一题考察了循环语句`for`的理解。题目中给出的程序段通过`for`循环计算并打印变量`a`的值,循环条件为`i>=-1&&i<1`,每次循环`a`自增1。由于`i`在循环中会从1递减到-1,因此循环执行两次,`a`的值变为2,然后在循环外再次打印`a`,结果为2,答案是B。
2. 第二题涉及函数功能的判断。函数`fun1(char*x)`通过指针`y`遍历字符串`x`,直到遇到字符串结束符`\0`,返回`y`和`x`之间的距离,即字符串长度。所以该函数的功能是求字符串的长度,正确答案是A。
3. 第三题考察了C语言的运算符。 `%`是取模运算符,要求操作数必须为整型;`/`是除法运算符,对于浮点数也能进行运算;`!=`是不等于运算符,适用于所有数据类型;`!`是逻辑非运算符,同样适用于所有数据类型。因此,答案是A。
4. 第四题的程序`fun`打印出数组中小于或等于10的元素。在主函数中,调用`fun(a+1)`,从数组第二个元素开始打印,输出结果为B,即6109。
5. 第五题的程序涉及函数调用和静态变量。函数`func`中的`m`是静态变量,其值在函数调用之间保留。第一次调用`func(k,m)`时,`m`的初始值为0,第二次调用时`m`的值会被保留,导致每次调用结果不同。因此,输出结果是C,即7,13。
6. 第六题考察宏定义`#define`的使用。程序定义了一个宏`f(a,b)`表示`a`与`b`的乘积。在`main`函数中,`f(x,y)`会被替换为`x*y`,因为`x`和`y`是`double`类型,所以结果是浮点数。输出结果为`6.0`,但题目未给出完整代码,故无法确定输出格式和是否包含小数点。
以上分析了试卷中部分选择题的内容,这些题目反映了C语言的基本知识点,如循环控制、函数、字符串处理、运算符优先级、数组以及静态变量的作用。实际考试中,考生还需要解答其他题目,包括可能的编程题,以展示他们的编程能力和对C语言的深入理解。