當前位置:首頁 » 編程語言 » c語言換衣服
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言換衣服

發布時間: 2022-07-08 09:59:10

c語言中的if語句有哪些形式呢

、 第一種形式為基本形式:if

if(表達式) 語句

其語義是:如果表達式的值為真,則執行其後的語句,否則不執行該語句。

2、第二種形式為: if-else

if(表達式) 語句1;else 語句2;

其語義是:如果表達式的值為真,則執行語句1,否則執行語句2 。

3、第三種形式為if-else-if形式

前二種形式的if語句一般都用於兩個分支的情況。當有多個分支選擇時,可採用if-else-if語句,

一般形式為: if(表達式1) 語句1; else if(表達式2) 語句2; else if(表達式3) 語句3;…

else if(表達式m) 語句m; else 語句n;

其語義是:依次判斷表達式的值,當出現某個值為真時,則執行其對應的語句。然後跳到整個if

句之外繼續執行程序。 如果所有的表達式均為假,則執行語句n。然後繼續執行後續程序。

(1)c語言換衣服擴展閱讀

在使用if語句中還應注意以下問題:

在三種形式的if語句中,在if關鍵字之後均為表達式。

該表達式通常是邏輯表達式或關系表達式,但也可以是其它表達式,如賦值表達式等,甚至也可以是一個變數。例如: if(a=5) 語句; if(b) 語句;

都是允許的。只要表達式的值為非0,即為「真」。如在: if(a=5)…;中表達式的值永遠為非0,所以其後的語句總是要執行的,當然這種情況在程序中不一定會出現,但在語法上是合法的。

㈡ JAVA好學還是C語言好學

JAVA還是比較好學,在以後的求職過程也是應用比較多的。

一、企業需求大

多年來,Java作為一種高效的編程言語而廣受歡迎,這也是其成為各種軟體開發程序中最常用的言語之一,Java言語為開發人員供給了很多資料庫,而且,Java與任何類型的軟體程序兼容,安全且易於運用,因而,Java言語很受人們歡迎,而企業對Java人才的需求也在持續增長。

二、Java幹流編程言語

自從Java編程言語於1995年誕生以來,已經整整25年了,有人表示Java將會被替換,但是,跟著其他言語對Java的需求逐漸增加,Java開發范疇取得了長足的前進,因而,Java開發人員的作業時機增加了,其間的首要原因是Java言語生態系統自身具有極大的自我可持續性,適應性和兼容性正。

三、Java是IT職業的中心言語

在曩昔的二十年中,Java已從計算機編程言語的第25位上升到最高方位,Java廣泛的名譽在於其簡單和高效的功能,例如Java言語清晰,易於調試,在大多數情況下,由Java操作的應用程序和網站具有很高的可伸縮性,而且能夠處理比其他程序更多的數據。

四、Java擁有強大的發展路線圖

Oracle仍將遵循強大的路線圖致力發展Java。Oracle計劃將該平台模塊化,同時提高安全性和使用性能。這將使Java擴展更為輕松,可用於從大型軟體系統到小型設備的各種設備規模,其中包括嵌入式物聯網處理器。

JAVA優點

1、Java語言吸收了C++語言的各種優點,具有功能強大和簡單易用兩個特徵。

2、Java語言作為靜態面向對象編程語言的代表,實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。

3、Java具有簡單性、面向對象、分布式、安全性、平台獨立與可移植性、動態性等特點。

4、Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。

㈢ C語言數組矩陣轉換問題

#include<stdio.h>
#defineSIZE3
inta[SIZE][SIZE];

voidtransf(inta[SIZE][SIZE])
{
inti,j,t;

for(i=0;i<SIZE;i++)
{
for(j=i;j<SIZE;j++)
{
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
//printf("%d ",a[i][j]);
}
//printf(" ");
}
}

intmain(void)
{
inti,j;
printf("Pleaseentertheelements: ");
for(i=0;i<SIZE;i++)
{
for(j=0;j<SIZE;j++)
scanf("%d",&a[i][j]);

}
printf("ThenewMatrixis: ");
for(i=0;i<SIZE;i++)
{
for(j=0;j<SIZE;j++)
{printf("%d ",a[i][j]);}
printf(" ");
}
transf(a);
printf(" ThetransformedMatrixis: ");
for(i=0;i<SIZE;i++)
{
for(j=0;j<SIZE;j++)
{printf("%d ",a[i][j]);}
printf(" ");
}
printf(" ");

return0;
}

transf函數中 j 的循環由於從0~SIZE所以矩陣被轉置了兩次,得到的結果還是他本身,而且printf語句在transf函數中不能正確輸出矩陣,把你的代碼修改了。

㈣ 語言水平測試只有多選缺乏什麼效度

語言研究中測試框架的類型、效度及方法論初探

中國社會科學網
2015-11-12 · 中國社會科學網官方賬號
摘要:

文章對語言研究中的測試框架從形式和邏輯關聯上進行了分類,即形式上分為單項測試、組合測試和多項測試,邏輯關聯上分為邏輯標記型和邏輯索引型。在此基礎上,文章分析了框架測試的本質及其效度,指出了影響測試效度的因素。最後從方法論角度論述了研究測試框架的意義。

測試框架; 形式類型; 邏輯類型; 效度; 方法論

作者簡介:

劉宗保,安徽大學文學院。

相關信息:

【基金項目】本研究獲安徽大學「博士科研啟動經費」項目(編號:02303319-0228)資助。

(本文刊於《語言教學與研究》2015年第3期)

語言研究中常常需要對研究對象進行定性,在定性過程中,有幾種可供選擇的方法,比較常用的方法是運用定義法,直接說明對象的性質和特徵。還有一種方法,是運用一些可觀察的語言成分或框架,來測試鑒定對象的性質,如用「A和B→B和A」來測試「和」的介詞和連詞用法,通過測試則為連詞,否則為介詞。這類測試框架類似於化學中測試酸鹼性的ph試紙,通過這些測試框架,我們可以按圖索驥,明確測試對象的性質。

在測試中,有的是以詞語形式出現的,如鑒定字;另一部分是框架的形式,如上面說的測試連詞框架。我們認為詞語測試與框架測試在本質上是一致的,都是對象的分布環境,而分布也是框架。所以下文的分析都統一稱為「測試框架」。

一測試流程及類型

1.1 測試流程

所謂測試流程,是作者運用測試框架測試對象屬性的操作步驟,其程序可以圖示如下:

上圖①-③可描述為:把需要測試的對象X,如「看」,輸入到測試的框架Z,如「(來/去)+V自主+(O)+(來/去)+{祈使}①」中。如果能通過測試,如「去看!」,則它就具有Y(自主屬性),即「看」為自主動詞。

當然,上面的測試隱含了作者設計框架的過程,即作者首先需要對測試屬性Y本身進行定性,如對「自主」的定性為:「能表示有意識的或有心的動作行為……即能由動作發出者做主、主觀決定、自由支配的行為」,然後設計相應的框架Z,如上面所說的「自主」框架,再把相應的對象X輸入到框架中進行測試。簡言之,框架測試背後實際上隱含了由Y到Z再到X的過程。

1.2 測試框架的類型

測試框架可以從形式和邏輯關聯兩個角度進行分類。

1.2.1 形式類型

根據測試框架與測試屬性之間的形式對應關系,可以把它分為:單項測試、組合測試和多項測試。

1.2.1.1 單項測試

指用框架測試屬性時,框架和屬性之間是一對一的,或者在測試某個屬性時,有幾個框架可供選擇,這些框架之間是在一個層面上的,沒有層次之分,可簡化為:

Y。

如用來測試時體的「了/著」,分別對應著「完成/進行」這一組屬性,它們與需要測試的屬性之間是一對一測試的。同時測試「進行」體屬性的可能還有「正在/在」等框架,但它們和「著」之間是平行的,不存在先後之別。

相似的測試如劉丹青(2002)提出的測試類指主語的謂語框架,即同「多、少、豐富、稀少」等表屬性的謂語同現的主語,在指稱上都是表類指的。這里需要測試的屬性只有一個,即主語的類指性,但可供選擇的測試詞語不止一個,它們之間沒有先後之別,是一個層次上的。

又如王燦龍(2008)通過「看來」測試「S(有生)非VP不可」是否為「言者視角」(看來他非去不可);張伯江(2002)通過副詞「實實在在」測試施事行為的具體性(門坎兒實實在在絆了我一個跟頭)、用狀語「沖著我」測試施事行為的方向性(那狗直沖著我咬過來)、用「一陣陣」測試施事行為的可控性(風一陣陣把門吹的又開又關上)等。

1.2.1.2 組合測試

這類測試從宏觀上看是指框架與屬性之間是多對一的,即一個屬性用幾種框架來測試,並且這些框架之間有層次、先後之分。這類框架在測試時有兩類:

第一類組合框架是「排外」的,即通過設計組合框架來排除屬於測試屬性邊緣的成員,縮小測試對象的范圍,從而准確鎖定所要測試的屬性,可簡化為: 。

如張國憲(2006:19-21)鑒定性質形容詞與非性質形容詞時用了三個句法框架:「{最/很/比較/稍}+________」以及相應的兩個次框架

。第一個用來鑒定典型的性質形容詞如「大、小」等,第二個用來鑒定大量的非典型性質形容詞,如「珍貴」可以進入「這張照片比那張珍貴」,第三個是用來篩選一些進入框架二的非性質形容詞,如「寬闊」不能進入「寬闊大街」。

又如袁毓林(1998:106-107)分別運用「包孕測試」(即讓待測試的句子作賓語:地鐵直達蘋果園→我知道地鐵直達蘋果園)、自指測試(通過在句子後面加上「……的時候/地方」等變成自指偏正片語:王師傅用芹菜包了餃子→王師傅用芹菜包了餃子的消息)和刪除測試(把基礎句中不影響句子合格性的介詞結構刪除:媽媽在院子里晾衣服→媽媽晾衣服)等形式操作來確定原子句。其中前兩個測試用的測試框架是「賓語/定語從句」,是對基礎句的篩選,最後一個是把基礎句中與論元關系不大的成分刪除,成為原子句。

第二類組合框架是「對內」的,即通過設計組合框架來篩選測試屬性內部的次類成員。有些測試屬性有下位類型,且這些下位類型之間也處於上下位關系,因此需要設計不同的框架來逐一進行篩選。從宏觀上來說,這類組合框架都是測試某一個上位屬性,只不過為了篩選其不同次類的下位屬性而進行了組合,可簡化為:

如邵敬敏等(2001)在測試動態名詞的次類時,依次運用了「一+動量詞+名詞」、「名詞+方位詞(之前/之後)」和「N正在進行中」三個句法框架,分別篩選了其中的「動量動態名詞」、「時間動態名詞」和「進行動態名詞」。這三類名詞都是「動態名詞」的下位類別,同時它們之間也分別是上下位關系,即時間動態名詞是動量動態名詞的一部分,進行動態名詞是時間動態名詞的一部分。

1.2.1.3 多項測試

前兩種測試可以說是單項的,即只針對某一個屬性進行測試,形式上是一對一或多對一,但多項測試則是指一對多的,即一個框架有可能被用來測試不止一種屬性,可簡化為:

典型的如運用進入從句的能力來測試句法結構的性質:石毓智(2000:183)根據能否進入從句(定語從句)的能力測試句法結構的標記性,而袁毓林(1998:106-107)則運用從句來測試最小的論元結構(原子句)。

1.2.2 邏輯類型

根據測試框架與測試屬性之間的邏輯關聯,可分為邏輯標記型和邏輯索引型。

1.2.2.1 邏輯標記型

該類型是指測試框架是測試屬性的標記,兩者之間的邏輯關系得到了較為充分的論證,呈現一一對應的邏輯關系。

如用「了/著」等來測試對象的「完成/進行」體范疇;用「不/沒」來測試「連續」和「離散」這對語義范疇(徐通鏘1997:447-452;石毓智1999:31-36)。

「了/著」的時體屬性在學界已經得到較為充分的論證②,即分別是「完成/進行」體范疇的標記,因此能通過它們的測試,自然就具有了相應的時體屬性。「不/沒」作為「連續」和「離散」范疇的語義標記,徐通鏘和石毓智等都有較為充分的論證,因此,「不/沒」與「連續/離散」屬性之間也是一一對應的邏輯關聯。

標記型測試框架並不是很多,這是因為該類測試框架往往是語言中某些語法、語義范疇的形式標記,如「了/著」等是漢語體范疇的形式標記,「不/沒」是「離散/連續」范疇的形式標記,但像這類論證較為充分的標記在漢語研究中並不多見,還有哪些類似的形式標記則有待研究者的進一步挖掘和論證。

1.2.2.2 邏輯索引型

該類測試框架可以視為測試屬性邏輯推導的一個線索,但不一定是唯一的線索,兩者之間的關系不是固定的。

如上文所舉王燦龍(2008)通過「看來」來測試「S(有生)非VP不可」是否為「言者視角」,作者對「言者視角」的定性是「表示說話人的主觀推斷」,而「看來」正蘊含了主觀推斷的意思,因此能加「看來」的句子也就具有了「言者視角」。

但我們知道,蘊含主觀推斷的詞語不只「看來」一例,還有「我認為/我覺得」等形式,但作者在這里只選了這一例,其他蘊含主觀判斷的詞語並未充分論證。

又如張伯江(2002)用狀語「沖著我」測試施事行為的方向性(那狗直沖著我咬過來)。這里選用「沖著我」作為測試施事行為的方向性,從詞語本身的語義來看,「沖著我」確實具有方向性特徵,但從另一個角度來說,具有方向性特徵的詞或短語除了「沖著我」,還有諸如「向著我/對著我」等形式。

從這兩個例子我們可以看出,邏輯索引型的測試框架往往並不具有唯一性,或者說並不是唯一能夠邏輯推導出測試屬性的,還有其他隱含的框架成分。

邏輯標記型和索引型框架的共性是都基於測試框架本身蘊含所要測試的屬性,區別在於蘊含的程度上有所不同,即標記型要強於索引型。

1.2.3 小結

當然,測試框架還可以從其他角度進一步劃分,如從測試框架的語言形式來說,有的是虛詞性的,如「了/著」或者「{最/很/比較/稍}+________」類;有的是實詞性的,如「一陣陣、豐富、稀少」等;有的是句法成分或結構形式,如包孕測試(即讓待測試的句子作賓語)或定語從句等。因此,本文對測試框架的分類並不求面面俱到,而是列舉其中的典型類型進行分析。

二測試框架的本質及其效度

2.1 測試框架的本質

作者之所以設計一定的測試框架進行測試,其背後的理據在於:測試框架本身能夠邏輯地推導出相應的屬性,兩者具有邏輯蘊含關聯,即測試框架是屬性的充要條件。

具體來說,在運用框架測試時,測試框架與測試屬性之間的邏輯蘊含關聯主要有兩種形式,一種是「相容」關聯,即測試框架本身的分布語義與測試屬性的語義是相容的。如馬慶株(1988/2004)用

來測試動詞的「自主」與「非自主」。作者認為鑒定自主動詞的框架提供了含自主義的動詞出現的典型環境,這個框架的意義是「表示請求、勸告或命令別人執行說話人的某種意圖,或者表示說話人的計劃、打算」,而「自主」的屬性為「動作發出者主觀決定、自由支配的行為」。可以看出,這一框架的語義與「自主」屬性的語義是相容的。

另一種是「對立」關聯,即測試屬性與框架之間的語義是對立的,這種測試可以通過否定框架義來反證測試屬性。如金立鑫(2003)運用疑問測試法來測試「起始」體的「S了」(句尾「了」)的時體屬性,在檢驗句子是否具有「現在起始」的時體特徵時,使用了「還+疑問語氣」的測試框架。例如:

(1)A:他還是醫生嗎? B:他不是醫生了。

運用這一框架是基於「現在起始」體的基本意義和「保持原有狀態」(「還」的框架義)相對立。通過否定「還」的框架義,從而肯定了句尾「了」的「現在起始體」屬性。

當然,這兩種邏輯關聯形式本質都是一樣的,都是基於測試框架蘊含相應的測試屬性。

2.2 測試效度的確定與舉例

效度(validity)是教育測量學中的概念,指一項測試測量到了想要測量的東西的程度(關丹丹等2010),反映的是測量的准確性和有效性。語言研究中,用測試框架測試對象屬性這一過程也可以看成是一種測量,因而也存在測試效度問題,即運用測試框架對測試對象定性的有效性,效度越高,測試框架對對象定性的有效性就越強。

效度高低的確定主要基於框架對測試對象的測試是否「對內具有普遍性,對外具有排他性」,即所有通過Z的X是否都具有Y。

高效度的測試應該是能通過框架測試的對象都具有所要測試的屬性,即對內具有普遍性。而低效度的測試則會出現有些通過框架測試的對象不具有所要測試的屬性,即對外不具有排他性。

理想的測試應該是具有較高效度的,但在實際研究中有的框架在測試過程中效度並不高,因而影響了結論的可信度。我們先來看看研究中的實例:

針對這一測試框架,邢福義(2006)指出,這一框架與雙賓句沒有必然聯系,對於認定雙賓句這一框架不足為據。因為它不僅容納了「吃了他三個蘋果」這類句式,還容納了復指結構如「他一共接待了學生三千多人/那一帶一共聚集了胡宗南十萬軍隊」這樣的結構。

在此基礎上,邢先生提出了「歸總性數量框架」:「總共/一共……多少……」(如「一共吃了他三個蘋果」)和「只/就……多少……」(如「只吃了他一個蘋果」),即與這一框架語義關聯最密切的應該是「歸總性」這一語義屬性。

施春宏(2004)則認為,如果籠統地把能否進入從句作為測試句式標記的框架,就會把「把」字句、「被」字句等都納入進來。同時,根據能否進入從句這一單一測試框架嚴格區分漢語元標記結構和有標記結構有很大困難。他認為可以通過組合標准、使用頻率、分布等標記理論的參數來確定句式的標記度,即與句式標記度語義相關度更大的是標記本身的一些參數。

石定栩(2009)對用「什麼」和「怎樣」來測試謂詞性賓語的屬性表示懷疑,認為「什麼」和「怎樣」的對立與詞類地位無關,而是同提問對象的句法地位相關,能夠用「怎樣」提問的謂賓實際上是賓語小句的謂語,本身不具有賓語的地位,而真正的謂詞性賓語只能用「什麼」提問。

上面幾個研究實例的測試效度並不理想,主要表現為有的通過測試框架測試的對象具有其他屬性,即「通過Z的X具有『-Y』」。如通過數量框架「總共/一共……多少……」測試的對象包含了非雙賓句的復指結構,通過從句測試的對象包含了有標記句式「把」字句等。這就引起我們的思考,是什麼因素影響了框架測試的效度?如何才能提高測試效度?

2.3 測試效度的影響因素與測試效度的提高

測試效度的高低表面上反映的是測試框架本身設計的合理性程度,但實質上反映了整個測試中相關因素的相互影響。從前面的分析可知,測試過程涉及測試屬性、測試框架和測試對象這三個因素。

第一,測試屬性內涵的明確性。這是提高測試效度的前提。對於設計測試框架來說,如果測試屬性本身的內涵比較模糊,就會影響其外延,那麼在測試時就可能因為測試對象處在外延的邊緣,從而影響測試框架的設計和測試效度。

如對「吃了他三個蘋果」這一句式的測試,由於這一測試對象本身不在典型的「給予」類雙賓句式范圍內,學界對「非給予」類句法格式是否是雙賓句的認定具有不確定性,因此在設計框架時,並不一定能夠有效地測試這種邊緣性或者並未給予對象清晰的定性,自然影響了測試的效度。

第二,「測試框架」論證的合理性。實際上這和第一個因素是一個問題的兩面,因為對於測試框架來說,弄清「測試屬性」的實質就是尋找與其具有邏輯蘊含關聯的形式標記,即測試框架。但在有些研究中,所設計的測試框架雖然有可能與測試屬性之間具有某種關聯,但兩者往往並不具有邏輯蘊含關系,究其原因,就是這些框架和測試屬性之間的關聯並未經過較充分和合理的論證。

金立鑫(2007:386)提到了語言描寫中的「框架」法,指出:「研究者可以根據不同的研究目的來設計不同的測試框架。這也可以看作是一種實驗性的操作。當然,前提是這些被研究者設定的測試框架具有充分的合理性,其本身要經過合理的論證。」

上面討論框架類型時曾提到邏輯標記型框架,這些框架是經過較為充分論證的,但在實際研究中,這些框架是比較少的,很多框架是臨時和特設的,即沒有得到充分的論證。而沒經過充分論證的測試框架,在測試時出現的結果就是其與測試屬性之間沒有必然關聯。

如石定栩(2009)所言:「朱德熙(1982)用『什麼』和『怎麼樣』的對立來區分謂詞性賓語,是基於疑問代詞在語義上和句法上的對立,不過,疑問代詞與提問對象之間的關系非常復雜,並非『什麼』與『怎麼樣』之間的對立所能准確描述。」也就是說,測試框架「什麼/怎麼樣」本身與哪些屬性之間存在著邏輯上的推導關系,需要更加充分的研究和論證,只有在此前提下,才能提高測試的效度。

第三,「測試對象」的合法性。具體而言就是要確定測試對象是否為一個合格的形式。因為測試效度不高有時不一定是測試框架設計的問題,而有可能是測試對象本身並不是一個合格的形式。

比如對句式標記度的測試,石毓智(2000:187)在論證「把」字句為有標記結構時,舉例為「換衣服的時間太長了」不能說成「把衣服換的時間太長了」,即說明「把」字句不能進入定語從句,從而證明其為有標記句式。但施春宏(2004)認為這個例子中的「把衣服換的時間」本身就不是合格句子,如果換成合格的句子,同樣可以進入從句,如可以說「你把衣服換下來的時間太長了」。因此,在用框架進行測試時如果沒有考慮測試對象的合法性這一因素,顯然會影響測試的效度。

這三個因素是影響測試效度較為顯著的幾個方面,我們的分析主要是基於測試效度不高的幾個實例來探討。在實際研究中可能還有其他因素會影響測試的效度,這需要對更多框架測試進行研究才能了解得更全面。

基於現有的研究,從理論上來說,要提高測試的效度並設計較為理想的測試框架,需重點考慮上述幾點因素,簡言之:

第一,在設計測試框架時,首先要弄清測試屬性本身的內涵,即測試屬性是否得到了較充分的研究和認定,其外延是否清晰。

第二,在測試屬性研究較充分的前提下,尋找與之具有邏輯蘊含關聯的形式標記,即測試框架,在這一過程中,測試屬性與框架的關聯須經過充分而合理的論證。

第三,在設計測試框架時,可根據測試屬性的特點設計相應類的測試框架。比較各類測試框架的效度,從形式類型上看,組合測試的效度在一定程度上強於單項或多項測試,因為組合測試實質上是一種篩選機制,可以較為精準地鎖定所要測試的屬性。

從邏輯類型上看,邏輯標記型要強於索引型,因為標記型的測試框架本身經過了較為充分的論證,而索引型的測試框架臨時性比較強,測試效度有待充分論證。

之所以從理論上來提出這三點,是因為很多測試框架是特設的,所要測試的屬性和測試對象處在語言的不同層面,類型不一、目的不同,因而很難用一個較為普遍的規則進行正向約束,只能從低效度的測試來推導影響測試效度的因素,從而逆向說明如何提高框架測試的效度。

三方法論啟示

語言研究中的測試從廣義上還包括各種類型的變換、刪除、添加等實驗性操作,我們這里只討論具有顯性框架形式的測試,或者說是一種狹義上的測試。

框架測試本身是一種方法,因此對這一問題的研究具有重要的方法論意義。陳保亞(1999:40-41)在對「鑒定字」的分析中指出:「鑒定字在根本上說是在語義分布上確定詞類,因為用『很』鑒定形容詞而不用『不』,根據的是意義標准,用『很』鑒定的詞有程度區別。從另一個角度也可以看出鑒定字涉及到意義。我們最初一步是用『不』區分出兩類詞,為什麼不用『二』來區分?實際上可以和『二』結合的是一類詞,不可以和『二』結合的是一類詞。顯然我們心目中大體已經有了體詞和謂詞的對立,而用『不』又恰好可以把體詞和謂詞分開。那麼心目中的體詞和謂詞的對立的根據是什麼?這種機制是非常復雜的,是在長期運用母語的過程中獲得的,有形式的因素,也不排除意義的可能。……」

這一觀點與我們對測試框架研究的目的不謀而合,即試圖探索人們運用測試框架背後的機制,挖掘測試框架和測試屬性之間具有的語義和心理理據,從而提高測試的效度。當然,這一方面有待於漢語本體研究的深化,從而更深入地了解語言中相關句法語義的內涵及其形式標記,另一方面也需要對更多測試框架進行深入系統的梳理和分析。

注釋:

①{祈使}表示「祈使語氣」,這一框架為馬慶株(1988/2004)所設計的測試自主動詞的框架,原文的測試框架有兩大類,本文在這里進行了合並。

②「了/著」作為「完成/進行」體范疇的標記在學界還有一定的爭論,主要原因是對漢語中有沒有體范疇有不同意見,或者在表達相應范疇意義時,有隱現情況或交替形式。吳福祥(2005)認為「完成/進行」體不是漢語中的強制性語法范疇,但我們認為「了/著」作為這兩種范疇的標記是無異議的。在這一基礎上,「了/著」作為測試「完成/進行」體的框架(鑒定詞)研究應該是相當充分的。

參考文獻:

[1]陳保亞 1999 《20世紀中國語言學方法論》,山東教育出版社。

[2]關丹丹、車宏生 2010 現代效度理論與效驗方法述評,《心理科學》第3期。

[3]金立鑫 2003 「S了」的時體意義及其句法條件,《語言教學與研究》第2期。

[4]金立鑫 2007 《語言研究方法導論》,上海外語教育出版社。

[5]劉丹青 2002 漢語類指成分的語義屬性和句法屬性,《中國語文》第5期。

[6]陸儉明 2002 再談「吃了他三個蘋果」一類結構的性質,《中國語文》第4期。

[7]馬慶株 1988 自主動詞和非自主動詞,載《漢語動詞和動詞性結構·一編》,北京大學出版社,2004年。

[8]邵敬敏、劉焱 2001 論名詞的動態性及其鑒測方法,《漢語學習》第6期。

[9]施春宏 2004 漢語句式的標記度及基本語序問題,《漢語學習》第2期。

[10]石定栩 2009 謂詞性賓語的句法地位,《語言科學》第5期。

[11]石毓智 1999 《肯定和否定的對稱與不對稱》,北京語言文化大學出版社。

[12]石毓智 2000 《語法的認知語義基礎》,江西教育出版社。

[13]王燦龍 2008 「非VP不可」句式中「不可」的隱現,《中國語文》第2期。

[14]吳福祥 2005 漢語體標記「了、著」為什麼不能強制性使用,《當代語言學》第3期。

[15]邢福義 2006 歸總性數量框架與雙賓語,《語言研究》第3期。

[16]徐通鏘 1997 《語言論——語義型語言的結構原理和研究方法》,東北師范大學出版社。

[17]袁毓林 1998 《漢語動詞配價研究》,江西教育出版社。

[18]張伯江 2002 施事角色的語用屬性,《中國語文》第6期。

[19]張國憲 2006 《現代漢語形容詞功能與認知研究》,商務印書館。

語言遲緩訓練100個項目
app測試八大測試流程
測試工作的七個步驟
語言研究的三大中心
符合性測試的意義
c語言測試框架用法

㈤ 編程計算1-1/3!+1/5!+....+(-1)^n-1/(2n-1)!,

#include<stdio.h>
#include<math.h>
int jc(int n)
{ int i,s=1;
for(i=2;i<=n;i++)
s*=i;
return s;
}
void main()
{
double s,t,n;
int x;
printf("please input n:");
scanf("%lf",&n);
x=1;
s=0;
do{

t=1.0/jc(x);

if((x-1)%4==0)
s+=t;
else
s-=t;
x=(x+2);

}
while (x<=(2*n-1));
printf("s=%lf\n",s);
}

階乘的函數需自己定義,還有就是你的程序最後一項是2n-1,不是n-1;總之你可能還是剛學c語言不久的吧。還有好多錯誤。剛入門還是有點難的,以後就好了的。

㈥ c語言程序設計教程(新手的)

最好的方法就是從書店賣一本C語言的入門教程。

****************************************************

《The C Programming Language》的最新版是第二版,但是包括此書作者及中文版譯者在內的許多人士都認為此書不是一本入門教材,不適合初學者閱讀(此書前言中有這一表述),建議選擇其它書籍, 如《C語言教程》

****************************************************

《C程序設計》(第三版)

http://www.wl.cn/1120321

㈦ c語言裡面.\115什麼意思

表示大寫字母M
c語言中「\」是轉意衣服,類似的還有換行「\n」等等。
單個的115表示整型數字115;"115"表示一個字元串,包含三個字元;而'\115'表示ASCLL碼為115的一個字元,該字元是M。

㈧ C語言題目,大一題目,有旋轉擺花之類的,大約十題,題目在word文檔里,解壓一下,不要用指針 ,題

作為大一大學生,作業要靠自己獨立完成。

根據一些同學的提問,我歸納了一下。新生入學報到時主要要准備如下東西、要注意如下事項:
1.相關證件。包括:身份證、錄取通知書(入學通知書)、戶口遷移證、黨團組織關系證明(介紹信)、一寸登記照若干張(可以多帶幾張,以備它用),等等。這些很重要,一定不要忘記。另外,把父母、爺爺奶奶即各個近親的姓名、出生年月、工作單位、職業和職務搞清楚,填下來,到學校要填各種表格,有的表格需要這些信息。
2.錢和卡。上學要交學費和住宿費(分別為每年4500-500元與1000元左右),合計要6000左右(個別專業可能要高些,如藝術類專業)。因為新生出門較少,沒有什麼旅途安全經驗,建議少帶現金(但千把塊錢還是要帶的,以備一些不時之需)。可以在家中先辦一張信用卡或儲值卡用於交學雜費等。有的學校會給你寄一張卡,讓學生把錢存在其中,你可以用這張卡,也可以不用。如果家庭條件還可以,辦一張信用卡,把它關聯到父母親的儲值卡(如工資卡),每月刷卡後直接從父母親的卡中扣款,這樣的好處是方便、安全。但如果你不想讓父母親知道你的消費情況,可以自己在老家辦一張儲值卡(讓父母親往裡沖錢),然後辦一張信用卡與之關聯。也可以到學校再辦儲值卡與信用卡,但這樣你父母親異地往你的儲值卡打錢時要付手續費。
3.一般情況下,各個學校都要配發一些學習和日常生活用品,這些東西不是無償給你的,都要你花錢購買。學校發的物品質量都很次而且貴,建議學校發的東西如果可以不要就盡量不要,能自己買的就別買學校發的,有些生活必需品則可以在離開家時先配好,免得到學校後由於人生地不熟不好買。
4.衣服被褥。你平常穿的衣服,春夏秋冬各季的,都要帶,除非學校距你家鄉很近或者父母親有機會出差來學校給你帶東西。內衣和襪子至少要兩三套,各季的外衣至少也要兩套。如果你現在生活的地方和要去上學的城市的地理氣象與生活環境是否相似,那麼准備的東西和在老家差不多;如果相差太大,就要帶些那個城市需要的衣服(例如,如果你生活在北方,但上學的城市在南方,那麼太厚的保暖內衣褲就可以不帶了)。被褥也是這樣,夏天去學校,可以帶一床薄被(如毛巾被),厚被子可以自己帶,也可以到學校後再買。席子可以到學校根據床寬購買合適的,床單和枕頭(枕套)可以自己帶也可以到學校再買。
5.洗漱生活用品。要帶牙膏牙刷、毛巾、漱口杯、香皂肥皂、洗發水、梳子、手機(看家庭條件)等,以便在途中和到校後就能使用。男生要帶剃須刀、女生要帶各種女性用品和洗面奶等。至於洗臉盆、曬衣架、拖鞋、雨傘、水瓶、指甲剪、剪刀、小刀、台燈之類的東西就不一定要帶了,有的學校會發,就算不發自己買也不貴(這些生活用品到了學校買也很方便,而且到時候和舍友一起去買還能快速縮短距離)。條件可以時,可以帶個照相機,為自己和同學照照相,也是人際交流的一種很好方式。
6.學慣用品。可以帶幾支水筆、本子、字典、詞典(英漢漢英詞典等,包括功能強大的電子詞典)、書包(背包)。如果學校沒有不允許,你家庭條件許可的話,可以帶筆記本。但最好不要帶,尤其是當你迷戀上網或者玩游戲的時候,帶筆記本會影響你的學習和生活以及和同學的正常交往。另外,還可以預備一些生活中用到的葯或創可貼之類,雖然不一定會用到它們,不過等需要的時候隨手可以找到也很方便。
7.旅行箱。如果家庭條件不是特別好得錢花不了,不需要買太貴的,畢業後可以買更好的。箱子可以大一些,能裝下自己的衣服及平常不是常用的生活用品和學慣用品即可。但不要過分大,免得不好攜帶,到學校在宿舍也不好放。一般以80公分左右長、50-60公分寬為佳。
8. 如果可以的話,帶點家鄉的特產,不是一定要去給老師,而是給舍友或班上同學吃,畢竟你有四年的時間和他們在一起,越早熟悉越好。
10.如果坐火車的話,可以憑錄取通知書(入學通知書)享受學生票優惠。
11.一點小建議:大學學習勇攀高峰,加入社團量力而行,大學社會實踐多多益善,尊敬老師有難必問,同學相處寬容大度,大學戀愛不鼓勵也不反對。
12.入學測試和體檢。有的大學在新生報到後一段時間內,要組織幾門文化課的新生入學測試,對考試成績和高考成績有較大出入者要進行重點核查。如果你考試沒有作弊,不要有任何擔心。考試范圍和難度不會超過高考,考得好壞無所謂。體檢也很容易過,除非你有不符合入學要求的重大疾病而且在高考體檢時又使了花招,一般是不要緊的。只要你高考時正常體檢、正常考試,這兩項都沒有問題,現在可以放心玩!
當然還有另一種入學考試,那是為各種分班做做准備的,比如英語成績好的學生分到英語快班。
13.新生軍訓。大學新生要進行軍訓,軍訓一般只有兩個星期。按照《國防教育法》的規定,組織學生進行軍訓,這是貫徹國防教育法的具體行動,是推進素質教育、為國家和軍隊培養造就高素質國防後備力量的重大舉措。參加軍訓可以增進同學友情,應該積極參加。如果身體條件不許可,應該盡早跟輔導員或班主任講清楚,以免發生意外。
14.宿舍是在你去之前就安排好的,這個不用擔心。住宿條件有好有壞,不要太拘泥於這個,主要是要和同舍同學友好相處。不要以為住宿條件差就不能適應,人的適應性是非常強的,而且不太好的生活條件對你以後的成長和工作、生活很有好處,不管你的家庭是多麼富有!
15.專業不理想,調換專業。一般學校進校一年後都可以調換專業。調換專業有兩種情況,一種是因為在原專業很難學下去,學校會幫助你換一個好學一點的專業(但一般不是很好的專業,也不是熱門專業);另一種是你想換一個你心儀的其它專業,這種時候一般都要由你要轉入的專業所在院系進行資格考試,考試合格才能轉入,有的學校還要交一筆費用。

㈨ 誰能指導下我

如何學習 C++
如何學習一門較復雜的編程語言
前言

呵呵,大家好,我又來了,其實我天天在,大多數時候總是回答一些套話,比如"同意上傳。文件名:......文件夾:......",或者"確認完畢,加1分,謝謝支持"之類,大概傳過書的朋友都見過吧。

前幾天,心血來潮,寫了一篇如何選書的帖子,寫完以後,手癢難忍,不知哪條蟲又醒了過來,趁熱再來一篇,談談如何學習 C++,總題為"斑竹觀點",不知道以後還會寫什麼,也許就這兩篇打住,也許會洋洋灑灑寫成系列(吹牛不上稅吧?稅務局別來找我呀),那就要看我有沒有心情和那麼多閑工夫了,至於別人想不想看,愛不愛看,我可管不了,自己痛快就行啦。你自己願意惡心自己,就往下看,哈哈......

閑話少敘,書歸正傳。話說在很久很久以前,C++ 紅紅火火,風頭正勁,天下多少英雄豪傑為其馬首是瞻......

(呸,廢話連篇,看西紅柿......)哇,不好,我躲,我躲,我躲躲躲......

慘,掌聲沒有,爛西紅柿來了一筐,等我去換身衣服先......

......西服換成馬褂,咱接著來。睡覺的醒一醒啦,快看呀,窗戶外面下刀子了!

自從 Java 問世以來,C++ 陣營人氣日下,唉,人的本性就是喜新厭舊,最近又新出一小妞,叫什麼 C# 的,攪得人心惶惶,明明是 Java 的克隆加變異,她干媽(那個叫什麼 M$ 的)非要和人家 C++ 攀親戚,說是 C++ 親生,和 Java 對著干。唉,這世道,亂套了,不知道這人心都是怎麼長的。

我不怕你們的西紅柿了,我准備了紙糊盾牌,嘿嘿,除非本·拉登親自出馬......

但是,C++ 周圍總還是有一群誓死效忠的追隨者長伴左右,任你風吹雨打,我自巋然不動。C++ 把純粹與高效,精美與詭異完美地,近乎奇跡般地集於一身,吸引著那些喜歡尋幽攬勝的探險家們。當然 C++ 並非不實用,但我今天不想談 C++ 的工業應用(那是我的工作,俗),超脫起來,來看看純粹的 C++。如果你想為了找工作而學習 C++,我勸你就此打住,別往下看了,我幫不了你,瞎耽誤工夫,我也勸你別學 C++,改行 Java 吧,或者 VB 也成。如果你是一個專職程序員,下一個項目是關於 C++ 的,而你還不會,想臨時抱抱佛腳,你也別看了,我想你的公司會組織你們集體去抱的,你們可以針對你們的項目學習一個夠用的子集大概就可以了。我這篇帖子不是佛腳,不講如何速成,我只是想針對現在眾多想學習 C++ 卻又無從下手的學生提出我自己的建議。你可以不同意我的觀點,那麼請准備好西紅柿,等我講完了,我給你們時間扔(事先聲明,我要好的,爛的不要啊)。

好了,如果你的耐心已經讓你忍耐至此,而且還想忍耐下去的話,我希望你能忍到最後,再也沒一句廢話了,你沒有理由看完上面的廢話不往下看。

一、什麼是 C++?

一看我的標題,大概又有人舉西紅柿了,您慢著點兒,別閃了腰或岔了氣!很多人不知道這個問題的正確答案。如果你還認為"C++ 是 C 的超集",那你可是大大落伍了,這是二十年前的答案了。如果你說"C++ 是一種面向對象的程序設計語言",哈哈,沾邊,但也不對,在98年 C++ 國際標准公布以後尤其不對!

C++ 之父 Bjarne Stroustrup 曾有一篇論文 Learning Standard C++ as a New Language,《程序員》雜志2001年4月號有陳崴的譯文《將標准 C++ 視為一個新語言》,把 C++ 和它那個好像還不是右派的爹徹底劃清了界限。文章對 C 和 C++ 在 Complexity(復雜度)和 Efficiency(效率)兩方面做了比較,指出 C++ 已經完全不同於 C 的觀念,並對如何學習標准 C++ 提出建議。有興趣的朋友可以看看,很有啟發性。

C++ 發展至今,其歷史已足夠寫一本書了,Bjarne 的經典名著 The Design and Evolution of C++,詳細記述了 C++ 設計和發展過程中(1979-1994)的種種考慮與妥協,它不講 C++ 是什麼樣的,它只講 C++ 為什麼會成為這樣。不建議初學者去看這本書,實在是咬不動,我當初已經看得頭破血流了,而且這本書只講到1994年為止,多少有些過時了,如果你已比較好地掌握 C++,並想了解其歷史,看看倒是有些參考價值。

C++ 雖然起源於 C,語法也比較相似,其迅速成功並成為主流很大程度上也歸功於 C 的成功。但經過多年的發展,其最精妙,最有吸引力的部分正是不同於 C 的那一部分。Koenig & Moo 夫婦在為想成為更好的 C++ 程序員的人提出的3條建議中第1條就是"避免使用指針",你相信嗎?指針正是 C 的核心呀。C 的宏、位運算、結構、聯合、數組、強制類型轉換、指針,在 C++ 程序中都應該盡量避免(在少量涉及底層的程序設計中例外),C++ 語法上強調的是類、對象、模板、標准庫、引用、異常和 const 關鍵字,思想上強調的是面向對象和泛型。

在 Proceral Programming, Object-Based Programming, Object-Oriented Programming, Generic Programming 中,C 僅僅支持第一種,而就是在 Proceral Programming 的程序中,如果使用了標准庫,一個 C++ 程序也可以和實現同樣功能的 C 程序完全不同。

Bjarne 曾不止一次強調 C++ 不僅僅是一種 Object-Oriented Programming Language,那是 Java,C++ 是一種集各種編程風格於一身的程序設計語言,Object-Oriented Programming 只是其中一種,並不比其它幾種風格重要。我目前很懷疑 C++ 對面向對象的支持程度,雖然它一度在這方面風光無限,但多年發展,它並沒有形成一個類似於 Java 或 Python 或其它語言那樣的類庫,也很少取得成功的像樣的類庫(不能說一個沒有,但畢竟很少),反而,在難產到1998年的 C++ 的第一個標准化文本中的庫卻是基於 Template 和 Generic 的。哈,這多少有些諷刺意味,在別的語言還唧唧喳喳討好面向對象的時候,C++ 拋下一個媚眼,卻轉身投入泛型的懷抱。見風使舵的 Java 和 C# 好像上錯了賊船,又都趕著往自己身上貼泛型的金,弄得人不人鬼不鬼,當初,Java 可是批判 C++ 過於復雜最起勁的一個,在可以預見的將來,它的復雜程度將不低於 C++。拜託,有點創意好不好,別總讓人神經衰弱了!

Java fans 們不要扁我,下次我寫"如何學習 Java"時,咱哥們友情後補。

廢話太多,第一個問題就此打住。

二、選用什麼樣的編譯器?

這個問題也是初學者經常問的問題,其實一句話,對於初學者來說,現有的較新的編譯器,除了易用性外,沒有任何區別。

有人總是在用 VC 還是 BCB 還是 GCC 上爭論不休,我想如果你能把這三種編譯器的區別用出來,你現在就不會看我這篇破玩意兒了。但有人現在還在用 Turbo C++ 3.0/3.1,如果你真想學好 C++,我勸你還是換換的好,那東東確實是個好東東,但已經被 Borland fans 們當作古董收藏起來了(我也留著一套呢,還有 TC 2.0),你也收起來吧,沒准什麼時候能賣個好價錢。

我要講的一個重要問題是不要把 VC 與 C++ 混為一談,也不要把 VC 當作另一種語言。首先,VC 的全稱是 Microsoft Visual C++,注意,前面帶有公司的名字,即使是 Java,也沒有叫過 Sun Java,這就意味著 VC 是一個產品,它是 C++ 眾多編譯環境中的一種,它不僅僅帶有一個 C++ 語言的編譯器,它還帶有一個用於開發 Windows 應用程序的 Application Framework - Microsoft Foundation Classes Library (MFC),又一個帶公司名的傢伙,它只是用 C++ 語言在 Windows API 外面加了一層包裝而已,省得赤裸裸的,讓程序員們在工作的時候總走神去看那些不該看的地方, 這個東西多少讓開發 Windows 程序變得更容易一些。呵呵,不要再把 VC 當作語言了。

在易用性層面上,我還是推薦初學者使用 VC,用這個東東的比較多,遇到問題也好找人問。至於版本,6.0 應該夠用,但這個版本已經是5年前的東東了,畢竟早了些,與標準的兼容性也多有詬病,如果有條件的話,可以用 VC .NET,這個東東的最新版本是剛剛發布的2003版,我還沒見過,我只用過它的上一個版本。經過 C++ 大腕 Lippman 親手調教過的2003版,據說對標準的兼容性已經有了根本性的轉變,管他呢,又是一個宣傳用語,只要你不是特意去實驗標准中的那些犄角旮旯,現在流行的編譯器都已經絕對夠用了。

三、選書很重要

這是一個最讓人撓頭的問題,選什麼書總是見仁見智,什麼書最好是一個永遠找不到標准答案的難題,來我們這個論壇的朋友多半是沖著書來的。我不想評論哪本書好哪本不好,我只是大致列一個書單,簡單講兩句。

我的書單並不定位於一個沒有任何語言編程基礎的初學者,我覺得這樣的初學者不適合直接學習 C++ 語言。我的書單定位於那些有其它語言的一定的編程基礎的 C++ 初學者,他至少應該知道什麼是變數,什麼是運算符,什麼是表達式,關鍵字,語句,程序,至少應該知道賦值語句是干什麼的,分支判斷語句干什麼,循環語句干什麼,當然他不必知道 C/C++ 的詞法和語法,也就是說他有以上的概念,但不知道這些東西在 C/C++ 中是如何實現的。在這個基礎上,我把書單分為入門類、進階類、應用技巧類。

入門類:

C++ Primer, 3rd Edition

Thinking in C++, 2nd Edition

C++ 大學教程(這本書我沒看過,但不少初學者說不錯,留此存目)

The C++ Standard Library: A Tutorial and Reference

進階類:

The C++ Programming Language, Special Edition

The Design and Evolution of C++

Inside C++ Object Model

C++ Templates: The Complete Guide

STL 源碼剖析

Generic Programming and the STL

Modern C++ Design: Generic Programming and Design Patterns Applied

應用技巧類:

Effective C++, 2nd Editon

More Effective C++

Exceptional C++

More Exceptional C++

Effective STL

Ruminations on C++

對這個書單我有幾點說明:

1、除我註明的那本以外,其它書我基本看過,或瀏覽過,了解其大致內容。也因此這些書就局限在我的眼光之內,既然不願給大家推薦我沒看過的書,也就難免有遺珠之憾。

2、很多人認為 The C++ Programming Language 是入門書,我認為不妥,這本書號稱"專家自學指南",並非浪得虛名,讀者水平越高越能從這本書里學到更多的東西。如果身邊沒有一個很好的老師隨時指導的話,我不建議初學者選用這本書,一上來就看這本書容易產生挫折感,影響學習的信心。這本書也可以作為語言參考手冊常備身邊,隨用隨查。

3、入門類前三本選一本即可,第一本我詳細讀過,第二本我大致瀏覽過,第三本沒看過。第四本我極力推薦,每個初學者都應該好好看看,很多人認為應該歸入進階類,我放在入門類自有我的道理。有網友反應 Thinking in C++ 對於初學者太難,我感覺如果符合了我上面對初學者的初步要求的話,讀這本書應該沒什麼問題。

4、我不建議用國內的書入門,我見過大部分國內書的內容只是講了一個更好的 C,不是 C++。我認為初學者應選擇一本對語言介紹比較全面、詳細的書,以便對 C++ 有一個全面而系統的認識,一知半解是學習的大忌。如果一本自稱全面的 C++ 書中缺少 String, Containers, Generic Algorithms, Namespaces, Templates, Exception Handling, RTTI 中的一個,你有理由不看它,如果一本自稱全面的 C++ 書沒有講到標准庫或 STL,你有理由不看它,如果一本自稱全面的 C++ 書中的頭文件還帶有 ".h" 後綴,你有理由不看它。

5、應用技巧類並非最後再看,我單獨把這些書列出,是因為這些書要和前兩類書一起看,沒有先後順序。

6、選書的原則以及與每一階段學習的關系,到下一部分我還要繼續展開。

7、上述大部分書都有中文版,翻譯質量大部分還不錯,建議英文較好的最好直接讀英文版,英文不好的也可看中文版。

下面我談談對紙版書和電子版書的看法。初學時最好去買一本紙版書,這樣無論你躺著,坐著還是站著,也無論你身在何處——教室、圖書館、實驗室、湖邊長廊,你都可以很方便地拿出來看。很多同學的實驗室和寢室中都配有電腦,似乎看電子版很方便,但是當寢室中老大在大呼小叫地打 CS,老二抱著電話和准老婆談情說愛,老三抱著枕頭說著夢話,老四抱著吉他唱著調跑到北冰洋去的自創情歌時,無論你是老幾,我不相信你能對著電腦屏幕,心平氣和地看著 C++ Primer 電子版,寢室根本不是學習的地方,最好還是拿上一本紙版書,到自習室、圖書館去吧。

課間短劇

講到此處,digerati 同學舉手發言:"老師,我有筆記本電腦啦,我可以帶到自習室去,還是看電子版。"

涅盤老師當場被噎出四個跟頭,暈了過去。五分鍾後悠悠醒轉,感覺口乾舌燥。"水......水......"

涅盤老師喝了兩口水,清清嗓子,繼續講課:

剛才,digerati 同學說得......說得......很好......是吧......哈哈......這個......那個......是呀......啊......

你可以把筆記本電腦帶到自習室去,但你在馬路邊等 MM 或者 GG 的時候,或者坐公共汽車的時候,筆記本電腦總是不如紙書方便嘛?是吧?

zhazha 同學舉手發言:"老師,我有掌上電腦啦,比你那本兩塊磚頭重的書方便多了,我可以在等 MM 的時候看電子版。"

涅盤老師當場被噎了八個跟頭,一天都沒有醒。

轉天,涅盤老師才醒過來,有氣無力地抬起胳膊,伸出手:"眼鏡......給我眼鏡......"

zhazha:"老師,您戴著呢。"

涅盤老師:"那我怎麼什麼都看不見啊?"

zhazha:"您還沒睜眼呢!"

涅盤老師艱難地睜開眼睛:"怎麼還看不見呢?"

zhazha:"老師,您睡了一整天了,揉揉眼睛。"

涅盤老師用力揉揉眼:"還是不清楚。"

zhazha:"您再揉揉......"

涅盤老師:"還是不行......"

zhazha:"您再揉揉......"

涅盤老師:"還是不行......"

如此反復50次。

涅盤老師雙眼紅腫,極為憤怒,不耐煩地嚷著:"不能再揉了!!!我為什麼還是看不清???"

digerati:"老師,很抱歉,我們忘了告訴您,昨天您眼鏡的兩個鏡片都摔碎了,現在您只戴著眼鏡框......"

涅盤老師:"@#&*@$%$#&"又暈了過去......

......

幾天以後,繼續上課,涅盤老師原來只有兩名同學,現在他面對空空的教室......

同學們,啊......上次課,啊......digerati 同學 和 zhazha 同學,啊......上課搗亂,啊......被停課請家長,啊......家長至今未到,啊......他們現在還在辦公室罰站,啊......如果其他同學,啊......再上課搗亂,啊......就和他們一樣的下場,啊......

就在涅盤老師對著空教室慷慨激昂的時候,digerati 和 zhazha 正舒舒服服地坐在辦公室的沙發上,翹著二郎腿,喝著涅盤老師的龍井茶......哈哈!

四、學習過程很辛苦

不要問我學習 C++ 有什麼捷徑,因為我也不知道。

如果你的學校里開設 C++ 課程,那你很幸運,送你八個字:"課前預習,課後復習",按時完成作業之類是作為學生的基本要求,我就不在這里重復了。下面的內容是針對學校里不開設 C++ 課程的學習者的。

我不可能一步一步教你如何學習 C++,不同的人經歷不同,環境不同,學習能力不同,適用於一個人的方法不一定適用於另一個人,我只講幾條經驗,供大家參考:
1、不要死摳語法:初學者最容易犯的錯誤就是抱著一本大書死摳語法,結果語法倒是很熟,程序還是一行都不會寫,學習的積極性也受到很大打擊。學習編程,語法是最不重要的,最重要的是思路。語法可以從任何一本書上查出來,比如說,用到循環語句的時候,你忘了語法,你可以翻書去查,但如果該用循環的時候你不知道用循環,該賦值的時候不知道用賦值,語法再熟有什麼用呢?

2、建立面向對象的概念:在這一點上,我很欣賞 Thinking in C++,第一章是 Introction to Objects,第二章是 Making & Using Objects,先讓讀者建立起對象的概念。面向對象概念開始建立的時候確實比較難,但這一關早晚得過,不過這一關就永遠寫不出真正的 C++ 程序,因此從開始就要培養這一思維方式,不必一蹴而就,要慢慢來,一點一點把思想方法轉變過去。只要面向對象的概念建立起來,以後無論學習 Java 還是 C#,都不過是小菜一碟,新東西很少了。

3、盡早接觸標准庫:這也就是我把 The C++ Standard Library: A Tutorial and Reference 歸入入門類的出發點,標准庫的概念接觸越早越好,要把使用標准庫作為天經地義的事情,作為自己的編程習慣,能用的地方一定要用。幾乎所有的 C++ 大師都強調過這一點,The C++ Programming Language 第三章就是 A Tour of the Standart Library,已經提前得不能再提前了,可見其重視程度。而國內的 C++ 教材要麼不講,要麼簡簡單單一帶而過,暈!

4、認真分析例題:從別人的源代碼中學習是最簡單的學習方法。書上的例題大部分都是作者精心挑選的,最能體現某種語法特點或思想觀念的程序,認真體會這些例題,理解程序的邏輯和結構,多問自己幾個問題:作者為什麼要設計這個類?這個類有什麼作用?作者是如何設計這個類的?如何使用這個類的?這個類是否還可以用在別處?等等。把上述問題中的"類"換成"函數"、"模板"等同樣適用。遇到不好理解的例題我有一個笨辦法,就是把源程序輸入一遍,這個辦法確實很有效,看了半天也看不懂的程序,只要輸入一遍基本就能理解了,而且還加深了印象。不要不動腦子一個字母一個字母敲,敲完都不記得敲的什麼了,要看一行或一段再自己輸入。

5、培養良好的編程風格,積累編程技巧:只要你對 C++ 有了一個初步的概念,就可以開始看我在上一部分列出的應用技巧類書籍了。並不是每一個條款都那麼高難,你也不是一定要按順序讀,一邊學一邊就可以挑選自己能看懂的條款研究一番。當然初學者不可能理解很深,好在這些書也不是看一遍就夠的,有些條款隨著你學習的深入,反復閱讀會有更深的體會。如果一本全面的書是正餐的話,這些書就是佐餐的小菜,提供人體必須的維生素、礦物質和微量元素,全面吸收才能茁壯成長。

6、擅於利用身邊的工具與環境:大多數編程環境都提供豐富的工具供用戶使用,比如調試器等,參照用戶手冊,利用這些工具對自己寫的程序進行分析、監視和跟蹤,可以在很大程度上提搞學習和工作效率。互聯網更是一個豐富的資源,特別是 google 和 MSDN,利用這些可以解決你的大多數問題,即使沒有找到答案,還可以上論壇去問。我不提倡動不動一點小問題就到論壇上發一些諸如"救火""救命"之類的帖子,很無聊,這樣的帖子我基本不看,大多數人都不會看,在論壇上要有提問的技巧,將你的問題,你所使用的環境,問題出現的條件等描述清楚,包括你自己的思考,你自己的想法,雖然你的帖子是在提問,但如果寫得好還可以給別人一些啟發。

7、學無止境:C++ 語言還在不斷發展,C++ 語言的國際標准也正在修訂,早一天了解就能早一天受益。推開這扇門吧,有一片奇異的風景在等著你。