。
(2)在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为 【2】 。
解析: 对于长度为n的有序线性表,在最坏情况下,二分查找只需要比较log2n次,而顺序查找需要比较n次。
(3)在面向对象的程序设计中,类描述的是具有相似性质的一组 【3】 。
解析: 将属性、操作相似的对象归为类,也就是说,类是具有共同属性、共同方法的对象的集合。
(4)通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为 【4】 。
解析: 软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。
(5)数据库管理系统常见的数据模型有层次模型、网状模型和 【5】 3种。
解析: 数据库管理系统是位于用户与操作系统之间的一层系统管理软件,是一种系统软件,是用户与数据库之间的一个标准接口。其总是基于某种数据模型,可以分为层次模型、网状模型和关系模型。
(6)设y是int型,请写出y为奇数的关系表达式 【6】 。
答案(y%2)==1
(7)设int a=5,b=6,表达式(++a==b--)?++a:--b的值是【7】 。
解析: 此表达式为三目运算符,++a的值为6,b--的值为6,则整个表达式的值为++a的值,++a的值为7。请注意前缀++,--和后缀++,--的区别。
(8)下列程序的输出结果是【8】。
maim ()
{char b []="Hello you";
b[5]=0;
printf ("%s\n",b);}
解析: 语句b[5]=0;相当于语句b[5]=′\0′,且′\0′为字符串结束标志,输出时遇到′\0′就停止输出。
(9)当调用函数时,实参是一个数组名,则向函数传递的是【9】。
解析: 在函数中,可以通过指针变量来引用调用函数中对应的数组元素,此操作是通过传递数组的首地址来实现。
(10)以下程序的输出结果是【10】。
int a=1234;
printf ("%2d\n",a);
解析: 在%与格式符之间插入一个整形数来指这输出宽度,并不影响数据的完整性,当插入的宽度小于实际的宽度时,则实际的宽度输出。
(11) 用高级语言编写的程序称为【11】程序,它可以通过解释程序翻译一句执行一句的方式执行,也可以通过编译程序一次翻译产生目标程序,然后执行。
解析: 用高级语言编写的程序称为源程序,源程序不能在计算机上直接运行,运行源程序有两种方式:一种是通过解释程序,对源程序逐句解释执行;另一种是先让编译程序将源程序一次翻译产生目标程序(目标程序是计算机可直接执行的机器语言程序,它是一种二进制代码程序),然后执行目标程序。
(12) 以下程序的输出结果是【12】。
main()
{int a=0;
a+=(a=8);
printf("%d\n",a);}
解析: 赋值表达式的值就是所赋值变量的值,本题中a+=8相当于a=a+8,对表达式逐步进行求解:
a+=(a=8)此时,a的值由于赋值为8,而不是0
a+=8
a=a+8
a=16
(13)函数 void fun(float *sn, int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。
void fun( float *sn, int n)
{ float s=0.0, w, f=-1.0;
int i=0;
for(i=0; i<=n; i++)
{ f=【13】* f;
w=f/(2*i+1);
s+=w; }
【14】=s;}
解析: C语言中实参变量和形参变量的数据传递是单向的“值传递”方式。指针变量作函数也要遵循这一规则。调用函数不可能改变实参指针变量的值,但可以改变实参指针变量所指变量的值。
(14)函数fun的功能是:根据以下公式求p的值,结果由函数值返回。m与n为两个正数且要求m>n。
例如:m=12,n=8时,运行结果应该是495.000000。请在题目的空白处填写适当的程序语句,将该程序补充完整。
#include
#include
float fun (int m, int n)
{ int i;