您的当前位置:首页正文

中科创达C开发2-试题

2020-03-05 来源:客趣旅游网
1、 请定义一个宏常量SECONDS_PER_YEAR,表示每年有多少秒(不

考虑闰年)?(8分)

2、 在32位系统的程序中,存在如下结构类型定义?( Typedef struct _MSG_1_

{

char srcmodule; char destmodule; short msglen;

unsigned char body[0]; }MSG_1;

Typedef struct _MSG_2_ {

char srcmodule; char destmodule; short msglen;

unsigned char *pbody; }MSG_2;

设:sizeof(char) =1,sizeof(short) = 2;那么 (1)sizeof(MSG_1) = ? ; sizeof(MSG_2) = ? (2)请简练地给出解释

12分)

3、请给出如下问题的一种或多种修改方案(10分)

存在rlc.c和rrc.c两个源代码文件 Rlc.c:其中存在如下代码片段: Typedef struct _StatisData_ {

Unsigned int successnum; Unsigned int failurenum;

} StatixData

Static StatixData statixData

此前,类型StatixData及变量statixData只在文件rlc.c中使用,现在需要在文件rrc.c中访问rlc.c中变量statixData的failurenum字段的当前数值,请给出修改方案。

4、程序设计-字符串

编写函数reverse_string,他的原型如下: Void reverse_string(char *string)

函数把参数字符串中的字符反向排列,请使用指针而不是数组

下标,不要使用任何C函数库中用于操作字符串的函数,提示:不需要声明一个局部数组来临时存储参数字符串

5、程序设计-排序

编写一个名叫sort的函数,它用于对一个任何类型的数组进行

排序,为了使函数更为通用,它的其中一个参数必须是一个指向比较回调函数的指针,该回调函数由调用函数提供两个参数,也就是两个指向需要进行比较的值的指针。如果两个值相等,函数返回零;如果第1个值小于第2个,函数返回一个小于零的整数:如果第1个值大于第2个,函数返回一个大于零的整数。 Sort函数的参数将是:

1、一个指向需要排序的数组的第一个值的指针 2、数组中值的个数 3、每个数组元素的长度 4、一个指向比较回调函数的指针

Sort函数没有返回值。

你将不能根据实际类型声明数组参数,因为函数应该可以对不同类型的数组进行排序。如果你把数据当作一个字符数组使用,你可以用第3个参数寻找实际数组中每个元素的起始位置,也可以用它交换两个数组元素(每次一个字节)

因篇幅问题不能全部显示,请点此查看更多更全内容