第一篇:領(lǐng)導(dǎo)向下溝通中的常見語(yǔ)言錯(cuò)誤
領(lǐng)導(dǎo)向下溝通中的常見語(yǔ)言錯(cuò)誤
用戶: 一片田
專業(yè)度: 19164 時(shí)間: 2008-11-25 上午8:55
有效的溝通是不斷跨越障礙的過(guò)程。上下級(jí)溝通的障礙來(lái)自哪里?來(lái)自于溝通的一方或雙方的錯(cuò)誤的溝通立場(chǎng),而這種錯(cuò)誤的溝通立場(chǎng)又通過(guò)錯(cuò)誤的溝通語(yǔ)言表現(xiàn)出來(lái)。
許多研究發(fā)現(xiàn),一些駕輕就熟、脫口而出的語(yǔ)言,成了“殺手”式的語(yǔ)言信息,阻礙了上下級(jí)溝通的效果,導(dǎo)致了上下級(jí)之間的誤會(huì)和沖突。所以,提高上下級(jí)溝通的效果,首先應(yīng)從分析錯(cuò)誤的溝通語(yǔ)言著手。
湯瑪斯。高登和克里斯。科爾等心理學(xué)家曾經(jīng)把錯(cuò)誤或不當(dāng)?shù)臏贤ㄕZ(yǔ)言分為三大類。參照他們的分類,結(jié)合我國(guó)企業(yè)中上下級(jí)溝通的一些實(shí)際狀況,這里我們把向下溝通中常見的語(yǔ)言錯(cuò)誤劃分為四類:發(fā)號(hào)施令型、傲慢無(wú)禮型、諷刺挖苦型與隔靴搔癢型。
發(fā)號(hào)施令型
發(fā)號(hào)施令型語(yǔ)言總是告訴員工:作為一個(gè)員工,他(她)“應(yīng)該”怎么做、“必須”怎么做、“最好”怎么做、“可以”怎么做。
發(fā)號(hào)施令型的上級(jí)認(rèn)為,通過(guò)這樣的語(yǔ)言可以向員工傳遞解決問(wèn)題的辦法,期望員工最好能無(wú)條件地接受。它也是許多上級(jí)最喜歡使用的一種語(yǔ)言。
發(fā)號(hào)施令型語(yǔ)言可以分為四種,根據(jù)上級(jí)使用的頻率排列為:
命令
例如:。這里輪不到你說(shuō)話,你的任務(wù)就是好好聽我說(shuō)!。不許辯解,沒有任何借口!。怎么這么羅嗦,按照我說(shuō)的去做就行了!
這種語(yǔ)言使人感到,員工的感受、需求或問(wèn)題并不重要,他們必須順從上級(jí)的感受與需要,并有可能產(chǎn)生對(duì)上級(jí)權(quán)威的恐懼感。這是上級(jí)單方面發(fā)出的語(yǔ)言信息,員工的情感或需求沒有得到尊重,因此員工有可能對(duì)上級(jí)產(chǎn)生怨恨、惱怒和敵對(duì)的情緒,比如頂撞,抗拒,故意考驗(yàn)上級(jí)決心,發(fā)脾氣等。
威脅
例如:。如果你們這次再完不成指標(biāo),我就要扣你們?nèi)戟?jiǎng)金!。如果你再不改,我就會(huì)匯報(bào)給大老板,叫你死得很難看!
這種語(yǔ)言與命令很相似,只是再加上告訴員工不服從的后果是什么。這種語(yǔ)言可能使員工感到恐懼和屈從,也可能引起員工的敵意。員工有時(shí)還可能對(duì)此做出與上級(jí)期待的相反反應(yīng):“好啊,不管你說(shuō)什么,我都不在乎,看你把我怎么樣!”更有甚者,做一做剛才被警告過(guò)的事,好看看上級(jí)真的是否言出必行。
強(qiáng)加于人
例如:。昨天為什么沒有完成任務(wù)?是不是沒有照我的話去做?你知道如何來(lái)安排工作程序嗎?讓我來(lái)告訴你。……。今天找你來(lái),是要與你討論你這次工作失誤的事情。經(jīng)過(guò)我對(duì)你的分析,我發(fā)現(xiàn)你存在的問(wèn)題是粗心。你說(shuō)是嗎?記住:下次要細(xì)心!好,我的話講完了,你可以回去了!千萬(wàn)要記住我的話,別再粗心!
其實(shí),這個(gè)員工工作失誤未必是因?yàn)榇中模苍S還有更多的原因。上級(jí)找這個(gè)員工來(lái)談話,目的是為了幫助他找到這次失誤的原因,提高工作效率,但因?yàn)闆]互動(dòng)和交流,導(dǎo)致了他們之間的談話毫無(wú)效果,并讓員工感到上級(jí)并不想、也確實(shí)不了解自己。
“強(qiáng)加于人”實(shí)際上也是微妙地下命令,但是它可以更巧妙地隱藏在貌似很有禮貌的、富于邏輯的陳述中,但講話的這一方只有一種心態(tài):“你是我的員工,所以必須按照我的觀點(diǎn)來(lái)做。”
因?yàn)椴唤o對(duì)方發(fā)表自己意見的機(jī)會(huì),因而這類談話進(jìn)行得很快,員工也根本沒有時(shí)間表達(dá)自己的想法,從而會(huì)感到自己的權(quán)利被剝奪。長(zhǎng)此以往,員工還會(huì)產(chǎn)生一種“上級(jí)總是認(rèn)為我不行,有改也改不完的許多缺點(diǎn)”等壓抑感。
過(guò)度忠告
例如:。如果我是你,肯定不會(huì)像你這么做。以后給我記住:一定要先找本地的給客戶,再找外地的給客戶。
這樣的語(yǔ)言信息是在向員工證明:上級(jí)不信賴他們自身解決問(wèn)題的能力。其后果往往會(huì)使員工對(duì)上級(jí)產(chǎn)生依賴心理,削弱他們獨(dú)立判斷的能力和創(chuàng)造力。
過(guò)度忠告也意味著上級(jí)的一種自我優(yōu)越感,容易引起追求獨(dú)立的員工的反感。
有時(shí)這種語(yǔ)言信息還會(huì)使員工感到被誤解,甚至這樣想:“如果你真正了解我,就不會(huì)給我出這種又餿又笨的主意,說(shuō)不定外地的是個(gè)大客戶呢。”
發(fā)號(hào)施令型語(yǔ)言是上級(jí)平時(shí)使用得最多的一種語(yǔ)言。許多上級(jí)認(rèn)為它是見效最快的語(yǔ)言。它的優(yōu)點(diǎn)是上級(jí)可以快速解決員工存在的一些問(wèn)題,而缺點(diǎn)是使用過(guò)度就會(huì)失效。根本原因在于:第一,容易造成員工反感。這種語(yǔ)言的后面常常隱藏著這樣的意思:“你太笨了 ”,“你太差勁了”,“你要聽我的”,“我是權(quán)威”等等。這讓員工聽后很反感,隨之出現(xiàn)逆反心理或頂撞情緒。有經(jīng)驗(yàn)的上級(jí)會(huì)發(fā)現(xiàn),當(dāng)一個(gè)員工接受這樣的語(yǔ)言時(shí)間較長(zhǎng)后,會(huì)變得煩躁、自卑,或?qū)σ院箢愃频恼Z(yǔ)言漠然,以至于有許多上級(jí)和家長(zhǎng)總是抱怨:“為什么孩子越被教育卻越不聽話?”
第二,容易使員工順從,卻不容易產(chǎn)生積極的行為。
第三,它所表達(dá)的信息僅涉及員工而不涉及上級(jí)本身。由于員工不知道他的行為對(duì)上級(jí)有什么影響,只知道上級(jí)要求他對(duì)某些行為進(jìn)行改變。在這種單方面的溝通渠道中,員工也會(huì)單方面地對(duì)上級(jí)作不正確的推測(cè),比如:“這位上級(jí)偏心,心胸狹隘,脾氣壞,專門拿我們出氣,對(duì)我們要求太高”,等等。員工有了這樣的負(fù)面心態(tài),就不會(huì)從正面來(lái)接受上級(jí)原本良好的用意了。
傲慢無(wú)禮型
傲慢無(wú)禮型語(yǔ)言可以分為三種:
訓(xùn)誡
例如:。你是個(gè)學(xué)會(huì)計(jì)學(xué)的大學(xué)畢業(yè)生啊,應(yīng)該知道報(bào)表上這些數(shù)字代表什么?否則你得到學(xué)校里去回爐了!。你應(yīng)該很清楚,在上級(jí)面前應(yīng)該怎樣說(shuō)話!
這種語(yǔ)言表達(dá)了一種預(yù)先設(shè)定好的立場(chǎng),使員工感受到與上級(jí)之間地位的不平等,感受到上級(jí)在運(yùn)用上級(jí)權(quán)威,導(dǎo)致員工容易對(duì)上級(jí)產(chǎn)生防衛(wèi)心理。
當(dāng)上級(jí)運(yùn)用這種語(yǔ)言模式的時(shí)候,常會(huì)使用這些短語(yǔ):“你應(yīng)該”;“如果你聽從我的勸告,你就會(huì)”;“你必須”等。
這類語(yǔ)言在向員工表達(dá):上級(jí)不信任你們的判斷能力,你們最好接受別人所認(rèn)為的正確判斷。對(duì)于越資深的員工,“應(yīng)該和必須”式的語(yǔ)言越容易引起抗拒心理,并導(dǎo)致他們產(chǎn)生更強(qiáng)烈地維護(hù)自己的立場(chǎng)。
標(biāo)記
例如:。我發(fā)現(xiàn)公司里一有麻煩,總有你的份!。我早就知道你不行!因?yàn)槟闾珣卸琛N铱茨阌肋h(yuǎn)改不好了!
這種語(yǔ)言一下就把員工打入了“另類”,最容易令員工產(chǎn)生自卑感或“破罐子破摔”式的消極心態(tài)。
面對(duì)上級(jí)這樣的標(biāo)記語(yǔ)言,員工會(huì)感到自尊心受到了損害。為了維護(hù)自己的形象,他們以后就會(huì)在上級(jí)面前盡量掩飾自己的想法和情感,不愿將內(nèi)心世界向上級(jí)打開。
一些調(diào)查表明:公司中最得不到員工尊重的上級(jí)是經(jīng)常給員工打標(biāo)記的上級(jí)。所以,上級(jí)對(duì)此必須特別注意。
揭露
例如:。你這樣對(duì)抗上級(jí)無(wú)非是為了出風(fēng)頭!。你心里想什么我還不知道,在我面前你別想玩什么花招!。說(shuō)幾句認(rèn)錯(cuò)的話就想蒙混過(guò)關(guān)?其實(shí)是害怕我在會(huì)議上公開批評(píng)你吧?可我今天偏要公開批評(píng)你!
其實(shí),上級(jí)讓員工知道“我知道為什么”、“我能看穿你”并不是件好事。因?yàn)槿绻霞?jí)分析正確,員工會(huì)由于被揭穿而感到窘迫或氣惱。而如果上級(jí)分析不正確,員工也會(huì)由于受到誣賴而感到憤怒。他們常常認(rèn)為上級(jí)是在自作聰明,自以為能像上帝一樣居高臨下地洞察所有員工的內(nèi)心,感覺莫名其妙地好。
傲慢無(wú)禮型語(yǔ)言在不同程度上都有明顯貶損員工的意味。它們會(huì)打擊員工的自尊心,貶低員工的人格,并明確地表達(dá)下列意思:“你是問(wèn)題員工”;“你不好”;“我不喜歡你、甚至討厭你”;“我對(duì)你沒有信心”等等。
員工如果經(jīng)常聽到這類語(yǔ)言,就有可能形成“我是一個(gè)差勁的人”等自卑心理,長(zhǎng)此以往會(huì)對(duì)員工的身心發(fā)展造成較大的傷害。
由于這種語(yǔ)言常常使員工的自尊心受到傷害,他們也可能隨之出現(xiàn)反攻擊的心態(tài)。這時(shí),上下級(jí)之間可能出現(xiàn)大的沖突。
更重要的是,傲慢無(wú)禮型語(yǔ)言給上級(jí)的形象蒙上了粗魯、教養(yǎng)差等陰影,給員工造成負(fù)面影響,對(duì)他們的成長(zhǎng)十分不利。
諷刺挖苦型
諷刺挖苦型語(yǔ)言可以分為兩種:
暗示
例如:。你講話的水平真高啊,看來(lái)以后我的位置該讓給你了吧。臨近年底了才完成60%的任務(wù),你還不著急,真是胸有成竹啊,看來(lái)名牌大學(xué)畢業(yè)的高人真是能力強(qiáng)啊。這類語(yǔ)言雖然相對(duì)說(shuō)來(lái)比較溫和,但效果往往很差。
原因之一:由于員工年輕、注意力不夠集中或認(rèn)為不關(guān)自己的事等,大多數(shù)人并不能夠透徹地理解這些暗示,所以有時(shí)上級(jí)會(huì)感到自己是在“對(duì)牛彈琴”。
原因之二:哪怕有些員工明白了上級(jí)話語(yǔ)的部分含義,也會(huì)覺得上級(jí)說(shuō)話如此拐彎抹角而有失坦誠(chéng),覺得上級(jí)“太做作了”,從而失去了對(duì)上級(jí)的信任。
原因之三:即使員工聽出了上級(jí)的“話中之話”,也只會(huì)對(duì)上級(jí)的說(shuō)話動(dòng)機(jī)和人品做出鄙夷性的評(píng)價(jià)。
中傷
例如:。你的報(bào)告寫得太好了,我的水平太差,實(shí)在看不懂!。你以為你是比爾。蓋茲嗎?不要自以為懂得很多了!
這類話語(yǔ)一出口,就流露出對(duì)員工的明顯鄙視,還帶有有一些人格侮辱的成分在內(nèi)。
對(duì)這類中傷性的語(yǔ)言,員工會(huì)非常反感。他們即使當(dāng)面不敢說(shuō),心里卻會(huì)反擊:“你有什么資格來(lái)消遣我。看你說(shuō)話的樣子,哪像個(gè)上級(jí)!”
上級(jí)在使用諷刺挖苦型語(yǔ)言的時(shí)候,是希望員工聽懂這些話中的弦外之音。他們認(rèn)為這是一種較為溫和、較為“高雅”的表達(dá)方式。這類語(yǔ)言的潛臺(tái)詞是:“如果我們把話挑明你們就會(huì)不喜歡我”,“跟你們坦白太危險(xiǎn)了”,“我是有水平的上級(jí),不會(huì)像你們這群傻瓜那樣直筒子式地說(shuō)話”。
不要以為僅僅是發(fā)號(hào)施令型和傲慢無(wú)禮型語(yǔ)言才有許多不良的后果,諷刺挖苦型語(yǔ)言對(duì)員工的傷害也非常大。因?yàn)檫@類語(yǔ)言的深處隱藏著的是對(duì)員工的厭惡和輕視。
隔靴搔癢型
隔靴搔癢型語(yǔ)言主要有兩種:
空口“安慰”
例如:。不要難過(guò)!太陽(yáng)每天都是新的,明天你就會(huì)好起來(lái)。不要著急,你還年輕,人生之路長(zhǎng)著呢。回去休息休息,明天一切都會(huì)好起來(lái)。
在這些并不能解決實(shí)際問(wèn)題的、沒有意義的安慰中,隱含著一絲“哀其不幸”式的憐憫感。因此,員工會(huì)感到雙方并沒有站在平等的地位對(duì)話,而自尊心越強(qiáng)的員工越不喜歡上級(jí)這樣的講話方式。
泛泛之辭
例如:。總的看來(lái),你基本上還算是一個(gè)合格的員工。我也不知道對(duì)你說(shuō)什么好,你自己好自為之吧。你需要發(fā)揚(yáng)優(yōu)點(diǎn),改正缺點(diǎn)。
這種泛泛而論的評(píng)價(jià)過(guò)于簡(jiǎn)單,對(duì)于員工的成長(zhǎng)根本無(wú)益。而員工也會(huì)懷疑上級(jí)是否真正關(guān)心自己。當(dāng)上級(jí)安慰一個(gè)痛苦中的員工、或員工急切地要求上級(jí)對(duì)自己有所幫助時(shí),隔靴搔癢式的語(yǔ)言會(huì)讓員工非常失望。進(jìn)而他們就會(huì)對(duì)上級(jí)產(chǎn)生無(wú)能、自私、冷漠等不良印象。如果員工經(jīng)常聽到上級(jí)說(shuō)此類話,還會(huì)懷疑上級(jí)是否一直在敷衍自己,對(duì)自己毫無(wú)愛心。長(zhǎng)此以往,上下級(jí)關(guān)系就不會(huì)融洽,隔閡日益加深。
許多員工在回憶自己的職業(yè)生涯時(shí),經(jīng)常會(huì)提及若干印象最深刻的事情。他們也許會(huì)說(shuō),當(dāng)時(shí)是上級(jí)一次意味雋永的激勵(lì)使自己受益一生;但也許會(huì)說(shuō),當(dāng)時(shí)是上級(jí)的一句話深深地傷害了自己,成了自己“永遠(yuǎn)傷心的理由”。上級(jí)不能輕視自己的一言一行,不能在無(wú)意中成為溝通的“殺手”。建設(shè)和諧的企業(yè)文化,需要從認(rèn)真對(duì)待每一句話、每一次溝通開始。
第二篇:c語(yǔ)言常見錯(cuò)誤
1.= 不等于 ==
從 Algol 派生出來(lái)的語(yǔ)言,如 Pascal 和 Ada,用 := 表示賦值而用 = 表示比較。而 C 語(yǔ)言則是用 = 表示賦值而用 == 表示比較。這是因?yàn)橘x值的頻率要高于比較,因此為其分配更短的符號(hào)。此外,C 可以多重賦值(如 a = b = c),并且可以將賦值嵌入到一個(gè)大的表達(dá)式或者語(yǔ)句中。這種便捷導(dǎo)致了一個(gè)潛在的問(wèn)題:需要用比較的地方卻寫成了賦值。下面的語(yǔ)句看起來(lái)好像是要檢查 x 是否等于 y :
if(x = y)
foo();
而實(shí)際上是將 y 的值賦值給 x,并檢查結(jié)果是否非零。再看看下面的一個(gè)希望跳過(guò)空格、制表符和換行符的循環(huán):
while(c == ’ ’ || c = ’t’ || c == ’n’)
c = getc(f);
在應(yīng)該與 ’t’ 進(jìn)行比較的地方程序員錯(cuò)誤地使用了 =,而不是==。這個(gè)“比較”實(shí)際上是將’t’ 賦給 c,然后判斷 c 的(新的)值是否為零。因?yàn)?’t’ 不為零,所以這個(gè)“比較”一直為真,因此這是一個(gè)死循環(huán)。
一些編譯器會(huì)對(duì)形如 e1 = e2 的條件給出一個(gè)警告以提醒用戶。當(dāng)你確實(shí)需要對(duì)一個(gè)變量進(jìn)行賦值,然后再檢查變量是否“非零”時(shí),為了避免這種警告信息,應(yīng)顯式給出比較符。也就是將:
if(x = y)
foo();改寫為:
if((x = y)!= 0)
foo();
2.多字符符號(hào)
一些 C 符號(hào),如 /、* 或 =,只有一個(gè)字符。還有些 C 符號(hào),如 /*、== 或標(biāo)識(shí)符,具有多個(gè)字符。當(dāng)編譯器遇到緊連在一起的 / 和 * 時(shí),它必須決定是將這兩個(gè)字符識(shí)別為兩個(gè)符號(hào)還是一個(gè)單獨(dú)的符號(hào)。C 語(yǔ)言標(biāo)準(zhǔn)規(guī)定:“如果一個(gè)字符被識(shí)別為符號(hào),則應(yīng)該包含下一個(gè)字符看看包含此字符后構(gòu)成的字符串是否仍然可以構(gòu)成符號(hào),如果可以則繼續(xù)包含下一個(gè)字符,一直到不能構(gòu)成符號(hào)為止。”。因此,如果 / 是符號(hào)的第一個(gè)字符,并且 / 后面緊隨著一個(gè) *,則這兩個(gè)字符構(gòu)成注釋符開始標(biāo)記。下面的語(yǔ)句看起來(lái)像是將 y 的值設(shè)置為 x 的值除以 p 所指向的值:
y = x/*p
/* p 指向除數(shù) */;
實(shí)際上,因?yàn)?/* 是注釋符開始標(biāo)記,因此編譯器會(huì)簡(jiǎn)單地“吞噬”程序文本,直到 */ 出現(xiàn)為止。換句話說(shuō),這條語(yǔ)句僅僅把 y 的值設(shè)置為 x 的值,而根本沒有看到 p。我們應(yīng)該將這條語(yǔ)句改為:
y = x / *p
/* p 指向除數(shù) */;或者:
y = x /(*p)
/* p指向除數(shù) */;
3.else 問(wèn)題
考慮下面的程序片斷:
if(x == 0)
if(y == 0)
error();
else {
z = x
y;
f(&z);
}
寫這段程序的程序員的目的明顯是想將情況分為兩種:x == 0 和x!= 0。在第一種情況中,如果 y == 0,則調(diào)用 error()。第二種情況中,程序執(zhí)行 z = x
y;和 f(&z)。
然而,這段程序的實(shí)際效果卻大為不同。其原因是 else 總是與離它最近的 if 相關(guān)聯(lián)。上面那段代碼其實(shí)等價(jià)于:
if(x == 0){
if(y == 0)
error();
else {
z = x
y;
f(&z);
}
}
也就是說(shuō),當(dāng) x!= 0 發(fā)生時(shí)什么也不做。如果要達(dá)到我們想要的效果,應(yīng)該改成:
if(x == 0){
if(y == 0)
error();
} else {
z = z
y;
f(&z);
}
4.表達(dá)式求值順序
一些運(yùn)算符以一種已知的、特定的順序?qū)ζ洳僮鲾?shù)進(jìn)行求值。但另一些則不是。例如下面的表達(dá)式:
a
5.&&、|| 和!運(yùn)算符
C 規(guī)定 0 代表“假”,非零代表“真”。這些運(yùn)算符返回 1 表示“真”而返回 0 表示“假”。&& 和 || 運(yùn)算符如果可以通過(guò)左邊的操作數(shù)確定整個(gè)表達(dá)式的真假性,就不會(huì)對(duì)右邊的操作數(shù)進(jìn)行求值。!10 返回 0,因?yàn)?10 非零;10 && 12 返回 1,因?yàn)?10 和 12 的值都不是 0;10 || 12 也是 1,因?yàn)?10 非零。這個(gè)表達(dá)式中的 12 不會(huì)被求值,因?yàn)樽筮叺?10 就足夠確定整個(gè)表達(dá)式為真。同理 :10 || f()中的 f()也不會(huì)被求值。
6.下標(biāo)從零開始
C 語(yǔ)言中,一個(gè)具有 n 個(gè)元素的數(shù)組中沒有下標(biāo)為 n 的元素,元素的下標(biāo)是從 0 到n-1。下面的程序可能會(huì)崩潰:
int i, a[10];
for(i = 1;i
7.getchar 函數(shù)的返回值為整型(int)
請(qǐng)看以下程序:
#include
int main(void)
{
char c;
while((c = getchar())!= EOF)
putchar(c);
return 0;
}
這段代碼存在一個(gè)小小的,但已經(jīng)足以致命的錯(cuò)誤:c 被聲明為字符型(char)而不是整型。這意味著 c 可能不能正確接收 EOF,從而導(dǎo)致程序不能退出!正確的寫法是:將 char 改成int。
第三篇:C語(yǔ)言常見錯(cuò)誤小結(jié)(定稿)
c語(yǔ)言的最大特點(diǎn)是:功能強(qiáng)、使用方便靈活。C編譯的程序?qū)φZ(yǔ)法檢查并不象其它高級(jí)語(yǔ)言那么嚴(yán)格,這就給編程人員留下“靈活的余地”,但還是由于這個(gè)靈活給程序的調(diào)試帶來(lái)了許多不便,尤其對(duì)初學(xué)C語(yǔ)言的人來(lái)說(shuō),經(jīng)常會(huì)出一些連自己都不知道錯(cuò)在哪里的錯(cuò)誤。看著有錯(cuò)的程序,不知該如何改起,本人通過(guò)對(duì)C的學(xué)習(xí),積累了一些C編程時(shí)常犯的錯(cuò)誤,寫給各位學(xué)員以供參考。
1.書寫標(biāo)識(shí)符時(shí),忽略了大小寫字母的區(qū)別。
main(){
int a=5;
printf(“%d”,A);}
編譯程序把a(bǔ)和A認(rèn)為是兩個(gè)不同的變量名,而顯示出錯(cuò)信息。C認(rèn)為大寫字母和小寫字母是兩個(gè)不同的字符。習(xí)慣上,符號(hào)常量名用大寫,變量名用小寫表示,以增加可讀性。
2.忽略了變量的類型,進(jìn)行了不合法的運(yùn)算。
main(){
float a,b;
printf(“%d”,a%b);}
%是求余運(yùn)算,得到a/b的整余數(shù)。整型變量a和b可以進(jìn)行求余運(yùn)算,而實(shí)型變量則不答應(yīng)進(jìn)行“求余”運(yùn)算。
3.將字符常量與字符串常量混淆。
char c;c=“a”;
在這里就混淆了字符常量與字符串常量,字符常量是由一對(duì)單引號(hào)括起來(lái)的單個(gè)字符,字符串常量是一對(duì)雙引號(hào)括起來(lái)的字符序列。C規(guī)定以“”作字符串結(jié)束標(biāo)志,它是由系統(tǒng)自動(dòng)加上的,所以字符串“a”實(shí)際上包含兩個(gè)字符:‘a(chǎn)'和‘',而把它賦給一個(gè)字符變量是不行的。
4.忽略了“=”與“= =”的區(qū)別。
在許多高級(jí)語(yǔ)言中,用“=”符號(hào)作為關(guān)系運(yùn)算符“等于”。如在BASIC程序中可以寫
if(a=3)then ?
但C語(yǔ)言中,“=”是賦值運(yùn)算符,“==”是關(guān)系運(yùn)算符。如:
if(a==3)a=b;
前者是進(jìn)行比較,a是否和3相等,后者表示假如a和3相等,把b值賦給a。由于習(xí)慣問(wèn)題,初學(xué)者往往會(huì)犯這樣的錯(cuò)誤。
5.忘記加分號(hào)。
分號(hào)是C語(yǔ)句中不可缺少的一部分,語(yǔ)句末尾必須有分號(hào)。
a=1 b=2
編譯時(shí),編譯程序在“a=1”后面沒發(fā)現(xiàn)分號(hào),就把下一行“b=2”也作為上一行語(yǔ)句的一部分,這就會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。改錯(cuò)時(shí),有時(shí)在被指出有錯(cuò)的一行中未發(fā)現(xiàn)錯(cuò)誤,就需要看一下上一行是否漏掉了分號(hào)。
{ z=x+y;t=z/100;printf(“%f”,t);}
對(duì)于復(fù)合語(yǔ)句來(lái)說(shuō),最后一個(gè)語(yǔ)句中最后的分號(hào)不能忽略不寫(這是和PASCAL不同的)。
6.多加分號(hào)。
對(duì)于一個(gè)復(fù)合語(yǔ)句,如:
{ z=x+y;t=z/100;
printf(“%f”,t);};
復(fù)合語(yǔ)句的花括號(hào)后不應(yīng)再加分號(hào),否則將會(huì)畫蛇添足。
又如:
if(a%3==0);I++;
本是假如3整除a,則I加1。但由于if(a%3==0)后多加了分號(hào),則if語(yǔ)句到此結(jié)束,程序?qū)?zhí)行I++語(yǔ)句,不論3是否整除a,I都將自動(dòng)加1。
再如:
for(I=0;I<5;I++);{scanf(“%d”,&x);printf(“%d”,x);}
本意是先后輸入5個(gè)數(shù),每輸入一個(gè)數(shù)后再將它輸出。由于for()后多加了一個(gè)分號(hào),使循環(huán)體變?yōu)榭照Z(yǔ)句,此時(shí)只能輸入一個(gè)數(shù)并輸出它。
7.輸入變量時(shí)忘記加地址運(yùn)算符“&”。
int a,b;
scanf(“%d%d”,a,b);
這是不合法的。Scanf函數(shù)的作用是:按照a、b在內(nèi)存的地址將a、b的值存進(jìn)去。“&a”指a在內(nèi)存中的地址。
8.輸入數(shù)據(jù)的方式與要求不符。
①scanf(“%d%d”,&a,&b);
輸入時(shí),不能用逗號(hào)作兩個(gè)數(shù)據(jù)間的分隔符,如下面輸入不合法:
3,4
輸入數(shù)據(jù)時(shí),在兩個(gè)數(shù)據(jù)之間以一個(gè)或多個(gè)空格間隔,也可用回車鍵,跳格鍵tab。
②scanf(“%d,%d”,&a,&b);
C規(guī)定:假如在“格式控制”字符串中除了格式說(shuō)明以外還有其它字符,則在輸入數(shù)據(jù)時(shí)應(yīng)輸入與這些字符相同的字符。下面輸入是合法的:
3,4
此時(shí)不用逗號(hào)而用空格或其它字符是不對(duì)的。4 3:4
又如:
scanf(“a=%d,b=%d”,&a,&b);輸入應(yīng)如以下形式:
a=3,b=4
9.輸入字符的格式與要求不一致。
在用“%c”格式輸入字符時(shí),“空格字符”和“轉(zhuǎn)義字符”都作為有效字符輸入。
scanf(“%c%c%c”,&c1,&c2,&c3);如輸入a b c
字符“a”送給c1,字符“ ”送給c2,字符“b”送給c3,因?yàn)?c只要求讀入一個(gè)字符,后面不需要用空格作為兩個(gè)字符的間隔。
10.輸入輸出的數(shù)據(jù)類型與所用格式說(shuō)明符不一致。
例如,a已定義為整型,b定義為實(shí)型
a=3;b=4.5;
printf(“%f%dn”,a,b);
編譯時(shí)不給出出錯(cuò)信息,但運(yùn)行結(jié)果將與原意不符。這種錯(cuò)誤尤其需要注重。
11.輸入數(shù)據(jù)時(shí),企圖規(guī)定精度。
scanf(“%7.2f”,&a);
這樣做是不合法的,輸入數(shù)據(jù)時(shí)不能規(guī)定精度。
12.switch語(yǔ)句中漏寫break語(yǔ)句。
例如:根據(jù)考試成績(jī)的等級(jí)打印出百分制數(shù)段。
switch(grade)
{ case 'A':printf(“85~100n”);case 'B':printf(“70~84n”);case 'C':printf(“60~69n”);case 'D':printf(“<60n”);default:printf(“errorn”);
由于漏寫了break語(yǔ)句,case只起標(biāo)號(hào)的作用,而不起判定作用。因此,當(dāng)grade值為A時(shí),printf函數(shù)在執(zhí)行完第一個(gè)語(yǔ)句后接著執(zhí)行第二、三、四、五個(gè)printf函數(shù)語(yǔ)句。正確寫法應(yīng)在每個(gè)分支后再加上“break;”。例如
case 'A':printf(“85~100n”);break;
13.忽視了while和do-while語(yǔ)句在細(xì)節(jié)上的區(qū)別。
(1)main(){int a=0,I;
scanf(“%d”,&I);while(I<=10){a=a+I;I++;}
printf(“%d”,a);}
(2)main(){int a=0,I;
scanf(“%d”,&I);do
{a=a+I;I++;
}while(I<=10);printf(“%d”,a);}
可以看到,當(dāng)輸入I的值小于或等于10時(shí),二者得到的結(jié)果相同。而當(dāng)I>10時(shí),二者結(jié)果就不同了。因?yàn)閣hile循環(huán)是先判定后執(zhí)行,而do-while循環(huán)是先執(zhí)行后判定。對(duì)于大于10的數(shù)while循環(huán)一次也不執(zhí)行循環(huán)體,而do-while語(yǔ)句則要執(zhí)行一次循環(huán)體。
14.定義數(shù)組時(shí)誤用變量。
int n;
scanf(“%d”,&n);int a[n];
數(shù)組名后用方括號(hào)括起來(lái)的是常量表達(dá)式,可以包括常量和符號(hào)常量。即C不答應(yīng)對(duì)數(shù)組的大小作動(dòng)態(tài)定義。
15.在定義數(shù)組時(shí),將定義的“元素個(gè)數(shù)”誤認(rèn)為是可使的最大下標(biāo)值。
m ain()
{static int a[10]={1,2,3,4,5,6,7,8,9,10};printf(“%d”,a[10]);}
C語(yǔ)言規(guī)定:定義時(shí)用a[10],表示a數(shù)組有10個(gè)元素。其下標(biāo)值由0開始,所以數(shù)組元素a[10]是不存在的。
16.初始化數(shù)組時(shí),未使用靜態(tài)存儲(chǔ)。
int a[3]={0,1,2};
這樣初始化數(shù)組是不對(duì)的。C語(yǔ)言規(guī)定只有靜態(tài)存儲(chǔ)(static)數(shù)組和外部存儲(chǔ)(exterm)數(shù)組才能初始化。應(yīng)改為:
static int a[3]={0,1,2};
17.在不應(yīng)加地址運(yùn)算符&的位置加了地址運(yùn)算符。
scanf(“%s”,&str);
C語(yǔ)言編譯系統(tǒng)對(duì)數(shù)組名的處理是:數(shù)組名代表該數(shù)組的起始地址,且scanf函數(shù)中的輸入項(xiàng)是字符數(shù)組名,不必要再加地址符&。應(yīng)改為:
scanf(“%s”,str);
18.同時(shí)定義了形參和函數(shù)中的局部變量。
int max(x,y)int x,y,z;{z=x>y?x:y;return(z);}
形參應(yīng)該在函數(shù)體外定義,而局部變量應(yīng)該在函數(shù)體內(nèi)定義。應(yīng)改為:
int max(x,y)int x,y;{int z;
z=x>y?x:y;return(z);}
附錄:出錯(cuò)信息解釋
Ambiguous operators need parentheses 不明確的運(yùn)算需要用括號(hào)括起
Ambiguous symbol 'xxx' 不明確的符號(hào)
Argument list syntax error 參數(shù)表語(yǔ)法錯(cuò)誤
Array bounds missing 丟失數(shù)組界限符
Array size toolarge 數(shù)組尺寸太大
Bad character in paramenters 參數(shù)中有不適當(dāng)?shù)淖址?/p>
Bad file name format in include directive 包含命令中文件名格式不正確
Bad ifdef directive synatax 編譯預(yù)處理ifdef有語(yǔ)法錯(cuò)
Bad undef directive syntax 編譯預(yù)處理undef有語(yǔ)法錯(cuò)
Bit field too large 位字段太長(zhǎng)
Call of non-function 調(diào)用未定義的函數(shù)
Call to function with no prototype 調(diào)用函數(shù)時(shí)沒有函數(shù)的說(shuō)明
Cannot modify a const object 不允許修改常量對(duì)象
Case outside of switch 漏掉了case 語(yǔ)句
Case syntax error Case 語(yǔ)法錯(cuò)誤
Code has no effect
代碼不可述不可能執(zhí)行到
Compound statement missing{ 分程序漏掉“{”
Conflicting type modifiers 不明確的類型說(shuō)明符
Constant expression required 要求常量表達(dá)式
Constant out of range in comparison 在比較中常量超出范圍
Conversion may lose significant digits 轉(zhuǎn)換時(shí)會(huì)丟失意義的數(shù)字
Conversion of near pointer not allowed 不允許轉(zhuǎn)換近指針
Could not find file 'xxx' 找不到XXX文件
Declaration missing;說(shuō)明缺少“;”
Declaration syntax error 說(shuō)明中出現(xiàn)語(yǔ)法錯(cuò)誤
Default outside of switch
Default 出現(xiàn)在switch語(yǔ)句之外
Define directive needs an identifier 定義編譯預(yù)處理需要標(biāo)識(shí)符
Division by zero 用零作除數(shù)
Do statement must have while Do-while語(yǔ)句中缺少while部分
Enum syntax error 枚舉類型語(yǔ)法錯(cuò)誤
Enumeration constant syntax error 枚舉常數(shù)語(yǔ)法錯(cuò)誤
Error directive :xxx
錯(cuò)誤的編譯預(yù)處理命令
Error writing output file 寫輸出文件錯(cuò)誤
Expression syntax error 表達(dá)式語(yǔ)法錯(cuò)誤
Extra parameter in call 調(diào)用時(shí)出現(xiàn)多余錯(cuò)誤
File name too long 文件名太長(zhǎng)
Function call missing)函數(shù)調(diào)用缺少右括號(hào)
Fuction definition out of place 函數(shù)定義位置錯(cuò)誤
Fuction should return a value 函數(shù)必需返回一個(gè)值
Goto statement missing label Goto語(yǔ)句沒有標(biāo)號(hào)
Hexadecimal or octal constant too large 16進(jìn)制或8進(jìn)制常數(shù)太大
Illegal character 'x' 非法字符x
Illegal initialization 非法的初始化
Illegal octal digit 非法的8進(jìn)制數(shù)字
Illegal pointer subtraction 非法的指針相減
Illegal structure operation 非法的結(jié)構(gòu)體操作
Illegal use of floating point 非法的浮點(diǎn)運(yùn)算
Illegal use of pointer 指針使用非法
Improper use of a typedefsymbol 類型定義符號(hào)使用不恰當(dāng)
In-line assembly not allowed 不允許使用行間匯編
Incompatible storage class 存儲(chǔ)類別不相容
Incompatible type conversion 不相容的類型轉(zhuǎn)換
Incorrect number format 錯(cuò)誤的數(shù)據(jù)格式
Incorrect use of default Default使用不當(dāng)
Invalid indirection 無(wú)效的間接運(yùn)算
Invalid pointer addition 指針相加無(wú)效
Irreducible expression tree 無(wú)法執(zhí)行的表達(dá)式運(yùn)算
Lvalue required
需要邏輯值0或非0值
Macro argument syntax error 宏參數(shù)語(yǔ)法錯(cuò)誤
Macro expansion too long 宏的擴(kuò)展以后太長(zhǎng)
Mismatched number of parameters in definition 定義中參數(shù)個(gè)數(shù)不匹配
Misplaced break
此處不應(yīng)出現(xiàn)break語(yǔ)句
Misplaced continue
此處不應(yīng)出現(xiàn)continue語(yǔ)句
Misplaced decimal point 此處不應(yīng)出現(xiàn)小數(shù)點(diǎn)
Misplaced elif directive 不應(yīng)編譯預(yù)處理elif Misplaced else 此處不應(yīng)出現(xiàn)else Misplaced else directive
此處不應(yīng)出現(xiàn)編譯預(yù)處理else Misplaced endif directive
此處不應(yīng)出現(xiàn)編譯預(yù)處理endif Must be addressable 必須是可以編址的
Must take address of memory location 必須存儲(chǔ)定位的地址
No declaration for function 'xxx' 沒有函數(shù)xxx的說(shuō)明
No stack 缺少堆棧
No type information 沒有類型信息
Non-portable pointer assignment 不可移動(dòng)的指針(地址常數(shù))賦值
Non-portable pointer comparison 不可移動(dòng)的指針(地址常數(shù))比較
Non-portable pointer conversion 不可移動(dòng)的指針(地址常數(shù))轉(zhuǎn)換
Not a valid expression format type 不合法的表達(dá)式格式
Not an allowed type 不允許使用的類型
Numeric constant too large 數(shù)值常太大
Out of memory 內(nèi)存不夠用
Parameter 'xxx' is never used 能數(shù)xxx沒有用到
Pointer required on left side of-> 符號(hào)->的左邊必須是指針
Possible use of 'xxx' before definition 在定義之前就使用了xxx(警告)
Possibly incorrect assignment 賦值可能不正確
Redeclaration of 'xxx' 重復(fù)定義了xxx
Redefinition of 'xxx' is not identical xxx的兩次定義不一致
Register allocation failure 寄存器定址失敗
Repeat count needs an lvalue 重復(fù)計(jì)數(shù)需要邏輯值
Size of structure or array not known 結(jié)構(gòu)體或數(shù)給大小不確定
Statement missing;語(yǔ)句后缺少“;”
Structure or union syntax error 結(jié)構(gòu)體或聯(lián)合體語(yǔ)法錯(cuò)誤
Structure size too large 結(jié)構(gòu)體尺寸太大
Sub scripting missing ] 下標(biāo)缺少右方括號(hào)
Superfluous & with function or array 函數(shù)或數(shù)組中有多余的“&” Suspicious pointer conversion 可疑的指針轉(zhuǎn)換
Symbol limit exceeded 符號(hào)超限
Too few parameters in call
函數(shù)調(diào)用時(shí)的實(shí)參少于函數(shù)的參數(shù)不
Too many default cases
Default太多(switch語(yǔ)句中一個(gè))Too many error or warning messages 錯(cuò)誤或警告信息太多
Too many type in declaration 說(shuō)明中類型太多
Too much auto memory in function 函數(shù)用到的局部存儲(chǔ)太多
Too much global data defined in file 文件中全局?jǐn)?shù)據(jù)太多
Two consecutive dots 兩個(gè)連續(xù)的句點(diǎn)
Type mismatch in parameter xxx 參數(shù)xxx類型不匹配
Type mismatch in redeclaration of 'xxx' xxx重定義的類型不匹配
Unable to create output file 'xxx' 無(wú)法建立輸出文件xxx
Unable to open include file 'xxx' 無(wú)法打開被包含的文件xxx Unable to open input file 'xxx' 無(wú)法打開輸入文件xxx Undefined label 'xxx' 沒有定義的標(biāo)號(hào)xxx Undefined structure 'xxx' 沒有定義的結(jié)構(gòu)xxx Undefined symbol 'xxx' 沒有定義的符號(hào)xxx
Unexpected end of file in comment started on line xxx 從xxx行開始的注解尚未結(jié)束文件不能結(jié)束
Unexpected end of file in conditional started on line xxx 從xxx 開始的條件語(yǔ)句尚未結(jié)束文件不能結(jié)束
Unknown assemble instruction 未知的匯編結(jié)構(gòu)
Unknown option 未知的操作
Unknown preprocessor directive: 'xxx' 不認(rèn)識(shí)的預(yù)處理命令xxx Unreachable code 無(wú)路可達(dá)的代碼
Unterminated string or character constant 字符串缺少引號(hào)
User break
用戶強(qiáng)行中斷了程序
Void functions may not return a value Void類型的函數(shù)不應(yīng)有返回值
Wrong number of arguments 調(diào)用函數(shù)的參數(shù)數(shù)目錯(cuò)
'xxx' not an argument xxx不是參數(shù)
'xxx' not part of structure xxx不是結(jié)構(gòu)體的一部分
xxx statement missing(xxx語(yǔ)句缺少左括號(hào)
xxx statement missing)xxx語(yǔ)句缺少右括號(hào)
xxx statement missing;xxx缺少分號(hào)
xxx' declared but never used 說(shuō)明了xxx但沒有使用
xxx' is assigned a value which is never used 給xxx賦了值但未用過(guò)
Zero length structure 結(jié)構(gòu)體的長(zhǎng)度為零
第四篇:一、向下溝通——下達(dá)任務(wù)技巧
上下級(jí)溝通技巧
在職場(chǎng)中,與上級(jí)、下級(jí)、同事、外部客戶或者自己溝通時(shí),經(jīng)常會(huì)出現(xiàn)一些問(wèn)題。例如,跨部門溝通時(shí),不同部門因?yàn)槁毮懿煌创粋€(gè)問(wèn)題的觀點(diǎn)角度不同,容易出現(xiàn)沖突;在部門內(nèi)部,每個(gè)人的立場(chǎng)不同,同樣面臨沖突;部門或者個(gè)人之間因?yàn)楣ぷ靼才挪煌袝r(shí)工作協(xié)調(diào)困難等。
在生活、工作中,與其他人溝通前,首先面對(duì)如何與自己溝通,自我溝通能力與自身的情緒、情商和壓力管理能力等緊密相關(guān)。例如,在工作中,有些人遇到困難無(wú)法按時(shí)完成任務(wù)時(shí),不主動(dòng)與領(lǐng)導(dǎo)溝通,導(dǎo)致今后的工作更難開展。因此,每個(gè)人都要學(xué)會(huì)問(wèn)自己開放式的好問(wèn)題,掌握自我溝通要點(diǎn)。
一、向下溝通——下達(dá)任務(wù)技巧
【案例】
領(lǐng)導(dǎo)下達(dá)的任務(wù)
在電視劇《杜拉拉升職記》中,杜拉拉的上級(jí)領(lǐng)導(dǎo)安排她完成兩件工作:第一,撰寫優(yōu)秀員工評(píng)選文案;第二,為評(píng)選出的優(yōu)秀員工準(zhǔn)備禮物。
杜拉拉聽后回答:“沒問(wèn)題!”然后很順利地寫出了文案,并策劃采用筆、本之類的文具系列作為獲獎(jiǎng)禮物,之后把文案報(bào)告和禮品策劃拿給領(lǐng)導(dǎo)審查。出乎杜拉拉意料的是,上級(jí)領(lǐng)導(dǎo)對(duì)她的方案非常不滿意,說(shuō)道:“這個(gè)評(píng)選文案很像感謝信,沒有體現(xiàn)公司的企業(yè)文化,并且作為全球五百?gòu)?qiáng)企業(yè),員工對(duì)于優(yōu)秀員工評(píng)選具有很高的期望,這樣的禮品和要求差距太遠(yuǎn)……”杜拉拉聽后,只能不停地說(shuō):“對(duì)不起!我沒有問(wèn)清楚。”
上述案例中,領(lǐng)導(dǎo)在給杜拉拉布置工作任務(wù)時(shí),并沒有對(duì)工作結(jié)果提出具體要求,也沒有說(shuō)明要求策劃文案和禮品符合公司的企業(yè)文化,所以在溝通中領(lǐng)導(dǎo)具有一定的責(zé)任。
作為上級(jí),在分配任務(wù)時(shí),需要問(wèn)自己是否說(shuō)清楚工作任務(wù);作為下級(jí),在接受任務(wù)時(shí),需要問(wèn)自己是否明白任務(wù)的具體內(nèi)容。
1.準(zhǔn)確傳達(dá)任務(wù)的意圖
作為上級(jí),要學(xué)會(huì)準(zhǔn)確傳達(dá)任務(wù)的意圖。
【案例】
吩咐下屬?gòu)?fù)印文件 某領(lǐng)導(dǎo)要吩咐一項(xiàng)任務(wù)給下級(jí)張小姐:“張小姐,請(qǐng)你將那個(gè)調(diào)查報(bào)告復(fù)印兩份,在下班之前送到總經(jīng)理辦公室交給總經(jīng)理,請(qǐng)留意復(fù)印的質(zhì)量,總經(jīng)理要帶給客戶參考!”可以看出,這個(gè)任務(wù)下達(dá)地非常清晰明確,包含了很多關(guān)鍵點(diǎn):復(fù)印兩份、時(shí)間節(jié)點(diǎn)是下班之前、需要注意復(fù)印的質(zhì)量、總經(jīng)理要帶給客戶參考。
如果把這個(gè)任務(wù)簡(jiǎn)潔化為:“小張,麻煩您把這個(gè)報(bào)告復(fù)印兩份,待會(huì)交給總經(jīng)理。”這樣與之前任務(wù)對(duì)照后發(fā)現(xiàn)缺失了很多關(guān)鍵因素:在時(shí)間上,“待會(huì)”與“下班之前”的概念不一樣;在復(fù)印質(zhì)量上,沒有明確的用途說(shuō)明,如果復(fù)印件出現(xiàn)污穢,不僅影響公司的內(nèi)部使用和閱讀,還會(huì)達(dá)不到客戶要求。根據(jù)這樣的指示,如果下級(jí)沒有很好地完成上級(jí)交代的任務(wù),責(zé)任更多地歸于上級(jí)領(lǐng)導(dǎo)。
在工作中,如果上級(jí)沒有交代任務(wù)背景,下屬依舊會(huì)去做事情,但不會(huì)積極主動(dòng),更不會(huì)用創(chuàng)造性的方式去做,只能被動(dòng)地執(zhí)行,所以上級(jí)下達(dá)任務(wù)時(shí),任務(wù)背景不可缺少。
【案例】
下達(dá)布置答謝會(huì)的任務(wù)
某公司市場(chǎng)部的王經(jīng)理將老客戶答謝會(huì)活動(dòng)現(xiàn)場(chǎng)的布置任務(wù)交給了主管小劉,要求小劉在星期五之前完成會(huì)場(chǎng)布置任務(wù)。接受任務(wù)后,小劉作為主管并找來(lái)三個(gè)下屬,當(dāng)面告知如何布置會(huì)場(chǎng),開始親自準(zhǔn)備。
結(jié)果到星期五時(shí),市場(chǎng)部王經(jīng)理非常不滿意會(huì)場(chǎng)布置,提出異議:“為什么將椅子放成一排一排的,不便于大家交流呀!為什么只放三排,才20個(gè)座位,明天可能會(huì)來(lái)40多人,也沒有準(zhǔn)備茶點(diǎn)!……”
一方面,作為下屬,雖然小劉積極地執(zhí)行了任務(wù),但是上級(jí)王經(jīng)理仍然不滿意,感覺環(huán)境布置不合自己心意;另一方面,小劉感覺已經(jīng)盡心竭力做好工作,王經(jīng)理有些“雞蛋里挑骨頭”,過(guò)于苛刻。
通過(guò)案例可見,上級(jí)和下屬對(duì)對(duì)方都有看法,工作沒有做到位其實(shí)雙方都有責(zé)任,但在高效溝通中,管理者應(yīng)該承擔(dān)100%的責(zé)任,因?yàn)樯霞?jí)向下級(jí)分配任務(wù)時(shí),沒有將任務(wù)的具體標(biāo)準(zhǔn)說(shuō)清楚,王經(jīng)理并沒有告訴小劉要將會(huì)場(chǎng)布置成什么樣子,是否需要茶點(diǎn),是否需要條幅等,而且小劉也沒有提問(wèn),雙方都以為相互明白,缺少雙向溝通,結(jié)果出現(xiàn)差距。所以上級(jí)對(duì)下級(jí)準(zhǔn)確傳達(dá)任務(wù)的意圖非常關(guān)鍵,上級(jí)要將事情說(shuō)清楚。
2.學(xué)會(huì)使部下積極接受任務(wù) 上級(jí)分配任務(wù)之后,要學(xué)會(huì)讓下屬能夠積極地接受任務(wù),不斷地激勵(lì)、激發(fā)下屬,這樣下屬的主觀能動(dòng)性才會(huì)發(fā)揮出來(lái)。
具體來(lái)說(shuō),上級(jí)可以通過(guò)以下方法促進(jìn)下屬的工作:
態(tài)度和藹,用詞禮貌
在職場(chǎng)中,往往上級(jí)不注重對(duì)下級(jí)的態(tài)度,但是下級(jí)特別注重對(duì)上級(jí)的態(tài)度,而且特別敏感,如“小張把這東西復(fù)印一下”和“小張,麻煩您幫我把這復(fù)印一下”,前者命令似的口吻和后者朋友式的口吻完全不同。因此,在溝通時(shí)需要注重對(duì)方的感受,不能永遠(yuǎn)用命令式的口吻,要懂得態(tài)度和藹,用詞禮貌。
讓部下明白工作的重要性
上級(jí)向下級(jí)分配任務(wù)時(shí),要將工作任務(wù)的重要性推銷給下屬。
【案例】
麥當(dāng)勞的CEO
眾所周知,麥當(dāng)勞是美國(guó)企業(yè),但在2004年麥當(dāng)勞公司啟用了一個(gè)新的CEO,他是澳大利亞人。
這位CEO的職業(yè)經(jīng)歷具有傳奇色彩,17歲左右在麥當(dāng)勞打工,具體工作是刷廁所,兩個(gè)小時(shí)后他不愿意干了,他的直屬經(jīng)理就在午餐時(shí)與他交流:“你知道嗎,其實(shí)你做的工作是麥當(dāng)勞里最重要的工作之一,因?yàn)辂湲?dāng)勞具有四大宗旨:品質(zhì)、服務(wù)、物有所值和清潔。”
從此以后,這位小伙子認(rèn)識(shí)到刷廁所工作雖不光鮮但很重要,于是端正工作態(tài)度,充分發(fā)揮工作主觀能動(dòng)性,在四年時(shí)間里把分店中的所有崗位做了一遍,他21歲時(shí)成為年輕的店經(jīng)理,爾后不到10年掌管20多家分店,20年后在美國(guó)成為擁有兩萬(wàn)多家全球連鎖店的公司老板。在他就任的第一天,他談道非常感謝他的第一任直屬經(jīng)理,讓他明白了刷廁所的重要性。
可見,上級(jí)向下級(jí)分配任務(wù)時(shí),有責(zé)任將工作的重要性推銷給下屬,這樣能夠促使下屬出色地完成任務(wù),成就下屬的職業(yè)生涯。
共同探討,讓部下提出疑問(wèn)
上級(jí)再給下屬分配完任務(wù)之后,需要向下屬提出問(wèn)題,可以詢問(wèn)下屬“這件事情你準(zhǔn)備怎么辦?”下屬會(huì)將思路和難點(diǎn)分享出來(lái);如果上級(jí)只是詢問(wèn)“還有沒有問(wèn)題?”,下級(jí)會(huì)因?yàn)閾?dān)心被別人認(rèn)為事多而不敢提問(wèn),所以與下級(jí)溝通時(shí)需要采用靈活的方式,使部下能夠積極地接受任務(wù)。
3.執(zhí)行前,要下級(jí)復(fù)述任務(wù)內(nèi)容 上級(jí)向下級(jí)傳達(dá)任務(wù)后,需要要求下屬?gòu)?fù)述工作任務(wù);即使上級(jí)沒有要求復(fù)述,下級(jí)也要首先復(fù)述工作任務(wù)。
在工作中,上級(jí)和下級(jí)都要養(yǎng)成復(fù)述的習(xí)慣,上級(jí)要求復(fù)述,下屬主動(dòng)復(fù)述,共同促進(jìn)完成工作。
第五篇:C語(yǔ)言常見錯(cuò)誤小結(jié)
C語(yǔ)言常見錯(cuò)誤小結(jié)-C/C++ / C語(yǔ)言
C語(yǔ)言的最大特點(diǎn)是:功能強(qiáng)、使用方便靈活。C編譯的程序?qū)φZ(yǔ)法檢查并不象其它高級(jí)語(yǔ) 言那么嚴(yán)格,這就給編程人員留下“靈活的余地”,但還是由于這個(gè)靈活給程序的調(diào)試帶 來(lái)了許多不便,尤其對(duì)初學(xué)C語(yǔ)言的人來(lái)說(shuō),經(jīng)常會(huì)出一些連自己都不知道錯(cuò)在哪里的錯(cuò)誤
。看著有錯(cuò)的程序,不知該如何改起,本人通過(guò)對(duì)C的學(xué)習(xí),積累了一些C編程時(shí)常犯的錯(cuò)
誤,寫給各位學(xué)員以供參考。
1.書寫標(biāo)識(shí)符時(shí),忽略了大小寫字母的區(qū)別。main(){ int a=5;printf(“%d ”,A);} 編譯程序把a(bǔ)和A認(rèn)為是兩個(gè)不同的變量名,而顯示出錯(cuò)信息。C認(rèn)為大寫字母和小寫字母是
兩個(gè)不同的字符。習(xí)慣上,符號(hào)常量名用大寫,變量名用小寫表示,以增加可讀性。
2.忽略了變量的類型,進(jìn)行了不合法的運(yùn)算。main(){ float a,b;printf(“%d ”,a%b);} %是求余運(yùn)算,得到a/b的整余數(shù)。整型變量a和b可以進(jìn)行求余運(yùn)算,而實(shí)型變量則不允許
進(jìn)行“求余”運(yùn)算。
3.將字符常量與字符串常量混淆。char c;c= “a ”;在這里就混淆了字符常量與字符串常量,字符常量是由一對(duì)單引號(hào)括起來(lái)的單個(gè)字符,字 符串常量是一對(duì)雙引號(hào)括起來(lái)的字符序列。C規(guī)定以“”作字符串結(jié)束標(biāo)志,它是由系統(tǒng) 自動(dòng)加上的,所以字符串“a”實(shí)際上包含兩個(gè)字符:?a '和? ',而把它賦給一個(gè)字符變 量是不行的。
4.忽略了“=”與“==”的區(qū)別。
在許多高級(jí)語(yǔ)言中,用“=”符號(hào)作為關(guān)系運(yùn)算符“等于”。如在BASIC程序中 可以寫
if(a=3)then …
但C語(yǔ)言中,“=”是賦值運(yùn)算符,“==”是關(guān)系運(yùn)算符。如: if(a==3)a=b;
前者是進(jìn)行比較,a是否和3相等,后者表示如果a和3相等,把b值賦給a。由于習(xí)慣問(wèn)題,初學(xué)者往往會(huì)犯這樣的錯(cuò)誤。
5.忘記加分號(hào)。
分號(hào)是C語(yǔ)句中不可缺少的一部分,語(yǔ)句末尾必須有分號(hào)。a=1 b=2 編譯時(shí),編譯程序在“a=1”后面沒發(fā)現(xiàn)分號(hào),就把下一行“b=2”也作為上一行語(yǔ)句的一
部分,這就會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。改錯(cuò)時(shí),有時(shí)在被指出有錯(cuò)的一行中未發(fā)現(xiàn)錯(cuò)誤,就需要看 一下上一行是否漏掉了分號(hào)。{ z=x+y;t=z/100;printf(“%f ”,t);} 對(duì)于復(fù)合語(yǔ)句來(lái)說(shuō),最后一個(gè)語(yǔ)句中最后的分號(hào)不能忽略不寫(這是和PASCAL 不同的)。
6.多加分號(hào)。
對(duì)于一個(gè)復(fù)合語(yǔ)句,如: { z=x+y;t=z/100;printf(“%f ”,t);};復(fù)合語(yǔ)句的花括號(hào)后不應(yīng)再加分號(hào),否則將會(huì)畫蛇添足。又如:
if(a%3==0);I++;本是如果3整除a,則I加1。但由于if(a%3==0)后多加了分號(hào),則if語(yǔ)句到此結(jié)束,程序?qū)?/p>
執(zhí)行I++語(yǔ)句,不論3是否整除a,I都將自動(dòng)加1。再如:
for(I=0;I <5;I++);{scanf(“%d ”,&x);printf(“%d ”,x);} 本意是先后輸入5個(gè)數(shù),每輸入一個(gè)數(shù)后再將它輸出。由于for()后多加了一個(gè)分號(hào),使循 環(huán)體變?yōu)榭照Z(yǔ)句,此時(shí)只能輸入一個(gè)數(shù)并輸出它。
7.輸入變量時(shí)忘記加地址運(yùn)算符“&”。int a,b;scanf(“%d%d ”,a,b);這是不合法的。Scanf函數(shù)的作用是:按照a、b在內(nèi)存的地址將a、b的值存進(jìn)去。“&a”指 a在內(nèi)存中的地址。
8.輸入數(shù)據(jù)的方式與要求不符。①scanf(“%d%d ”,&a,&b);輸入時(shí),不能用逗號(hào)作兩個(gè)數(shù)據(jù)間的分隔符,如下面輸入不合法: 3,4
輸入數(shù)據(jù)時(shí),在兩個(gè)數(shù)據(jù)之間以一個(gè)或多個(gè)空格間隔,也可用回車鍵,跳格鍵tab。②scanf(“%d,%d ”,&a,&b);C規(guī)定:如果在“格式控制”字符串中除了格式說(shuō)明以外還有其它字符,則在輸入數(shù)據(jù)時(shí)應(yīng) 輸入與這些字符相同的字符。下面輸入是合法的: 3,4
此時(shí)不用逗號(hào)而用空格或其它字符是不對(duì)的。3 4 3:4 又如:
scanf(“a=%d,b=%d ”,&a,&b);輸入應(yīng)如以下形式: a=3,b=4
9.輸入字符的格式與要求不一致。
在用“%c”格式輸入字符時(shí),“空格字符”和“轉(zhuǎn)義字符”都作為有效字符輸入。scanf(“%c%c%c ”,&c1,&c2,&c3);如輸入a b c
字符“a”送給c1,字符“ ”送給c2,字符“b”送給c3,因?yàn)?c只要求讀入一個(gè)字符,后 面不需要用空格作為兩個(gè)字符的間隔。
10.輸入輸出的數(shù)據(jù)類型與所用格式說(shuō)明符不一致。例如,a已定義為整型,b定義為實(shí)型 a=3;b=4.5;printf(“%f%dn ”,a,b);編譯時(shí)不給出出錯(cuò)信息,但運(yùn)行結(jié)果將與原意不符。這種錯(cuò)誤尤其需要注意。
11.輸入數(shù)據(jù)時(shí),企圖規(guī)定精度。scanf(“%7.2f ”,&a);這樣做是不合法的,輸入數(shù)據(jù)時(shí)不能規(guī)定精度。
12.switch語(yǔ)句中漏寫break語(yǔ)句。
例如:根據(jù)考試成績(jī)的等級(jí)打印出百分制數(shù)段。switch(grade){ case 'A ':printf(“85~100n ”);case 'B ':printf(“70~84n ”);case 'C ':printf(“60~69n ”);case 'D ':printf(“ <60n ”);default:printf(“errorn ”);由于漏寫了break語(yǔ)句,case只起標(biāo)號(hào)的作用,而不起判斷作用。因此,當(dāng)grade值為A時(shí),printf函數(shù)在執(zhí)行完第一個(gè)語(yǔ)句后接著執(zhí)行第二、三、四、五個(gè)printf函數(shù)語(yǔ)句。正確寫 法應(yīng)在每個(gè)分支后再加上“break;”。例如
case 'A ':printf(“85~100n ”);break;
13.忽視了while和do-while語(yǔ)句在細(xì)節(jié)上的區(qū)別。(1)main(){int a=0,I;scanf(“%d ”,&I);while(I <=10){a=a+I;I++;} printf(“%d ”,a);}(2)main(){int a=0,I;scanf(“%d ”,&I);do {a=a+I;I++;}while(I <=10);printf(“%d ”,a);} 可以看到,當(dāng)輸入I的值小于或等于10時(shí),二者得到的結(jié)果相同。而當(dāng)I> 10時(shí),二者結(jié)果就
不同了。因?yàn)閣hile循環(huán)是先判斷后執(zhí)行,而do-while循環(huán)是先執(zhí)行后判斷。對(duì)于大于10的
數(shù)while循環(huán)一次也不執(zhí)行循環(huán)體,而do-while語(yǔ)句則要執(zhí)行一次循環(huán)體。
14.定義數(shù)組時(shí)誤用變量。int n;scanf(“%d ”,&n);int a[n];數(shù)組名后用方括號(hào)括起來(lái)的是常量表達(dá)式,可以包括常量和符號(hào)常量。即C不允許對(duì)數(shù)組的
大小作動(dòng)態(tài)定義。
15.在定義數(shù)組時(shí),將定義的“元素個(gè)數(shù)”誤認(rèn)為是可使的最大下標(biāo)值。main(){static int a[10]={1,2,3,4,5,6,7,8,9,10};printf(“%d ”,a[10]);} C語(yǔ)言規(guī)定:定義時(shí)用a[10],表示a數(shù)組有10個(gè)元素。其下標(biāo)值由0開始,所以數(shù)組元素a[ 10]是不存在的。
16.在不應(yīng)加地址運(yùn)算符&的位置加了地址運(yùn)算符。scanf(“%s ”,&str);C語(yǔ)言編譯系統(tǒng)對(duì)數(shù)組名的處理是:數(shù)組名代表該數(shù)組的起始地址,且scanf函數(shù)中的輸入 項(xiàng)是字符數(shù)組名,不必要再加地址符&。應(yīng)改為:scanf(“%s ”,str);
17.同時(shí)定義了形參和函數(shù)中的局部變量。int max(x,y)int x,y,z;{z=x> y?x:y;return(z);} 形參應(yīng)該在函數(shù)體外定義,而局部變量應(yīng)該在函數(shù)體內(nèi)定義。應(yīng)改為: int max(x,y)int x,y;{int z;z=x> y?x:y;return(z);}