Swift 面试题及其答案

时间:2025年02月18日

/

来源:探长

/

编辑:本站小编

收藏本文

下载本文

下面是小编为大家收集的Swift 面试题及其答案,本文共8篇,仅供参考,欢迎大家阅读,希望可以帮助到有需要的朋友。本文原稿由网友“探长”提供。

篇1:Swift 面试题及其答案

虽然Swift出生才一年,但是它已经成为最流行的编程语言之一了。它的语法很简单,以至于当它发布的时候,JavaScript开发者感觉就像下图一样。

事实上,Swift是一种复杂的语言。它包含面向对象和函数方法这两个方面,并且随着新版本的发布在一直进化。

你可以用这些问题来测试应聘者关于Swift方面的知识水平,或者测试一下你自己。如果你不知道答案,没关系,没一个问题下面都有答案供你学习。

这些问题包含两个方面:

笔试问题:通过电子邮件做一个编程测试是极好的,因为这涉及到写大量的代码,从代码质量上可以看出一个人的水平。

面试问题:电话面试或者面对面面试也是很好的,因为对面试者来说口头交流会更方面。

每个方面有分成三个等级:

初级:适合读了一到两本有关Swift的书,并且已经开始用Swift开发应用程序的初学者。

中级:适合那些对Swift语言的概念有深刻理解和强烈兴趣的,并且一直在阅读大量有关Swift的博客文章并进行实践的中级工程师。

高级:适合那些以探索Swift语言知识为乐趣,挑战自己,使用前言技术的人们。

假如你想回答这些问题,我建议你在回答这些问题之前,打开Playground运行一下这些问题的代码。这些问题的答案都在Xcode 7.0 Beta 6 版本中测试过。

准备好了吗?系好安全带,现在就开始!

笔试问题

初学者

问题1、(Swift 1.0及其之后的版本的问题)有什么更好的方法来写下面的for循环?

for var i = 0; i < 5; i++ {

print(“Hello!”)

}

答案:

for _ in 0...4 {

print(“Hello!”)

}

Swift 实现了两个数组运算符closed operator 和 half-operator.前者包含数组中得所有值。例如:下面的例子包含从0到4得所有整数

0...4

half-operator不包含数组中的最后一个元素,下面的例子会得到的结果和上面的一样:

0..<5

问题2C Swift 1.0 or later

思考下面的问题:

struct Tutorial {

var difficulty: Int = 1

}

var tutorial1 = Tutorial

var tutorial2 = tutorial1

tutorial2.difficulty = 2

tutorial1.difficulty 和 tutorial2.difficulty的值分别是多少?假如Tutorial是一个类,会有什么不同?并说明原因。

答案:tutorial1.difficulty 的值是1,然而tutorial2.difficulty的值是2.

在Swift中结构体是值类型,他们的值是复制的而不是引用的。下面的一行代码意思是复制了tutorial1的值并把它赋值给tutorial2:

var tutorial2 = tutorial1

从这一行开始,tutorial2值得改变并不影响tutorial1的值。

假如Tutorial是一个类,tutorial1.difficulty和tutorial2.difficulty的值将都会是2.在Swift中类对象都是引用类型。tutorial1属性的任何改变将会反应到tutorial2上,反之亦然。

问题3 C Swift 1.0 or later

view1声明成var类型,view2声明let类型。这里有什么区别吗?下面的最后一行代码能编译吗?

import UIKit

var view1 = UIView()

view1.alpha = 0.5

let view2 = UIView()

view2.alpha = 0.5 // Will this line compile?

答案:view1是个变量可以重新赋值给一个新的实例化的UIView对象。使用let你只赋值一次,所以下面的代码是不能编译的:

view2 = view1 // Error: view2 is immutable

但是UIView是一个引用类型的类,所以你可以改变view2的属性,也就是说最后一行代码是可以编译的:

let view2 = UIView()

view2.alpha = 0.5 // Yes!

问题4 C Swift 1.0 or later

下面的代码是把数组里面的名字按字母的顺序排序,看上去比较复杂。尽最大的可能简化闭包里的代码。

let animals = [“fish”, “cat”, “chicken”, “dog”]

let sortedAnimals = animals.sort { (one: String, two: String) -> Bool in

return one < two

}

答案:

第一个简化的是参数。系统的参数类型推断功能,可以计算出闭包里面参数的类型,所以你不必定义参数的类型:

let sortedAnimals = animals.sort { (one, two) -> Bool in return one < two }

函数返回值也可以被推断出来,所以简化掉,代码变为:

let sortedAnimals = animals.sort { (one, two) in return one < two }

这个$i 符号可以代替参数名字,代码进一步简化为:

let sortedAnimals = animals.sort { return $0 < $1 }

在一个独立的闭包内,return这个关键字是可以省略的。最后声明的返回值就是闭包的返回值:

let sortedAnimals = animals.sort { $0 < $1 }

这简化很多了,但是我们不能止步于此!

对于字符串,有一个定义如下的比较函数:

func Bool

这个简单的小函数可以使你的代码简洁如下:

let sortedAnimals = animals.sort(<)

注意每一步的编译结果都相同,但是最后一步你的闭包里只有一个字符。

问题5 C Swift 1.0 or later

下面的代码创建了两个类Address和Person,并且创建了两个实例对象分别代表Ray和Brain.

class Address {

var fullAddress: String

var city: String

init(fullAddress: String, city: String) {

self.fullAddress = fullAddress

self.city = city

}

}

class Person {

var name: String

var address: Address

init(name: String, address: Address) {

self.name = name

self.address = address

}

}

var headquarters = Address(fullAddress: “123 Tutorial Street”, city: “Appletown”)

var ray = Person(name: “Ray”, address: headquarters)

var brian = Person(name: “Brian”, address: headquarters)

假设Brain搬家到街对面的建筑物里,那么你会这样更新他的地址:

brian.address.fullAddress = “148 Tutorial Street”

这样做将会发生什么?错误出在什么地方呢?

答案:Ray同样会搬家到新的建筑物里面。Address是一个引用类型类,所以无论你是通过ray或者brain访问headquarters,访问都是同一个实例化对象。headquarters对象的变化也会引起ray和brain的变化。你能想象如果Brain收到Ray的邮件或者相反Ray收到Brain的邮件,将会发生什么?解决方案是创建一个新的Address对象赋值给Brain或者把Address声明成为结构体而不是一个类。

中级

问题1C Swift 2.0 or later

思考下面的代码:

var optional1: String? = nil

var optional2: String? = .None

答案:两者没有什么不同。Optional.None(简称.None)是optional变量值初始化的标准方法,而nil只是.None语法的一种修饰。事实上下面语句输出是正确的:

nil == .None // On Swift 1.x this doesn't compile. You need Optional

.None

记住枚举类型的Optional下的None:

enum Optional{

case None

case Some(T)

}

问题2-Swift 1.0 or later

下面是thermometer作为类和结构体的例子:

public class ThermometerClass {

private(set) var temperature: Double = 0.0

public func registerTemperature(temperature: Double) {

self.temperature = temperature

}

}

let thermometerClass = ThermometerClass()

thermometerClass.registerTemperature(56.0)

public struct ThermometerStruct {

private(set) var temperature: Double = 0.0

public mutating func registerTemperature(temperature: Double) {

self.temperature = temperature

}

}

let thermometerStruct = ThermometerStruct()

thermometerStruct.registerTemperature(56.0)

但是这段代码编译失败了,请问哪里报错,出错的原因是什么。

建议:在使用Playground之前,认真阅读代码并思考。

答案:代码的最后一行不会被编译通过。ThermometerStruct结构体中正确的声明了一个mutating属性函数,它是用来改变结构体内部temperature属性的值的,但是编译器不通过的原因是,通过let创建的不可变的registerTemperature结构体调用了registerTemperature函数。

问题3C Swift 1.0 or later

下面的代码输出是什么?并说明理由。

var thing = “cars”

let closure = { [thing] in

print(“I love \\(thing)”)

}

thing = “airplanes”

closure()

答案:输出的是:I love cars。当闭包被声明的时候,抓捕列表就复制一份thing变量,所以被捕捉的值并没有改变,即使你给thing赋了一个新值。

如果你要忽视闭包中捕捉列表的值,那么编译器引用那个值而不是复制。这种情况下,被引用变量的值的变化将会反映到闭包中,正如下面的代码所示:

var thing = “cars”

let closure = {

print(“I love \\(thing)”)

}

thing = “airplanes”

closure() // Prints “I love airplanes”

问题4C Swift 2.0 or later

下面是一个全局函数,这个函数的功能是计算数组中特殊值得个数。(待校验)

func countUniques(array: Array) -> Int {

let sorted = array.sort(<)

let initial: (T?, Int) = (.None, 0)

let reduced = sorted.reduce(initial) { ($1, $0.0 == $1 ? $0.1 : $0.1 + 1) }

return reduced.1

}

它使用了< 和==运算符,他们限制着T(占位类型)的实际类型,也就是说T必须遵循Comparable协议。你可以这样使用它:

countUniques([1, 2, 3, 3]) // result is 3

现在要求你重写上面的方法作为Array的扩展方法,然后你就可以这样写代码:

[1, 2, 3, 3].countUniques() // should print 3

如何实现?

答案:在Swift 2.0 中,泛类型可以使用类型约束条件被强制扩展。但是假如这个泛类型不满足这个类型的约束条件,那么这个扩展方法既不可见也无法调用。

所以countUniques全局函数可以作为Array的扩展方法被重写如下:

extension Array where Element: Comparable {

func countUniques() -> Int {

let sorted = sort(<)

let initial: (Element?, Int) = (.None, 0)

let reduced = sorted.reduce(initial) { ($1, $0.0 == $1 ? $0.1 : $0.1 + 1) }

return reduced.1

}

}

注意:只有元类型实现了Comparable协议新的方法才可以被使用。例如,如果你在全部是UIView对象的数组中调用countUniques,编译器将会报错。

import UIKit

let a = [UIView(), UIView()]

a.countUniques() // compiler error here because UIView doesn't implement Comparable

问题5- Swift 2.0 or later

下面一个函数的功能是计算两个double(optional)类型的数的相除的结果。在执行除法之前,必须提前满足三个条件:

被除数必须包含nil值

除数必须为包含nil值

除数不能为零

func divide(dividend: Double?, by divisor: Double?) -> Double? {

if dividend == .None {

return .None

}

if divisor == .None {

return .None

}

if divisor == 0 {

return .None

}

return dividend! / divisor!

}

上面的函数可以正常使用,但是会存在两个问题:

篇2:百度面试题及答案

* 有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。

* 木杆很细,不能同时通过一只蚂蚁。开始 时,蚂蚁的头朝左还是朝右是任意的,它们只会朝前走或调头,

* 但不会后退。当任意两只蚂蚁碰头时,两只蚂蚁会同时调头朝反方向走。假设蚂蚁们每秒钟可以走一厘米的距离。

* 编写程序,求所有蚂蚁都离开木杆 的最小时间和最大时间。

*

*

* 分析:题目中的蚂蚁只可能相遇在整数点,不可以相遇在其它点,比如3.5cm处之类的,也就是可以让每只蚂蚁走 1秒,然后

* 查看是否有相遇的即可.

*

* 这样我的程序实现思路就是,初始化5只蚂蚁,让每只蚂蚁走1秒,然后看是否有相遇的,如果有则做相应处理.当每只蚂蚁都

* 走出木杆时,我就记录当前时间.这样就可以得到当前状态情况下,需要多久可以走出木杆,然后遍历所有状态则可以得到所胡

* 可能.

*/

package baidu;

public class Ant {

/*

* step 表示蚂蚁每一个单位时间所走的长度

*/

private final static int step = 1;

/*

* position表示蚂蚁所处的初始位置

*/

private int position;

/*

* direction表示蚂蚁的前进方向,如果为1表示向27厘米的方向走, 如果为-1,则表示往0的方向走。

*/

private int direction = 1;

/*

* 此函数运行一次,表示蚂蚁前进一个单位时间,如果已经走下木杆则会抛出异常

*/

public void walk() {

if (isOut()) {

throw new RuntimeException(“the ant is out”);

}

position = position + this.direction * step;

};

/**

* 检查蚂蚁是否已经走出木杆,如果走出返回true

*

*/

public boolean isOut() {

return position <= 0 || position >= 27;

}

/**

* 检查此蚂蚁是否已经遇到另外一只蚂蚁

* @param ant

* @return 如果遇到返回true

*/

public boolean isEncounter(Ant ant) {

return ant.position == this.position;

}

/**

* 改变蚂蚁的前进方向

*/

public void changeDistation() {

direction = -1 * direction;

}

/**

* 构造函数,设置蚂蚁的初始前进方向,和初始位置

* @param position

* @param direction

*/

public Ant(int position, int direction) {

this.position = position;

if (direction != 1) {

this.direction = -1;//方向设置初始位置,比如为0时,也将其设置为1.这样可以方便后面的处理

} else {

this.direction = 1;

}

}

}

/////////////////////////////////////////////////////////

package baidu;

public class Controller {

public static void main(String[] args) {

int time = 0;

for (int i = 0; i < 32; i++) {

Ant[] antArray = getAntList(getPoistions(), getDirections(i));

while (!isAllOut(antArray)) {

for (Ant ant : antArray) {

if (!ant.isOut()) {

ant.walk();

}

}

time++;

// 查看是否有已经相遇的Ant,如果有则更改其前进方向

dealEncounter(antArray);

}

System.out.println(time);

// 将时间归0,这样可以重新设置条件,再次得到全部走完所需要的时间.

time = 0;

}

}

/**

* 这个函数的算法很乱,但暂时能解决问题

*

* @param list

*/

public static void dealEncounter(Ant[] antArray) {

int num_ant = antArray.length;

for (int j = 0; j < num_ant; j++) {

for (int k = j + 1; k < num_ant; k++) {

if (antArray[j].isEncounter(antArray[k])) {

antArray[j].changeDistation();

antArray[k].changeDistation();

}

}

}

}

/**

* 因为有5只Ant,所以组合之后有32种组合.刚好用5位二进制来表示,如果为0则表示Ant往0的方向走 如果为1,则表示往27的方向走

*

* 注:在通过Ant的构造函数设置初始值时,通过过滤把0修改成了-1.

*/

public static int[] getDirections(int seed) {

int result[] = new int[5];

result[0] = seed % 2;

result[1] = seed / 2 % 2;

result[2] = seed / 4 % 2;

result[3] = seed / 8 % 2;

result[4] = seed / 16 % 2;

System.out.println(“directions is ” + result[0] + “|” + result[1] + “|”

+ result[2] + “|” + result[3] + “|” + result[4]);

return result;

}

/**

* 批量设置Ant的初始位置,这样设置不是十分必要,可以直接在代码中设置

*

* @return

*/

public static int[] getPoistions() {

return new int[] { 3, 7, 11, 17, 23 };

}

/**

* 取得设置好初始值的5只Ant

*

* @param positions

* @param directions

* @return

*/

public static Ant[] getAntList(int[] positions, int[] directions) {

Ant ant3 = new Ant(positions[0], directions[0]);

Ant ant7 = new Ant(positions[1], directions[1]);

Ant ant11 = new Ant(positions[2], directions[2]);

Ant ant17 = new Ant(positions[3], directions[3]);

Ant ant23 = new Ant(positions[4], directions[4]);

return new Ant[] { ant3, ant7, ant11, ant17, ant23 };

}

/**

* 判断是否所有的Ant都已经走出了木杆,也就是设置退出条件

*

* @param antArray

* @return

*/

public static boolean isAllOut(Ant[] antArray) {

for (Ant ant : antArray) {

if (ant.isOut() == false) {

return false;

}

}

return true;

}

}

编程:

用C语言实现一个revert函数,它的功能是将输入的字符串在原串上倒序后返回。

2 编程:

用C语言实现函数void * memmove(void *dest,const void *src,size_t n)。memmove

函数的功能是拷贝src所指的内存内容前n个字节

到dest所指的地址上。

3 英文拼写纠错:

在用户输入英文单词时,经常发生错误,我们需要对其进行纠错。假设已经有一个包

含了正确英文单词的词典,请你设计一个拼写纠错

的程序。

(1)请描述你解决这个问题的思路;

(2)请给出主要的处理流程,算法,以及算法的复杂度;

(3)请描述可能的改进(改进的方向如效果,性能等等,这是一个开放问题)。

4 寻找热门查询:

搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串

的长度为1-255字节。假设目前有一千万个记录,

这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个

。一个查询串的重复度越高,说明查询它的用户越多,

也就是越热门。请你统计最热门的10个查询串,要求使用的内存不能超过1G。

(1)请描述你解决这个问题的思路;

(2)请给出主要的处理流程,算法,以及算法的复杂度。

5 集合合并:

给定一个字符串的集合,格式如:

{aaa bbb ccc}, {bbb ddd},{eee fff},{ggg},{ddd hhh}

要求将其中交集不为空的集合合并,要求合并完成后的集合之间无交集,例如上例应

输出

{aaa bbb ccc ddd hhh},{eee fff}, {ggg}

(1)请描述你解决这个问题的思路;

(2)请给出主要的处理流程,算法,以及算法的复杂度

(3)请描述可能的改进(改进的方向如效果,性能等等,这是一个开放问题)。

////////////////////////////////1

1 题

char *revert(char * str)

{

int n=strlen(str);

int i=0;

char c;

for(i=0;i

{

c=str;

str=str[n-i];

str[n-i]=c;

}

return str;

}

///////////////////////////////////

2 题

void * memmove(void *dest,const void *src,size_t n)

{

assert((dest!=0)&&(src!=0));

char * temp=(char * )dest;

char * ss=(char * )src;

int i=0;

for(;i< p=“”>

{

*temp++=*ss++;

}

return temp;

}

/////////////////////////////////////////////////

3 题

(1)思路 :

字典以字母键树组织,在用户输入同时匹配

(2)

流程:

每输入一个字母:

沿字典树向下一层,

a)若可以顺利下行,则继续至结束,给出结果;

b)若该处不能匹配,纠错处理,给出拼写建议,继续至a);

算法:

1.在字典中查找单词

字典采用27叉树组织,每个节点对应一个字母,查找就是一个字母

一个字母匹配.算法时间就是单词的长度k.

2.纠错算法

情况:当输入的最后一个字母不能匹配时就提示出错,简化出错处理,动态提示

可能 处理方法:

(a)当前字母前缺少了一个字母:搜索树上两层到当前的匹配作为建议;

(b)当前字母拼写错误:当前字母的键盘相邻作为提示;(只是简单的

篇3:emba面试题答案

EMBA现在很多院校都在招生,每家院校的面试都是不太一样,但综合一点就是考试难度上还是可以的。因为EMBA入学笔试、面试均由培养单位自行组织,门槛大为降低。EMBA笔试将考查学员经济、管理的基础知识,面试主要测试申请者成为优秀管理人才的潜质。

面试是进入EMBA殿堂的一个重要门坎,各EMBA培养院校都非常重视面试,希望从众多达到笔试录取分数高的考生当中,挑选出具有培养前途、管理潜质及深厚背景的优秀考生进入学校学习,为学校增光添彩。

面试准备的基本内容

面试一般时间都很短,个人面试长不会超过半小时,短则10分钟左右,集体面试一般也不会超过1小时,短则30分钟左右。各院校面试方式的选择是不一样的,需要做不同的准备。

对个人面试,需要准备四部分内容:

第一部分是对自己的面试自我介绍可以有文字稿准备、口头陈述准备两种方式,不论哪种形式都需要深思熟虑、出口成章。

关键是将自己工作生活中的亮点发掘展现出来,千万别说成流水账。通过亮点的展现给考官以良好的第一印象,产生积极的首因效应。可以在这部分间接或直接把你为什么要学EMBA的思想动力、雄心壮志表达出来。这一部分对录取有重要影响,可达35%以上。

第二部分内容一般是考官随机提问。

这一部分提问主要针对的是在考生自我陈述中所反映出的信息当中,考官感兴趣或不清楚的地方做一个追加提问,也可能会结合你的工作实际提出一些现实中遇到的管理问题,你是如何处理的,相对比较灵活而没有答案,因此信息的把握主要在考生自己心中,只要随机应变、自然回答、自圆其说就可以了。如果在面试中你陈述的内容有不真实的情况,在此处被考官发现,那对于你的面试过关是非常不利的。而这一部分如果考官对于你工作中的亮点或行业感兴趣,提出一些探讨导向性问题,你可以积极发挥、充满信心,这对于通过面试是很有帮助的。但是要注意不要得意忘形并流露出骄傲之态。

第三部分内容为管理基本知识和原理提问,有些学校采取抽题目方式。

对于这一部分内容,因为大家都复习过管理,不必紧张,在面试前花一些时间,将备考时看过的一些基本教材回顾一下,不至于将内容全还给老师就可以了。当然管理实践经验丰富的人完全没有必要死背书本来回答面试问题,只要结合以下你的工作实践,将你是如何在实践中处理问题的陈述一下就可以了,这样更能反映你的管理背景和潜能。

第四部分内容,有些学校为时事政治内容、有些学校为管理灵活应用问题。

如果是时事政治内容,请将备考政治资料再看一遍;如果是管理灵活应用,则需要有进取创新精神,这时考心理、考反应,切莫紧张。一般提出的面试问题都很矛盾有冲突,让你不知如何回答。往往这类问题是没有标准答案的,完全看你临场处事、变化能力。

温馨提示:对于团体面试,采取的学校不多,面试难度较大,既反映个人能力也反映团体合作精神。从选择讨论题目,到相互之间的配合,冲突在所难免,而最后团队精神的体现,对小组的成绩影响是非常大的。能够用人容人,或善于被人用,都是管理者必备的素质。

[emba面试题答案]

篇4:某公司面试题及答案

蓝色局部为我的作答

Software Configuration Management Question

perl

Basic

1. Which statement is wrong:

A. $_= hello world;

B. $a=hello world;

C. my $b,$a=hello world;

D. my ($a,$b)=(0,hello world);

Item C: $b is empty and $a is ‘hello world’

All of items is correct in program syntax, and can run.

2. The expression should be (B), then the following code can run correctly:

$a=0;$b=55;

while (expression)

{

$a+=2;

}

print “$a/n”;

A. $a = $b

B. $a*$a <= $b

C. $a != $b

D. $b == 0

3. @array is an array variable, what is output of “print @array;” :A

A. Each element of this array

B. The size of this array

C. The first element of this array

D. Nothing

4. “$a = @array;”, what is value of $a: B

A. The first element’s value of this array

B. The size of this array

C. This line code is wrong

D. N/A

5. Which code snippet can print all elements in cd: B

A. foreach $Var (keys cd)

{

print “$Var /n”;

}

B. for ($I=0;$I< em=“”“”>

{

print “$cd{$I} /n”;

}

C. while ($Var (keys cd))

{

print “$Var /n”;

}

D. print join(‘/n’,cd);

STYLE=“pAGe-BreAK-BeFore: always” CLEAR=“all”

Advance:

6. After execute following code snippet, what is value of $count: B (match twice)

$Str=’hello worldwww.3gos.info!’;

$count=0;

while ($Str=~m/(/w+)/g)

{

$count++;

}

A. 1

B. 2

C. 3

D. 12

7. What is the result of $string? D

$string = “This string contains the number 25.11.”;

$string =~ /-?(/d+)/.?(/d+)/;

A. 25.

B. .11

C. 25.11

D. 25.11.

I don’t know what is meaning of -, but perhaps the answer is D

8. What is meaning of following code snippet?

open(MYFILE,“temp.txt”);

while {

while ( /(/w)/g ) {

$seen{$1}++;

}

}

foreach $word(keys %seen)

{

print “$seen{$word} $word/n”;

}

close(MYFILE);

A. Delete all words in temp.txt

B. Calculate the frequency of each word in temp.txt

C. Wrong code

D. Calculate the sum of words in temp.txt

$1 is first variable of group match of perl, it match a char here.

9. In following code,expression#1 D let $point get the reference of @ARGV, expression#1 should be:

#!/usr/contrib/bin/perl -w

expression#1

print “ARGV = ”, join(“,”, expression#2), “/n”;

A. my $point=@ARGV;

B. my $point={@ARGV};

C. my $point=ARGV;

D. my $point=/@ARGV;

10. The expression#2 A should be:

A. @$point

B. $point

C. @point

D. /@point

NOTE: Answer ofquestion 5 shoud be A

0519d.height = height; d.width = width; } public synchronized Dimension getValues(){ // Ooops! Breaks encapsulation return d; } }

如何发生获胜的QA群体(How to build a successful QA team).

爽利外包的14条分寸

[某公司面试题及答案]

篇5:php常用面试题及答案

1、谈对mvc的认识?

答:由模型(Model),视图(View),控制器(Controller)完成的应用程序

由模型发出要实现的功能到控制器,控制器接收组织功能传递给视图;

2、写出发贴数最多的十个人名字的SQL,利用下表:members(id,username,posts,pass,email)

答:SELECT * FROM `members` ORDER BY posts DESC limit 0,10;

3、GD库是做什么用的?

答:gd库提供了一系列用来处理图片的功能,使用GD库可以处理图片,或者生成图片。

在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表。

4、请写出数据类型(int char varchar datetime text)的意思; 请问varchar和char有什么别?

答:int是数字类型,char固定长度字符串,varchar实际长度字符串,datetime日期时间型,text文本字符串

char的场地固定为创建表设置的长度,varchar为可变长度的字符

5、以下程序的输出结果?

$b=201;

$c=40;

$a=$b>$c?4:5;

echo $a;

?>

答:4

6、检测一个变量是否有设置的函数是?是否为空的函数是?

答:isset($str),empty($str);

7、得查询结果集总数的函数是?

答:mysql_num_rows($result);

8、$arr = array(‘james’, ‘tom’, ‘symfony’); 请打印出第一个元素的值?

答:echo $arr[0];

9、===”是什么?试举一个“==”是真但“===”是假的例子。

“===”是既可以返回布尔值“假”,也可以返回一个不是布尔值但却可以赋与“假”值的函式,strpos() 和 strrpos() 便是其中两个例子。

if (strpos(“abc”, “a”) == true){ // 这部分永不会被执行,因为 “a” 的位置是 0,换算成布尔值“假”}if (strpos(“abc”, “a”) === true){ // 这部份会被执行,因为“===”保证函式 strpos() 的送回值不会换算成布尔值.}

10、以下程序的输出结果

$str=“cd”;

$$str=“hotdog”;

$$str.=“ok”;

echo $cd;

?>

答案:hotdogok

11、给你三个数,写程序求出其最大值。

$var1=1;

$var2=7;

$var3=8;

$max=$var1>$var2?$var1:$var2;

$max=$max>$var3?$max:$var3;

echo $max;

12、将一个选择2号选项的ip为127.0.0.1的用户在当前时间的投票记录到数据库的SQL

答:insert into poll (ip,time,iid) values('127.0.0.1',now(),2);

13、个函数验证电子邮件的格式是否正确 ?

答:function checkEmail($email)

{

$pregEmail = “/([a-z0-9]*[-_\\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\\.][a-z]{2,3}([\\.][a-z]{2})?/i”;

return preg_match($pregEmail,$email);

}

14、表 menu(mainmenu,submenu,url),请用递归法写出一树形菜单,将所有的menu列出来

function GenerateMenu($id=0,$str=“”)

{

$result=mysql_query(“select mainmenu,url,submenu from menu where mainmenu=$id”);

while($row=mysql_fetch_array($result))

{

echo $str.$row[“url”].“

”;

GenerateMenu($row[“submenu”],$str.“--”);

}

mysql_free_result($result);

}

$link=mysql_connect(“localhost”,“root”,“”);

mysql_select_db(“phpinterview”);

GenerateMenu();

mysql_close($link)

?>

15、PHP可以和sql server/oracle等数据库连接吗?

答:可以

16、写出PHP5权限控制修饰符?

答:public(公共),private(私用),protected(继承)

17、请写出php5的构造函数和析构函数?

答: 构造函数:官方称自定义函数

析构函数:垃圾回收函数(__destruct)

18、表单中 get与post提交方法的区别?

答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.

19、session与cookie的区别?

答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放

cookie:用来存储连续L一个面时所使用,是存储在客户端,对于Cookie来说是存储在用户WIN的Temp目录中的。

两者都可通过时间来设置时间长短

20、用PHP打印出前一天的时间格式是-7-3 12:28:21?

答:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’));

21、e2ho(),print(),print_r()的区别?

答:echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)

print() 只能打印出简单类型变量的值(如int,string)

print_r() 可以打印出复杂类型变量的值(如数组,对象)

echo 输出一个或者多个字符串

22、能够使HTML和PHP分离开使用的模板?

答:Smarty, TinyButStrong,XTemplate, Savant,Template Lite, Dwoo, phemplate

23、哪些工具进行版本控制?

答:cvs,svn,vss;

24、如何实现字符串翻转?

答:echo strrev($a); //strrev ― 颠倒字符串

25、优化查询语句?

a.最好在相同字段进行比较操作,在建立好的索引字段上尽量减少函数操作

例子1:

SELECT * FROM order WHERE YEAR(orderDate)<;(慢)

SELECT * FROM order WHERE orderDate<“2008-01-01”;(快)

例子2:

SELECT * FROM order WHERE addtime/7<24;(慢)

SELECT * FROM order WHERE addtime<24*7;(快)

例子3:

SELECT * FROM order WHERE title like “%good%”;

SELECT * FROM order WHERE title>=”good” and name<“good”;

26、对于大流量的网站,您采用什么样的方法来解决访问量问题?

答:确认服务器硬件是否足够支持当前的流量,数据库读写分离,优化数据表,

程序功能规则,禁止外部的盗链,控制大文件的下载,使用不同主机分流主要流量

27、如何修改SESSION的生存时间?.

答:方法1:将php.ini中的session.gc_maxlifetime设置为9999重启apache

方法2:$savePath = “./session_save_dir/”;

$lifeTime = 小时 * 秒;

session_save_path($savePath);

session_set_cookie_params($lifeTime);

session_start();

方法3:setcookie() and session_set_cookie_params($lifeTime);

28、有一个网页地址, 比如PHP开发资源网主页: www.php100.com/,如何得到它的内容?

答:方法1(对于PHP5及更高版本):

$readcontents = fopen(“www.php100.com/”, “rb”);

$contents = stream_get_contents($readcontents);// stream_get_contents 取得字符串赋值给$contents

fclose($readcontents);

echo $contents;

方法2:

echo file_get_contents(“www.php100.com/”);

// file_get_contents() 函数把整个文件读入一个字符串中。

29、在HTTP 1.0中,状态码401的含义是(?);如果返回“找不到文件”的提示,则可用 header 函数,其语句为?

答:状态401代表未被授权,header(“Location:www.xxx.php”);

30、在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?

答:heredoc的语法是用”<<<“加上自己定义成对的标签,在标签范围鹊奈淖质游一个字串

例子:

$str = <<

my name is Jiang Qihui!

SHOW;

31、foo()和@foo()之间有什么区别?

答:@foo()控制错误输出

32、如何声明一个名为”myclass”的没有方法和属性的类?

答:class myclass{ }

33、如何实例化一个名为”myclass”的对象?

答:new myclass()

34、你如何访问和设置一个类的属性?

答:$object = new myclass();

$newstr = $object->test;

$object->test = “info”;

35、mysql_fetch_row() 和mysql_fetch_array之间有什么区别?

答:mysql_fetch_row是从结果集取出1行数组,作为枚举

mysql_fetch_array是从结果集取出一行数组作为关联数组,或数字数组,两者兼得

36、下面哪个函数可以打开一个文件,以对文件进行读和写操作?

(a) fget() (b) file_open() (c) fopen() (d) open_file()

答:c

37、下面的程序会输入是否?

$num = 10;

function multiply(){

$num = $num * 10;

}

multiply();

echo $num;

?>

否,局部变量

38、JS表单弹出对话框函数是?获得输入焦点函数是?

答:弹出对话框: alert(),prompt(),confirm()

获得输入焦点 focus()

39、JS的转向函数是?怎么引入一个外部JS文件?

答:window.location.href;

40、$a = ‘abcdef’; 请取出$a的值并打印出第一个字母?

答:echo $a{0} 或 echo substr($a,0,1)

41、如何使用下面的类,并解释下面什么意思?

class test{

function Get_test($num){

$num=md5(md5($num).”En”);

return $num;

} }

双重md5加密

$testObject = new test();

$encryption = $testObject->Get_test(“xiaotian_ls”);

42、请举例说明在你的开发过程中用什么方法来加快页面的加载速

答:要用到服务器资源时才打开,及时关闭服务器资源,数据库添加索引,页面可生成静态,图片等大文件单独服务器。使用代码优化工具啦

43、写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉):

$script=”以下内容不显示:alert(‘cc’);“;

echo preg_replace(”/].*?>.*?/si“, ”替换内容“, $script);

?>

44、以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块,然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。

答:LoadModule

php5_module

”c:/php/php5apache2.dll“;AddType application/x-httpd-php .php

45、sort()、asort()、和 ksort() 有什么分别?它们分别在什么情况下使用?

sort()

根据阵列中元素的值,以英文字母顺序排序,索引键会由 0 到 n-1 重新编号。主要是当阵列索引键的值无关疼痒时用来把阵列排序。

asort()

与 sort() 一样把阵列的元素按英文字母顺序来排列,不同的是所有索引键都获得保留,特别适合替联想阵列排序。

ksort()

根据阵列中索引键的值,以英文字母顺序排序,特别适合用于希望把索引键排序的联想阵列。

46、用PHP写出显示客户端IP与服务器IP的代码?

答:打印客户端IP:echo $_SERVER[‘REMOTE_ADDR’]; 或者: getenv('REMOTE_ADDR');//getenv取得开发环境变量

打印服务器IP:echo gethostbyname(”www.bolaiwu.com\") // gethostbyname取得IP地址函数

47、语句include和require的区别是什么?为避免多次包含同一文件,可用(?)语句代替它们?

答:require->require是无条件包含也就是如果一个流程里加入require,无论条件成立与否都会先执行require

include->include有返回值,而require没有(可能因为如此require的速度比include快)

注意:包含文件不存在或者语法错误的时候require是致命的,include不是

48、PHP的意思?

答:PHP是一个基于服务端来创建动态网站的脚本语言,您可以用PHP和HTML生成网站主页

49、谈谈asp,php,jsp的优缺点?

答:ASP全名Active Server Pages,是一个WEB服务器端的开发环境, 利用它可以产生和运行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言VB Script(Java script)作为自己的开发语言。

PHP是一种跨平台的服务器端的嵌入式脚本语言. 它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面.它支持目前绝大多数数据库。还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(www.php.net)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。

JSP 是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP,PHP的一个通病--脚本级执行(据说PHP4 也已经在Zend 的支持下,实现编译运行).Sun 公司借助自己在Java 上的不凡造诣,将Java 从Java 应用程序 和 Java Applet 之外,又有新的硕果,就是Jsp--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。

三者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。但JSP代码被编译成 Servlet 并由 Java 虚拟机解释执行,这种编译操作仅在对 JSP 页面的第一次请求时发生。在 ASP 、PHP、JSP 环境下,HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 、PHP、JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。 ASP 、PHP、 JSP三者都是面向 Web 服务器的技术,客户端浏览器不需要任何附加的软件支持。

50、   优化MYSQL数据库的方法

(1).选取最适用的字段属性,应该尽量把字段设置为NOT NULL,这样在将来执行查询的时候,数据库不用去比较NULL值。

(2).使用连接(JOIN)来代替子查询(Sub-Queries)

(3).尽量少使用 LIKE 关键字和通配符

篇6:hr面试题及答案

问题6:“与上级意见不一致时,你将怎么办?”

思路:1、一般可以这样回答“我会给上级以必要的解释和提醒,在这种情况下,我会服从上级的意见。”

2、如果面试你的是总经理,而你所应聘的职位另有一位经理,且这位经理当时不在场,可以这样回答:“对于非原则性问题,我会服从上级的意见,对于涉及公司利益的重大问题,我希望能向更高层领导反映

问题7:“我们为什么要录用你?”

思路:1、应聘者最好站在招聘单位的角度来回答。

2、招聘单位一般会录用这样的应聘者:基本符合条件、对这份共组感兴趣、有足够的信心。

3、如“我符合贵公司的招聘条件,凭我目前掌握的技能、高度的责任感和良好的饿适应能力及学习能力,完全能胜任这份工作。我十分希望能为贵公司服务,如果贵公司给我这个机会,我一定能成为贵公司的栋梁!

问题8:“谈谈你的缺点”

思路:1、不宜说自己没缺点。

2、不宜把那些明显的优点说成缺点。

3、不宜说出严重影响所应聘工作的缺点。

4、不宜说出令人不放心、不舒服的缺点。

5、可以说出一些对于所应聘工作“无关紧要”的缺点,甚至是一些表面上看是缺点,最后转化为优点

问题9:“谈一谈你的一次失败经历”

思路:1、不宜说自己没有失败的经历。

2、不宜把那些明显的成功说成是失败。

3、不宜说出严重影响所应聘工作的失败经历。

4、所谈经历的结果应是失败的。

5、宜说明失败之前自己曾信心白倍、尽心尽力。

6、说明仅仅是由于外在客观原因导致失败。

7、失败后自己很快振作起来,以更加饱满的热情面对以后的工作

问题10:请谈谈你个人的最大特色。

A.我人缘极佳,连续3年担任福委会委员。

B.我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。

C.我非常守时,工作以来,我从没有迟到过。

D.我的个性很随和,是大家公认的好好先生。

解答:这题理想的回答是B。A、C、D虽然都表示出应征者个性上的优点,但只有B的回答,最能和工作结合,能够与工作表现相结合的优点、特质,才是面谈者比较感兴趣的回答

篇7:计算机面试题和答案

计算机面试题和答案

1. 什么是程序局部性,为什么会有程序的空间局部性?

程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。 空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。

2. 比较TCP与UDP

TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。 TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等 。

UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。

3. 网络协议的三个核心要素,及概念 .各起什么作用?

语法,定义了数据与控制信息的格式;

语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明;

4. 关系数据库都有那些操作,特点是什么?

◇查询:选择、投影、连接、除、并、交、差

◇数据更新:插入、删除、修改

关系操作的特点:集合操作方式,即操作的对象和结果都是集合。

5. 解释一下网络体系结构,它得实现和理论有什么区别?

是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。 网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。 国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。

6. 为了实现重定位需要哪些硬件?

最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。 当然在分页式与分段式系统中,具地址变换机构,以及

快表等硬件。

7. 数据库保护(访问)的内容有哪些?

利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制

8. 在交互式系统中,非剥夺是不是一个好的策略?为什么?

非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。 剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程、优先原则、时间片原则。

在分时系统中不剥夺并不是一个好的策略。因为,在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。

9. DBA的职责是什么?

DBA则是这个机构的一个(组)人员,负责全面管理和控制数据库系统.职责有:

(1)决定数据库中的信息内容和结构:数据库中要存放哪些信息

(2)决定数据库的存储结构和存取策略:获得较高的存取效率和存储空间利用率

(3)约定义数据的安全性要求和完整性约束条件:负责确定各个用户对数据库的存取权限、数据的保密级别和完整性约束条件

(4)监控数据库的使用和运行:转储数据、维护日志文件、故障恢复

(5)数据库的改进和重组重构:对运行情况进行记录、统计分析,以此来不断改进数据库设计

10. 系统调用的定义

系统调用是OS与应用程序之间的接口,它是用户程序取得OS服务的惟一途径。它与一般的过程调用的区别: 运行在不同的系统状态。调用程序在运行在用户态,而被调用的程序运行在系统态; 通过软中断机制,先由用户态转为系统态,经枋心分析后,才能转向相应的系统调用处理子程序; 一般的过程调用返回后继续执行,但对系统调用,当调用的进程仍具有最高优先权时,才返回到调用进程继续处理;否则只能等被重新调度;

11. 死锁是什么?

指多个有关进程由于争夺资源而造成的一种僵局,在无外力的情况下这些进程都将无法再向前推进的状态。

12. CPU不执行程序的时候干什么?

当没有被任何程序使用的时候,计算机的处理器被认为是空闲的。当然下面提到的空闲任务不在此列中。 当有程序利用CPU空闲时间的时候,就意味着它以较低的优先权运行着,以便不会影响那有正常优先权的程序运行。一般来讲,这会引起CPU消耗更多的电能,而大多数的现代CPU当它们空闲的时候是能够进入省电模式的。 大多数操作系统都有个空闲任务,它是一个特殊的任务。仅当CPU无事可做的时候由操作系统调度器载入它。在现代的处理器中,HLT停机指令节省了大量的电能与执量,而空闲任务几乎总是由一个重复执行HLT停机指令的循环组成。

13. 举例解释一下同步和互斥

同步表现为直接制约,如管道通信,一个进程写,一个进程读,它们是相互制约的。 互斥表现为间接制约,比如多个进程同时请求打印机(没使用SPOOLing技术)、多个进程同时请求一张网卡发送数据包等。

14. 解释一下管程

管程是由一组局部变量、对局部变量进行操作的一组过程和对局部变量进行初始化的语句序列组成。引入它的目的是因为Wait/Singal操作太过分散,对它的维护很麻烦且容易造成死锁。管程的特点是:管程的过程只能访问管程的局部变量,管程的局部变量只能由其过程来访问;任何时刻只能有一个进程进入管程执行;进程只能通管程提供的过程入口进入管程;

15. 在可变分区管理中,需要哪些硬件机制

采用可变分区方式管理时,一般均采用动态重定位方式装入作业。地址变换要靠硬件支持,主要是两个寄存器:基址寄存器和限长寄存器,限长寄存器存放作业所占分区的长度,基址寄存器则存放作业所占分区的起始地址,这两个值确定了一个分区的位置和大小。

转换时根据逻辑地址与限长值比较,如果不有超过这个值,表示访问地址合法,再加上基址寄存器中的值就得到了绝对地址了,否则形成“地址越界”中断。

16. 中断和陷入有什么异同?

外中断时指来自处理机和内存外部的中断,如I/O中断、定时器中断、外部信号中断等。狭义上也叫中断; 内中断主要指在处理机和内存内部产生的中断,也称陷入,如校验错、页面失效、溢出、除数为零等;

中断和陷阱的主要区别:

(1)陷入通常由处理机正在执行的现行指令引起,而中断则是由与现行指令无关的中断源引起的。

(2) 陷阱处理程序提供的服务为当前进程所用,而中断处理程序提供的服务则不是为了当前进程的。

(3) CPU在执行完一条指令之后,下一条指令开始之前响应中断,而在一条指令执行中也可以响应陷阱。

17. 数据库系统和文件系统相比有什么优点? 文件系统 数据库管理系统 某一应用

18. 计算机网络和分布式计算机系统的区别?

两者在计算机硬件连接、系统拓朴结构和通信控制等方面基本都是一样的,它们都具有通信和资源共享的功能。 区别关键在于:分布式计算机系统是在分布式计算机操作系统支持下,进行分布式数据库处理的,也就是说各互联的计算机可以互相协调工作,共同完成一项任务,多台计算机上并行运行。且具有透明性,用户不知道数据、资源的具体位置,整个网络中所有计算机就像是一台计算机一样;而计算机网络却不具备这种功能,计算机网络系统中的各计算机通常是各自独立进行工作的。

19. 为什么引入多道程序技术?

因为引入多道程序技术后,可以进一步提高了CPU利用率(阻塞),提高内存和I/O设备利用率(小作业把内存浪费了),增加系统吞吐量(两都提高后的必然)。

1.java学习:Java面试题和答案

2.Java面试题和答案

3.软件测试面试题和答案

4.Spring面试题和答案汇总

5.酒店面试问题和答案

6.Java的面试题和答案

7.69道Spring面试题和答案

8.5个经典面试问题和最佳答案

9.自主招生面试题和答案

10.经典面试试题和答案分享

篇8:社区面试题及答案

领导让你负责一项工作,需要其他两个部门的配合,但是这两个部门和你所在部门关系不太融洽,你怎样处理?

(1)领导交给我的工作,是对我的信任,我一定会认真、努力的完成好。

(2)首先我会侧面了解这两个部门和我们部门关系不太融洽的原因,如果是我能力所及范围内的,我会积极解决。如果不是我能力所及,我会本着大事讲原则,小事讲风格的原则,和这两个部门的负责人诚恳沟通、交流,为创造部门之间良好关系,打下基础,并在以后的工作中,多沟通多交流,增进了解,开展一些有利于增进友谊与合作的活动。相信通过我耐心诚恳的沟通,他们会理解并支持我的工作,在我们三个部门的通力合作下会把这项工作圆满的完成。

(3)总结经验教训,向领导汇报,并把如何改进部门之间关系的建议,形成书面报告,报领导审阅。

如果你是社区工作者,你想如何来帮助空巢老人?

1、作为我们工作者应该进行一下详细的调查:调查空巢老人的家庭情况、身体状况。做好登记,记录好老人子女的联系方式。

2、和老人子女沟通,希望他们能够常回家陪陪父母,现在社会分工细化、生活节奏很快,子女的确没时间照顾父母,这一点也要理解

3、组织社区内的志愿者,多多照顾老人,看看老人有什么需要,进行上门服务

4、社区卫生院的医生也经常上门对老人进行一下简单检查,虽然满足不了老人的需要,但是也体现了政府对老人的关怀.

你有一个很好的工作设想,你经过实际调查认为这个设想既科学又可行,但你的领导和同事们很固执,你采取什么办法说服他们与你合作?

第一、如果产生这种情况我会感到很遗憾,但要有一片公心,不能心存怨恨觉得领导和同事不同意你的方案有其他方面的原因。

第二、认真调研自己方案的可行性,保证在实施过程中不但会出现自己意料中的效果而且也不会出现不良的后果。

第三、和领导和同事们进行沟通,问清楚是什么原因不同意你的方案,并虚心听取他们对你方案的意见,很多时候由于自己阅历不足等原因,方案可能并没有可行性。

第四、如果方案没有问题,那么根据不同的原因进行说服工作,统一思想.如果是涉及到荣誉的问题,可以将你的想法公开当作大家讨论集体的结晶。

你正在主持一个会议,意见对立的双方由争辨发展到恶语想向,你怎么办?

作为会议的主持人,我会把双方争论的据点、争论的问题记录下来,然后先建议大家冷静一下,或干脆休会半小时,等大家能平心静气坐下来后,我会再次阐述本次会议的目的,就是要大家心平气和地商量某一问题,提出解决办法,而不是争论。等局面被我控制后,我再要求双方各派一名代表将自己方的意见、观点、计划总结出来,通过阐述自己的理由,大家举手表决,少数人服从多数人的意见,我同样会把最后的结果写进会议记录中备查,会后向有关领导认真汇报会议情况。

如果你有一位固执武断的领导,你会经常提合理化建议吗?

①在一般情况下,领导和同事是不能选择的,每个人有每个人的个性和脾气,要学会适应和相处。

②领导脾气直也好,悠也好,固执也好,只要是真心为公,为工作,应该尊重和原谅他,并且按他的安排去做。

③适当的时候,可以用谈心、汇报思想等方式委婉地提出自己的看法,但点到为止。

④在有合理化的建议时,照提不误。因为那是对自己和工作负责。

如果你在这次考试中没有被录用,你怎么打算?

现在的社会是一个竞争的社会,从这次面试中也可看出这一点,有竞争就必然有优劣,有成功必定就会有失败.往往成功的背后有许多的困难和挫折,如果这次我失败了,那对我来说也仅仅是一次小的挫折而已,只有经过经验经历的积累才能塑造出一个完全的成功者。我会从以下几个方面来正确看待这次失败:

第一、要敢于面对,面对这次失败不气馁,接受已经失去了这次机会就不会回头这个现实,从心理意志和精神上体现出对这次失败的抵抗力。要有自信,相信自己经历了这次之后经过努力一定能行.能够超越自我。

第二、善于反思,对于这次面试经验要认真总结,思考剖析,能够从自身的角度找差距。正确对待自己,实事求是地评价自己,辩证的看待自己的长短得失,做一个明白人。

第三、走出阴影,要克服这一次失败带给自己的心理压力,时刻牢记自己弱点,防患于未然,加强学习,提高自身素质。

第四、认真工作,回到原单位岗位上后,要实实在在、踏踏实实地工作,三十六行,行行出状元,争取在本岗位上做出一定的成绩。

第五、再接再厉,成为一名社区工作者一直是我的梦想,以后如果有机会我仍然后再次参加竞争。

公务员面试题及答案

机械工程师面试题答案

常见的应聘面试题及答案

常用php面试题及答案

如何应对无答案面试题

下载Swift 面试题及其答案(共8篇)
Swift 面试题及其答案.doc
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
点击下载本文文档