.
两道智力题是:
1.499个人,每次奇数的人出列......最后只剩一人...问该人的初始位置是多少?
256
为小于
499
的最大的
2
的
n
次方数
如果每次偶数的出列,那就为
1
2.100个棋子,两个人按顺序取,每人每次至少取一个,至多取10个.....
取得最后一个者为胜者...问你会选择先取还是后取?为什么?
先取,每次剩下的为
11
的倍数
发信人: Berkeley (2003...The Moments...), 信区: job
标 题: Re: 威盛笔试归来
发信站: 饮水思源 (2004
年11月06日11:32:08 星期六), 转信
补充一道
if(0) 和 #if 0 的区别
#if 0
属于条件编译,指不对整个程序都编译,而是编译满足条件的那部分。
由于条件为假,因此不用编译
而
if(0)
中的语句要编译
发信人: wlm (外来妹-就你弹), 信区: Job
标 题: 威盛面题(LINUX)
发信站: 日月光华 (2004
年11月06日12:18:00 星期六), 站内信件
20道题,零零散散记了一些,望大家补充
1、XFree86的配置文件是(
/etc/X11/XFree86Config)
2、Linux共享库的搜索路径存放在哪个文件里面? (
ld.so.conf)
3、一个非空链表,每个节点有一个int型值,B为链表中的一节点,如何在不从链表头部
开始搜索的情况下把A插入到B的前面?
不要考虑双向链表,只需要把
A
插在
B
的后面,然后交换
A
和
B
的值就可以了
4、CPU信息存放在文件______
(/proc/cpuinfo)中,用什么命令可以看一个程序需要哪些
库?(不明)
5、编译内核时,make dep的下一步是_______(
make bzImage)
NND,2.6.6的内核不需要make dep
Make menuconfig
Make bzImage
Make modules
Make modules_install
Make install
6、内核代码list_entry宏的定义(哭,去年看的内核代码……)
#define list_entry(ptr, type, member) /
((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member)))
7、关于SMP环境下一些spin_lock的选择题,不难,都能蒙对
8、MPEG2的哪一个特性MPEG1中没有?
A、Motion compensation B、Frame Support C、Interlaced Video D、GOP
我蒙的C
9、下面哪一个是serial device, 哪一个是com device
A、/dev/hd* B、/dev/sd* C、/dev/lp* D、我忘了 E、/dev/ippp
设备文件
|
说明
|
/dev/hd*
|
IDE
硬盘设备,如hda1表示第1块IDE硬盘的第1个分区;hdb2表示第2块IDE硬盘的第2个分区
|
/dev/sd*
|
SCSI
硬盘设备,如sda1表示第1块SCSI硬盘的第1个分区;sdb2表示第2块SCSI硬盘的第2个分区
|
/dev/lp*
|
表示并口设备,如lp0表示第一个并口设备;lp1表示第2个并口设备
|
/dev/cua*
|
串口设备
|
/dev/tty*
|
终端设备
|
/dev/console
|
系统控制台
|
/dev/scd*
|
SCSI
光驱设备
|
/dev/ippp*
|
ppp
设备
|
/dev/isdn*
|
isdn
设备
|
发信人: job (我是匿名天使), 信区: job
标 题: 【合集】威盛S3软件工程师3笔试
发信站: 饮水思源 (2004
年11月07日00:16:03 星期天), 站内信件
1。看程序写运行结果
m=5;
If(m++>5) printf(“%d/n”, m);
Else printf(“%d/n”, --m);
5
2.简述 AND, XOR, OR的功能
3.calloc和malloc的区别
4.3x3九点,四条连线
5.1x1x1, 2x2x2, 3x3x3的三个容器。每个容器只能灌一次,如何量出13ml的水。
有人这样回答:关于罐水 是否可解为:
因为是立方体所以其边长是可资利用的条件
把8的容器套进27的容器 1的容器套进8的容器
然后知从27的容器罐水 罐到与8的容器平齐 这时 27罐的水是3*3*2-8=10
继续向27容器倒水 水溢入到8的容器 罐到与8中1的容器平齐 这时8容器中的水是2*2*1-1=3
27容器中的水加8容器中的水=10+3=13
如图所示 从左侧罐水一次
___________
| |
| _______|
| | |
| | ___|
|__|___|__|
6.求sizeof(p)
char *p=”hello!”
char p[]=”hello!”
void *p=malloc(100)
4
,7,4
void Func(char p[100])
7.一段很长的程序,要求写出程序的意图。基本上是把字节指针pData指向的一块内存数据复制到双字指针pwdData指向的内存区域。每次复制4字节,不足处补零。
8.
#define SQR(x) x*x
int a=10; int k=2; int m=1;
a/=SQR(k+m)/SQR(k+m);
a=?
1
9.一段程序找效率不高的地方。也是复制内存区域。
10.10个房间里放着随机数量的金币。每个房间只能进入一次,并只能在一个房间中拿金币。一个人采取如下策略:前四个房间只看不拿。随后的房间只要看到比前四个房间都多的金币数,就拿。否则就拿最后一个房间的金币。
a) 编程计算这种策略拿到最多金币的概率。
b) 证明这是不是最优策略。
发信人: jjli ( 叽叽喳喳的小鸟 ), 信区: Job
标 题: 威盛的Software tools Engineer笔试题
发信站: 武汉白云黄鹤站 (2004
年11月09日20:56:54 星期二)
Software programming test on C++:
1.How good do you see yours programming skills?Please circle your answers
C: Fair/Good
/Excellent
C++: Fair/
Good/Excellent
2.Please estimate your programming experince:
How many lines of code are your biggest C Program ever written excluding the standard linked library?
8000
How many lines of code are your biggest C++ program ever written excluding the standard linked library?
3.Please explain the following terms
Data Encapsulation 数据封装
Inheritance 继承
Polymorphism 多态
面向对象技术的基本概念
·
面向对象技术是以对象为基础、以事件或者消息来驱动对象执行处理的程序设计技术。
·
对象是包含客观事物特征的抽象实体,是属性和行为的封装体。在程序设计领域,可以用“对象
=
数据
+
作用于这些数据上的操作”这一公式来表达。
·
类是对具有相同属性和行为的一组对象的抽象描述。
·
事件是系统产生的动作或是运行应用程序产生的动作。事件通过消息描述,消息是描述事件发生的信息。
·
消息是对象间交互的手段,是要求某个对象执行某个操作的规格说明。
2.面向对象技术的基本特征
·
抽象性是指忽略事物中与当前目标无关的非本质特征,而强调本质特征的特征。
·
封装性是指把对象的属性和行为封装在一起,并尽可能隐藏对象的内部细节的特征。
·
继承性是指特殊类的对象拥有其一般类的属性和行为的类与类之间层次关系的特征。
·
多态性是指不同对象收到相同消息时可以产生多种不同的行为方式的特征。
5
.为什么要应用继承机制
?
【问题解答】
客观事物既有共性,也有特性。如果只考虑事物的共性,而不考虑事物的特性,就不能反映出客观世界中事物之间的层次关系。抽象机制是考虑事物的共性,继承机制是考虑事物的特性,这样才能完整地描述客观世界的层次关系。继承能使软件模块具有可重用性、独立性,缩短软件开发周期,提高软件开发效率,同时使软件易于维护。
6
.
C++
对多态性的支持体现在哪些方面
?
【问题解答】
C++
的多态性分为编译时多态和运行时多态。编译时多态是指在程序的编译阶段由编译系统根据参数确定与哪个同名的函数相联系;运行时多态是指在程序的运行阶段才根据产生的信息确定需要调用哪个同名的函数。
C++
通过函数重载和运算符重载实现编译时多态,通过继承和虚函数来实现运行时多态
4.What is a virtual base class?How do you declare such a class?How would you use it in a design?
虚基类,多继承,最顶端是同一基类
Class a : public virtual b{
}
5.What is a template or container class?How do you declare such a class?
模板,
容器类
Template class name {
}
6.Which are the access control levels for C++ language?
访问控制级别
Public
Private
Protect
7.What is RTTI?How do you achieve RTTI in your design?
运行时类型信息,通过
dynamic_cast
和
typeid
8.What are the major differences between static and non-static member functions?
静态成员函数
,
只能访问静态成员变量
,
也只能调用静态成员函数
9.How do you call a regular member function from a static member function?
Please use psendo-code to provide your answer
一个静态成员函数没有
this
指针,所以它无法访问非静态的成员函数
10.How do you declare/define a type of pointer to a class member function?
Please use psendo-code to provide your answer
假设类
A
Int A::fun1(int a);
则
int (*A::p)(int a);
p= fun1;
11.Please explain the following types:
Here is a short list of combinations and their meanings:
1.Reference-Can change the referenced object
2.Const-Reference
3.Const-Pointer-
4.Pointer-Const-
5.Const-Pointer-Const-
CFoo Instance
CFoo &ReferenceToInstance=Instance; //1
const CFoo &ConstReferenceToInstance=Instance; //2
const CFoo *pConstPointer=&Instance; //3
CFoo *const pPointerConst=&Instance; //4
const CF00 *const pPointerConst=&Instance; //5
12.What are top-down and bottom-up approach?How do you usually use them?
测试方法
13.Please use pseudo-code to design a set of stack operations with template
设计一个栈模板
14.Please use pseudo-code to design a set of double linked list operations with template
设计一个双向链表模板
Optional Questions:(for extra credits)
15.Please write a
unix makefile for Question13
16.Please explain these common sections:text,data,bss
Text
代码
Data
初始化的全局或静态数据
Bss
未初始化的全局或静态数据