发信人: kygt (夕阳醉了), 信区: job
标 题: 贝尔阿尔卡特MCG(移动)软件笔试题
发信站: 饮水思源 (2004
年11月24日10:39:46 星期三), 站内信件
Part A是一些你的知识技能调查
Part B全是通信方面的东西,不会做了,题目都没看完
Part C是Computer Sience的东西。
前3道是选择题,很easy
1、用A[1...n]模拟栈,A[n]是栈底,当A[T]是当前栈顶时,POP操作后,当然栈顶是什么
A[T-1]
2、假设二叉树的根是为0层,那么第i层最多有几个节点?
2i
3、以下各项那项是结构化编程语言不允许的
a if-else b loop-while,for c goto d function
c
顺序结构,选择结构
(
亦称分支结构,和循环结构
4、给出软件生存周期图
软件生命周期
(SDLC)
的六个阶段
1
、问题的定义及规划
此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
2
、需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。
"
唯一不变的是变化本身。
"
,同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。
3
、软件设计
此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。
4
、程序编码
此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。
5
、软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。
6
、运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的要求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护包括纠错性维护和改进性维护两个方面。
5
、
C
的
Struct
和
C++
的
class
的什么不同之处
struct
,就是对程序员全局可见的数据与方法。简化数据逻辑结构的设计。可以说是一种自定义的数据结构。
而
class
,则是将数据与方法封装,即让行为与数据一致。则是一种编程方法。即客观世界在代码世界中的体现。体现的是一种编程思想。
C
里面:
struct
不能包含函数,而
class
可以。
在
C++
里面:都可以有函数,默认情况下
struct
中变量是
public,
而
class
中是
private
6、什么是virtual函数,为什么使用virtual函数
虚函数用来表现基类和派生类的成员函数之间的一种关系
.
虚函数的定义在基类中进行
,
在需要定义为虚函数的成员函数的声明前冠以关键字
virtual.
基类中的某个成员函数被声明为虚函数后
,
此虚函数就可以在一个或多个派生类中被重新定义
.
在派生类中重新定义时
,
其函数原型
,
包括返回类型
,
函数名
,
参数个数
,
参数类型及参数的先后顺序
,
都必须与基类中的原型完全相同
.
虚函数是重载的一种表现形式
,
是一种动态的重载方式
.
7、填空完成ip v4协议表头
8、你认为造成软件 crash的主要原因是什么,怎么预防?
9、用C自己写一个string copy函数
10、写一个双向链表的插入函数
Part D (optional)
给出你认为贝尔会感兴趣的
topic
我只做了Part C,那个ip v4也忘了,后面也就没兴趣做下去
发信人: evileye (邪眼), 信区: job
标 题: AND software 笔试题
发信站: 饮水思源 (2004
年11月24日10:56:29 星期三), 站内信件
part 1不定项选择(不懂,全通信)
part 2填空(3道非通信)
1、#define M(x,y) x*y
a=b=c=d=2 M(a+b, c+d)=?
8
2、Big_endian是指高字节存在高位:
big endian
是指低地址存放最高有效字节(
MSB
),而
little endian
则是低地址存放最低有效字节(
LSB
)。
用文字说明可能比较抽象,下面用图像加以说明。比如数字
0x12345678
在两种不同字节序
CPU
中的存储顺序如下所示:
Big Endian
低地址 高地址
----------------------------------------->
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 12 | 34 | 56 | 78 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Little Endian
低地址 高地址
----------------------------------------->
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 78 | 56 | 34 | 12 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Big Endian
低地址 高地址
----------------------------------------->
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 12 | 34 | 56 | 78 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Little Endian
低地址 高地址
----------------------------------------->
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 78 | 56 | 34 | 12 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
采用
big endian
方式存储数据是符合我们人类的思维习惯的。
计算机数据存储有两种字节优先顺序:高位字节优先和低位字节优先。
Internet
上数据以高位字节优先顺序在网络上传输,所以对于在内部是以低位字节优先方式存储数据的机器,在
Internet
上传输数据时就需要进行转换。
3、预处理器的作用:
宏替换,头文件包含,条件编译
part3 简答
1、简要说软件开发的过程,说说自己的编程风格,经验和教训
2
、开发
RTOS
需要考虑什么?描述一下抢占式
RTOS
的机制
3、用两种方法分配8个INT_32类型的数据,并说明其分配在内存中的位置
4、两个程序分别什么结果,都是memory方面的。ST笔试都考过了
5、如何防止头文件被多次引用
#ifndef a_h
#define a_h
#endif
part4 编程
1、写一个函数指针,并在函数中使用
2、在一个值从小到大的数组中用二分法查找一个值
3、写一个函数将字符串反过来,函数接口用两个指针
--
发信人: loverkiller (dd), 信区: job
标 题: 阿尔卡特(中国)的面试题目
发信站: 饮水思源站 (Tue Dec 5 19:00:11 2000), 转信
全部用C语言
1、自己定义数据结构,写出程序
在一个单向联表中,往 I 位置插入一个节点
2、自己定义数据结构,写出程序
二叉树的前序遍历
3、不允许使用系统时间,
写出一个随机数生成函数。
都是基本题目,
非常简单,
就是要注意时间
虽然鬼子没有讲时间限制,
但是实际上有的
不让应聘者知道
各位好运!
以上是阿尔卡特(中国)的面试
苏州阿尔卡特没有让偶去面试的说