2012上半年程序员考试真题及答案-下午卷.docVIP

  • 45
  • 0
  • 约8.54千字
  • 约 18页
  • 2021-08-22 发布于北京
  • 举报

2012上半年程序员考试真题及答案-下午卷.doc

2012上半年程序员考试真题及答案-下午卷 试题一 已知数组A[l:n]中各个元素的值都是非零整数,其中有些元素的值是相同的(重复)。为删除其中重复的值,可先通过以下流程图找出所有的重复值,并对所有重复值赋0标 记。该流程图采用了双重循环。 处理思路:如果数组A某个元素的值在前面曾出现过,则该元素赋标记值0。例如, 假设数组A的各元素之值依次为2, 5, 5,1,2, 5, 3,则经过该流程图处理后,各元素之值依次为2,5,0, 1,0,0,3。 填补流程图中的空缺(1)?(5) (1) n-1 (2) A[i] (3) i+1 ⑷ A[j] (5) A[j] 在处理大批数据记录时,删除重复记录(关键词重复的记录)是常见的操作。本题源自这种应用。刪除重复记录算法可分两步进行。第一步将重复ai现的多余元素标记为0; 第二步再删除所有的0元素。本题流程图只做第一步处理。 本流程图采用了对i和j的双重循环,对每个元素A[i],需要查看其后面的各个元素(用A[j]表示)是否与A[i]相同。因此,外层循环应对i=l,n-1进行,从而在(1)处应填“n-1”。内层循环应对j=i+l,n进行,从而在(3)处应填“i+1”。 在外循环处理中首先应判断A[i]是否已经标记为0,若是则无需进一步处理。因此, (2)处应填“A[i]”。而在内循环处理中首先应判断A[j]是否已经标记为0,若是则无需进一步处理。因此,(4)处应填“A[j]”。如果发现元素重复(即A[i]=A[j]),则需要再将 A[j]赋值为0 (标记),因此(5)处应填“A[j]”。 试题二 设在某C系统中为每个字符型数据分配1个字节,为每个整型(int)数据分配4个字节,为每个指针分配4个字节,sizeof(x)用于计算为x分配的字节数。 【问题1】 请写出以上C代码的运行结果。 4 4 20 1 11 4 1 10 sizeof是C语言提供的一个关键字,sizeof(x)用于计算为x分配的字节数,其结果与系统或编译器相关。若x是数组名时,用于计算整个数组所占用存储空间的字节数;若 x是指针,则无论其指向的目标数据是什么类型,x所占用的存储空间大小都相同(在同 一系统或编译环境中);若x是结构体变量或类型,则需要根据系统规定的对齐要求来计 算为x所分配空间的字节数。 根据说明,系统为每个字符型数据分配1个字节,为每个整型(int)数据分配4个 字节,为每个指针分配4个字节,那么sizeof(int)、sizeof(unsigned int)是计算整型数据和无符号整型数据的存储空间大小,sizeof(arr)是计算数组arr的字节数,它们的值分别为 4、4 和 20。 sizeof(Char)计算一个字符数据所占用的字节数,根据说明应为1。Sizeof(mystr)计算为字符数组mystr分配的空间大小,该数组的大小由字符串JustAtestVn决定,该字符串 的长度为10,还有一个串尾结束标志字符’\0,因此sizeof(mystr)的值为11。 ptr是指向字符数组mystr的指针,显然sizeof(ptr)的结果为4。由于*ptr指向了一个字符数据,因此sizeof (*ptr)的结果为1,函数strlen(ptr)计算ptr所指字符串的长度,结果为10。 【问题2】 (1) 请定义一个“只读”型的整型常量size,并将其值初始化为10; (2) 请定义一个指向整型变量a的指针ptr,使得ptr的值不能修改,而ptr所指向的目标变量的值可以修改(即可以通过ptr间接修改整型变量a的值)。 注:无需给出整型变量a的定义。 (1) const int size =10;或 int const size =10; (2) int* const ptr = a; 在C语言中,const关键字的一个作用是限定一个变量的值不能被改变,使用const 可以在一定程度上提高程序的安全性和可靠性。 const int size = 10;或 int const size = 10; 以上代码都可以定义一个“只读”型的整型常量size并将其值初始化为10。 当const用于修饰指针时,常见的情形如下: (1) const修饰的是指针所指向的对象,该对象不可改变,指针变量可改变。 const int *p; // 或 int const *p; (2) const修饰的是指针,该指针变量不可改变,其指向的对象可改变。 int *const p; (3) const修饰的是指针以及指针所指向的对象,都不可改变。 const int *const p; 【问题3】 某C程序文件中定义的函数f如下所示,请简要说明其中static的作用,以及形参 表 “const int arr

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档