版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章C語(yǔ)言基礎(chǔ)知識(shí)一.全國(guó)計(jì)算機(jī)等級(jí)考試問(wèn)答(NationalComputerRankExamination)全國(guó)計(jì)算機(jī)等級(jí)考試(簡(jiǎn)稱NCRE)是由教育部考試中心舉辦,用于測(cè)試應(yīng)試人員計(jì)算機(jī)應(yīng)用知識(shí)與能力的等級(jí)水平考試。隨著計(jì)算機(jī)技術(shù)在我國(guó)各個(gè)領(lǐng)域的推廣、普及,越來(lái)越多的人開始學(xué)習(xí)計(jì)算機(jī)知識(shí),許多用人部門已將具有一定的計(jì)算機(jī)知識(shí)與能力作為考核和錄用工作人員的標(biāo)準(zhǔn)之一。因此,教育部決定舉辦全國(guó)計(jì)算機(jī)等級(jí)考試,其目的在于推進(jìn)計(jì)算機(jī)知識(shí)的普及,促進(jìn)計(jì)算機(jī)技術(shù)的推廣應(yīng)用,以適應(yīng)社會(huì)主義經(jīng)濟(jì)建設(shè)的需要,為用人部門錄用和考核工作人員服務(wù)。目前,全國(guó)計(jì)算機(jī)等級(jí)考試正日趨成為繼高考后全國(guó)第二大考試,尤其是計(jì)算機(jī)二級(jí)證書是計(jì)算機(jī)等級(jí)考試證書中用得最廣泛的證書,它已和英語(yǔ)四六級(jí)一樣成為社會(huì)用人單位對(duì)大學(xué)生的必備要求之一。(-)考試性質(zhì)和目的1、什么是全國(guó)計(jì)算機(jī)等級(jí)考試?全國(guó)計(jì)算機(jī)等級(jí)考試(NationalComputerRankExamination,簡(jiǎn)稱NCRE),是經(jīng)原國(guó)家教育委員會(huì)(現(xiàn)教育部)批準(zhǔn),由教育部考試中心主辦,面向社會(huì),用于考查應(yīng)試人員計(jì)算機(jī)應(yīng)用知識(shí)與能力的全國(guó)性計(jì)算機(jī)水平考試體系。2、為什么要舉辦NCRE?計(jì)算機(jī)技術(shù)的應(yīng)用在我國(guó)各個(gè)領(lǐng)域發(fā)展迅速,為了適應(yīng)知識(shí)經(jīng)濟(jì)和信息產(chǎn)業(yè)發(fā)展的需要,操作和應(yīng)用計(jì)算機(jī)已成為人們必須掌握的一種基本技能。許多單位部門已把掌握一定的計(jì)算機(jī)知識(shí)和應(yīng)用技能作為干部錄用、職務(wù)晉升、職稱評(píng)定、上崗資格的重要依據(jù)之一。鑒于社會(huì)的客觀需求,經(jīng)原國(guó)家教委批準(zhǔn),原國(guó)家教委考試中心于1994年面向社會(huì)推出了NCRE,其目的在于以考促學(xué),向社會(huì)推廣和普及計(jì)算機(jī)知識(shí),也為用人部門錄用和考核工作人員時(shí)提供一個(gè)統(tǒng)一、客觀、公正的標(biāo)準(zhǔn)。(-)報(bào)考條件與報(bào)考對(duì)象1、誰(shuí)可以報(bào)名參加考試?考生不受年齡、職業(yè)、學(xué)歷等背景的限制,任何人均可根據(jù)自己學(xué)習(xí)和使用計(jì)算機(jī)的實(shí)際情況,選考不同等級(jí)的考試??忌淮沃荒軋?bào)考一個(gè)等級(jí)(含筆試和上機(jī)考試)的考試。如果一個(gè)級(jí)別中有不同類別,考生只能選擇其中一類??忌淮慰荚囍荒茉谝粋€(gè)考點(diǎn)報(bào)名。考生可以不參加考前培訓(xùn),直接報(bào)名參加考試。(三)報(bào)名及考試時(shí)間安排1、NCRE采取什么考試形式?考試時(shí)間如何規(guī)定?考試采用由全國(guó)統(tǒng)一命題,統(tǒng)一考試時(shí)間,紙筆考試和上機(jī)操作考試相結(jié)合的形式。紙筆考試中題型以選擇題、填空題為主,其中四級(jí)含有論述題。紙筆考試時(shí)間:二級(jí)C90分鐘、三級(jí)、四級(jí)為120分鐘(四級(jí)只考筆試)。上機(jī)操作考試時(shí)間:二級(jí)C90分鐘、三級(jí)60分鐘,一級(jí)實(shí)行無(wú)紙化的上機(jī)考試,時(shí)間為90分鐘。2、NCRE每年考幾次?各次考試是什么日期?NCRE每年開考兩次,上半年開考一、二、三級(jí),下半年開考一、二、三、四級(jí)。上半年考試時(shí)間為4月第二個(gè)星期六上午(筆試),下半年考試時(shí)間為9月倒數(shù)第二個(gè)星期六上午(筆試),上機(jī)考試從筆試的當(dāng)天下午開始。上機(jī)考試期限為五天,由考點(diǎn)根據(jù)考生數(shù)量和設(shè)備情況具體安排。3、如何報(bào)名?筆試和上機(jī)成績(jī)只有單項(xiàng)合格有何規(guī)定?每次考試報(bào)名的具體時(shí)間由各省(自治區(qū)、直轄市)級(jí)承辦機(jī)構(gòu)規(guī)定??忌凑沼嘘P(guān)規(guī)定到就近考點(diǎn)報(bào)名??忌蓴y帶身份證到就近考點(diǎn)報(bào)名。沒有身份證的未成年人,可憑戶口本,現(xiàn)役軍人憑軍人身份證件報(bào)名。上次考試的筆試和上機(jī)考試僅其中一項(xiàng)成績(jī)合格的,下次考試報(bào)名時(shí)應(yīng)出具上次考試成績(jī)單,成績(jī)合格項(xiàng)可以免考,只參加未通過(guò)項(xiàng)的考試。(五)考生報(bào)名繳費(fèi)(四)考試等級(jí)劃分1、NCRE等級(jí)如何構(gòu)成?主要考核什么能力?全國(guó)計(jì)算機(jī)等級(jí)考試目前共設(shè)置四個(gè)等級(jí):一級(jí):考核微型計(jì)算機(jī)基礎(chǔ)知識(shí)和使用辦公軟件及因特網(wǎng)(Internet)的基本技能。2008年下半年考試科目:一級(jí)MS-OFFICE、一級(jí)WPS、一級(jí)B二級(jí):考核計(jì)算機(jī)基礎(chǔ)知識(shí)和使用一種高級(jí)計(jì)算機(jī)語(yǔ)言或數(shù)據(jù)庫(kù)管理軟件編寫程序以及上機(jī)調(diào)試的基本技能。2005年下半年考試科目:編程類:C、VisualBasic、C++、Java,數(shù)據(jù)庫(kù)類:FoxPro>Access?基礎(chǔ)知識(shí)包括如下內(nèi)容:數(shù)據(jù)結(jié)構(gòu)與算法、程序設(shè)計(jì)方法、軟件工程、數(shù)據(jù)庫(kù)基礎(chǔ)、新增的考試科目:二級(jí)Delphi語(yǔ)言程序設(shè)計(jì)(VF,VB將近年??迹?。三級(jí):分為“PC技術(shù)”、“信息管理技術(shù)”、”數(shù)據(jù)庫(kù)技術(shù)“和“網(wǎng)絡(luò)技術(shù)”四個(gè)類別?!癙C技術(shù)”考核PC機(jī)硬件組成和Windows操作系統(tǒng)的基礎(chǔ)知識(shí)以及PC機(jī)使用、管理、維護(hù)和應(yīng)用開發(fā)的基本技能;”信息管理技術(shù)”考核計(jì)算機(jī)信息管理應(yīng)用基礎(chǔ)知識(shí)及管理信息系統(tǒng)項(xiàng)目和辦公自動(dòng)化系統(tǒng)項(xiàng)目開發(fā)、維護(hù)的基本技能;”數(shù)據(jù)庫(kù)技術(shù)”考核數(shù)據(jù)庫(kù)系統(tǒng)基礎(chǔ)知識(shí)及數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)項(xiàng)目開發(fā)和維護(hù)的基本技能;''網(wǎng)絡(luò)技術(shù)''考核計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識(shí)及計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用系統(tǒng)開發(fā)和管理的基本技能。四級(jí):四級(jí)網(wǎng)絡(luò)工程師、四級(jí)數(shù)據(jù)庫(kù)工程師和四級(jí)軟件測(cè)試工程師、考核計(jì)算機(jī)專業(yè)基本知識(shí)以及計(jì)算機(jī)應(yīng)用項(xiàng)目的分析設(shè)計(jì)、組織實(shí)施的基本技能。2、是否必須通過(guò)第一(二、三)級(jí),才能報(bào)考第二(三、四)級(jí)考試?沒有規(guī)定考生必須通過(guò)第一(二、三)級(jí)才能報(bào)考第二(三、四)級(jí),考生可根據(jù)自己的實(shí)際情況選考不同的等級(jí),但一次考試只能報(bào)考一個(gè)等級(jí)。考生一次考試只能在一個(gè)考點(diǎn)報(bào)名。(五)考試成績(jī)的計(jì)算1、如何計(jì)算成績(jī)?是否有合格證書?該考試筆試、上機(jī)考試實(shí)行百分制計(jì)分,筆試以百分制通知考生,上機(jī)以等級(jí)分?jǐn)?shù)通知考生成績(jī)。等級(jí)分?jǐn)?shù)分為“不及格“、“及格“、“良好“、“優(yōu)秀”四等。100-90分為“優(yōu)秀”,89-80分為“良好”,79-60分為“及格“,59-0分為“不及格”。筆試和上機(jī)考試成績(jī)均在“及格”以上者,由教育部考試中心發(fā)合格證書。筆試和上機(jī)考試成績(jī)均為“優(yōu)秀”的,合格證書上會(huì)注明“優(yōu)秀”字樣,證書上沒有良好,按及格對(duì)待。(六)證書獲得者應(yīng)具備的能力1、證書獲得者具備什么樣的能力?可以勝任什么工作?一級(jí)證書表明持有人具有計(jì)算機(jī)的基礎(chǔ)知識(shí)和初步應(yīng)用能力,掌握字、表處理、電子表格和演示文稿等辦公自動(dòng)化(Office或WPS)軟件的使用及因特網(wǎng)(Internet)應(yīng)用的基本技能,具備從事機(jī)關(guān)、企事業(yè)單位文秘和辦公信息計(jì)算機(jī)化工作的能力。二級(jí)證書表明持有人具有計(jì)算機(jī)基礎(chǔ)知識(shí)和基本應(yīng)用能力,能夠使用計(jì)算機(jī)高級(jí)語(yǔ)言編寫程序和調(diào)試程序,可以從事計(jì)算機(jī)程序的編制工作、初級(jí)計(jì)算機(jī)教學(xué)培訓(xùn)工作以及計(jì)算機(jī)企業(yè)的業(yè)務(wù)和營(yíng)銷工作。二、新視野教育計(jì)算機(jī)等級(jí)考試培訓(xùn)班問(wèn)答1、全國(guó)計(jì)算機(jī)等級(jí)考試證書有有效期嗎?絕對(duì)沒有,等級(jí)考試證書是終身有效的,詳情可以訪問(wèn)等級(jí)考試官方網(wǎng)站(或)。(全國(guó)計(jì)算機(jī)等級(jí)考試教育部考試中心官方網(wǎng)站的回答原話是:”等級(jí)考試的證書是終身有效的,等級(jí)考試的大綱會(huì)在每2-3年更新一次,但更新并不影響以前證書的效力,因此有些人的'等級(jí)考試證書2年左右就會(huì)失效'的說(shuō)法是不正確的。”)2、我沒有參加一級(jí)考試,能參加二級(jí)考試嗎?全國(guó)計(jì)算機(jī)等級(jí)考試分為一至四級(jí),考生可以任意選擇考試等級(jí),不是非要先考一級(jí)再考二級(jí)。一般來(lái)說(shuō),一級(jí)主要適合社會(huì)在職人員考試,二級(jí)適合在校大學(xué)生考試,二級(jí)對(duì)大學(xué)生找工作也是最有用的。三級(jí)和四級(jí)可以作為進(jìn)一步學(xué)習(xí)的考試。3、有的專業(yè)會(huì)開設(shè)相關(guān)課程,有必要參加培訓(xùn)嗎?二級(jí)考試所考核的內(nèi)容基本屬于基礎(chǔ)知識(shí),早點(diǎn)學(xué)習(xí)可以早點(diǎn)打牢基礎(chǔ),以便于進(jìn)一步學(xué)習(xí)計(jì)算機(jī)知識(shí),從而在以后的競(jìng)爭(zhēng)中處于有利地位。學(xué)校雖然有些專業(yè)的相關(guān)課程和計(jì)算機(jī)等級(jí)考試有一定的聯(lián)系,但都不具有針對(duì)性。而且新大綱推出后,不少內(nèi)容只有計(jì)算機(jī)專業(yè)才開設(shè)有關(guān)聯(lián)的課程,但也不具備針對(duì)性。新大綱推出后等級(jí)考試通過(guò)率再創(chuàng)新低,參加專業(yè)培訓(xùn)勢(shì)在必行。4、什么時(shí)候參加二級(jí)考試比較合算?一般來(lái)說(shuō),大一大二時(shí)學(xué)習(xí)和通過(guò)計(jì)算機(jī)二級(jí)考試比較劃算。大二時(shí)主要精力用來(lái)考英語(yǔ)四六級(jí),大三時(shí)專業(yè)課比較緊張,大四已經(jīng)到了找工作的時(shí)候。相對(duì)來(lái)說(shuō),大一同學(xué)求知欲強(qiáng)、時(shí)間精力充沛、易于接受新東西,是學(xué)習(xí)的黃金時(shí)段,如果能較早的掌握必備的計(jì)算機(jī)知識(shí),如大一就過(guò)國(guó)家二級(jí),并掌握一些相關(guān)應(yīng)用知識(shí),這樣就在競(jìng)爭(zhēng)激烈且殘酷的當(dāng)今社會(huì)占盡先機(jī),無(wú)疑在今后的學(xué)習(xí)中將以更為輕松的心態(tài),更為充沛的精力從事于你所鐘愛的事業(yè)中。5、二級(jí)考試可以有多種語(yǔ)言選擇,為什么要選擇C語(yǔ)言呢?C語(yǔ)言被譽(yù)為最有“錢”途的語(yǔ)言,具有廣泛的用途,受到社會(huì)的熱烈追捧,如Linux、Unix操作系統(tǒng)均由C語(yǔ)言編寫,Windows操作系統(tǒng)也有90%的代碼由C語(yǔ)言編寫。C語(yǔ)言語(yǔ)法和C++、Java、C#等類似,可以方便進(jìn)一步學(xué)習(xí)。在許多計(jì)算機(jī)考試中,C語(yǔ)言是必考內(nèi)容,甚至是唯一考核內(nèi)容,如計(jì)算機(jī)三級(jí)、四級(jí)的上機(jī)考核部分,程序員、高級(jí)程序員的下午試卷等。6、二級(jí)考試什么時(shí)候報(bào)名?什么時(shí)候參加考試?二級(jí)考試每年考兩次,分別在上半年的4月份順數(shù)第二個(gè)周六和下半年的9月份倒數(shù)第二個(gè)周六。一般上半年4月份考試的報(bào)名時(shí)間從前一年11月中旬到第二年1月中旬均可。下半年9月份考試的報(bào)名時(shí)間一般從5月底到7月底。而一般在報(bào)名考試之前相關(guān)知識(shí)必須已經(jīng)學(xué)得差不多了,因此,如果參加4月份的考試必須在下半年10-1月份學(xué)習(xí),然后在寒假之后考前短暫的時(shí)間進(jìn)行適當(dāng)強(qiáng)化即可參加考試。參加9月份的考試必須在上半年3—6月份學(xué)習(xí),然后在暑假之后考前短暫的時(shí)間進(jìn)行適當(dāng)強(qiáng)化即可參加考試。7、參加培訓(xùn)是否會(huì)影響到我們的正常上課?我們的授課時(shí)間均選在業(yè)余時(shí)間,不會(huì)與學(xué)校的正常教學(xué)產(chǎn)生沖突。8、二級(jí)(C語(yǔ)言)考試的考試內(nèi)容是什么?根據(jù)新大綱的要求,二級(jí)(C語(yǔ)言)考試分為理論考試和上機(jī)考試兩部分,必須都通過(guò)考試才能算合格??荚噧?nèi)容分為C語(yǔ)言程序設(shè)計(jì)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、函數(shù)、指針、數(shù)組、字符串、編譯預(yù)處理、作用域、結(jié)構(gòu)體、共用體、文件等)和公共基礎(chǔ)(數(shù)據(jù)結(jié)構(gòu)、程序設(shè)計(jì)、軟件工程和數(shù)據(jù)庫(kù))。9、新視野IT培訓(xùn)有何特色?本中心和很多高校的網(wǎng)絡(luò)中心、計(jì)算機(jī)學(xué)院、現(xiàn)代教育中心有合作關(guān)系,立足于在校大學(xué)生,彌補(bǔ)學(xué)校教育的不足,相輔相成。除主要培訓(xùn)最有“錢”途的語(yǔ)言一一C語(yǔ)言外,還注重引導(dǎo)學(xué)員,并向?qū)W員介紹國(guó)內(nèi)外IT業(yè)發(fā)展的各種動(dòng)態(tài)和發(fā)展趨勢(shì)、社會(huì)上對(duì)IT人才各種需求信息等,力爭(zhēng)讓學(xué)員經(jīng)過(guò)培訓(xùn)后有明確的學(xué)習(xí)目標(biāo),并掌握一套行之有效的方法,能舉一反三,獨(dú)立的走自己的道路。10、我沒有計(jì)算機(jī)基礎(chǔ),可以參加培訓(xùn)嗎?可以,無(wú)需任何基礎(chǔ)知識(shí),完全從零開始,即使從來(lái)沒有接觸過(guò)計(jì)算機(jī),也能夠?qū)W好!11、大幾參加培訓(xùn)比較好?一般大學(xué)的規(guī)劃是:“大一通過(guò)計(jì)算機(jī)二級(jí)、大二通過(guò)英語(yǔ)四六級(jí)、大三專業(yè)課及考研、大四找工作及實(shí)踐”,因此,一般大一最好,尤其是如果大一上學(xué)期參加學(xué)習(xí)準(zhǔn)備考試,那么下學(xué)期4月份就可以參加考試了,如果大一下學(xué)期準(zhǔn)備考試的話,那么要等到大二9月份才能考試,而大二已經(jīng)開始準(zhǔn)備英語(yǔ)四六級(jí)等其他事宜了。所以大一上學(xué)期學(xué)習(xí)等級(jí)考試最好,而且剛進(jìn)大學(xué),時(shí)間精力充沛,進(jìn)取心強(qiáng),是學(xué)習(xí)的黃金時(shí)段。二.教學(xué)重點(diǎn),難點(diǎn)分析1.C語(yǔ)言概述知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)C語(yǔ)言概述0-1分20%簡(jiǎn)單識(shí)記C語(yǔ)言程序的構(gòu)成0-1分30%簡(jiǎn)單識(shí)記標(biāo)識(shí)符1-2分60%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)常量1-2分80%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)變量2-3分100%難度適中,重點(diǎn)理解重點(diǎn)掌握注意:從幾年的試題分析看C語(yǔ)言的概述和程序的構(gòu)成合起來(lái)考試已經(jīng)是一個(gè)慣例了。2.運(yùn)算符與表達(dá)式知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)C運(yùn)算符簡(jiǎn)介0-1分10%簡(jiǎn)單識(shí)記運(yùn)算符的結(jié)合和優(yōu)先級(jí)0-1分60%簡(jiǎn)單識(shí)記強(qiáng)制類型轉(zhuǎn)換運(yùn)算符0-1分30%簡(jiǎn)單識(shí)記逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式0-1分40%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)基本的算術(shù)運(yùn)算符1_2分100%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)算術(shù)表達(dá)式和運(yùn)算符的1-2分100%難度適中,重點(diǎn)理解重點(diǎn)掌握優(yōu)先級(jí)與結(jié)合、自增自減運(yùn)算符2-3分100%難度適中,重點(diǎn)理解重點(diǎn)掌握賦值運(yùn)算符和賦值表達(dá)式2-4分100%簡(jiǎn)單,重點(diǎn)掌握重點(diǎn)理解復(fù)合的賦值運(yùn)算符1_2分80%偏難,不是重點(diǎn)賦值運(yùn)算中的類型轉(zhuǎn)換0-1分75%偏難,不是重點(diǎn)位運(yùn)算符和位運(yùn)算0~1分80%偏難,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)三.教學(xué)講點(diǎn)c語(yǔ)言的基本構(gòu)成和格式#includc"stdio.h"main(){inta,b,sum;/*定義變量*/a=10; /*把整數(shù)10賦值給變量a*/b=20; /*把整數(shù)20賦值給變量b*/sum=a+b;/*把兩數(shù)之和賦值給變量sum*/printf("a=%d,b=%d,sum=%d\n”,a,b,sum);/*輸出計(jì)算結(jié)果*/⑴.C程序由函數(shù)組成,一個(gè)程序必須且只能有一個(gè)主函數(shù)(main。),C程序總是從主函數(shù)開始執(zhí)行,在主函數(shù)中結(jié)束。.定義函數(shù)時(shí)函數(shù)名后必須有一對(duì)小括號(hào),函數(shù)體必須放在一對(duì)花括號(hào)內(nèi),在函數(shù)體中,函數(shù)體有兩個(gè)部分:定義部分和執(zhí)行部分。定義語(yǔ)句必須出現(xiàn)在執(zhí)行語(yǔ)句之前,我們先定義了a,b,sum,然后才給它們賦值。⑶.C語(yǔ)言中每條語(yǔ)句都以分號(hào)“;”結(jié)束,分號(hào)時(shí)C語(yǔ)句的一部分。即使是程序的最后一個(gè)語(yǔ)句也不例外。分號(hào)是語(yǔ)句結(jié)束的標(biāo)志。.一行可以寫多條語(yǔ)句,一條語(yǔ)句也可以分在多行上寫,但是,不能將一個(gè)整體分開。例如:int是錯(cuò)誤的,而int正確。.C語(yǔ)言的注釋必須放在“/*”和“*/”之間,“/”和“*”之間不允許有空格。和之間不允許再插入“/*”或注釋可以出現(xiàn)在程序中的任意位置。注釋部分不被執(zhí)行。.C語(yǔ)言程序書寫格式自由,語(yǔ)句可以從任一列開始書寫,一行內(nèi)可以寫多個(gè)語(yǔ)句。但是過(guò)于“自由”的程序書寫格式往往使人們很難讀懂程序,初學(xué)者應(yīng)該從一開始就養(yǎng)成好的習(xí)慣,是程序便于閱讀。.標(biāo)識(shí)符(1)標(biāo)識(shí)符只能由字母、數(shù)字和下劃線組成。(2)標(biāo)識(shí)符的第一個(gè)字符必須是字母或下劃線。(3)標(biāo)識(shí)符的大小寫字母是有區(qū)別的,如abc和ABC是兩個(gè)完全不同的標(biāo)識(shí)符。(3)標(biāo)識(shí)符的分類:關(guān)鍵字:關(guān)鍵字是具有特定的含義的、專門用來(lái)說(shuō)明C語(yǔ)言特定成分的一類標(biāo)識(shí)符。詳細(xì)的查閱附錄二。預(yù)定義標(biāo)識(shí)符:在C語(yǔ)言中它也有特定的含義。預(yù)定義標(biāo)識(shí)符可以用位“用戶表標(biāo)識(shí)符”使用,只是這將使這些標(biāo)識(shí)符失去了原來(lái)的意義。用戶標(biāo)識(shí)符:由用戶根據(jù)需要定義的標(biāo)識(shí)符被成為用戶標(biāo)識(shí)符。用戶標(biāo)示符用來(lái)給變量、函數(shù)、數(shù)組或者指針等命名。.C語(yǔ)言的數(shù)據(jù)類型據(jù)可以分為常量和變量。常量是指在程序執(zhí)行中不變的量,常量分為:整型常數(shù)、實(shí)型常數(shù)、字符常量、字符串常量。整型數(shù)據(jù):進(jìn)制間的轉(zhuǎn)換二、八、十六進(jìn)制轉(zhuǎn)為十進(jìn)制規(guī)則:“按權(quán)相加”十進(jìn)制轉(zhuǎn)為二、八、十六進(jìn)制規(guī)則:整數(shù)部分:基數(shù)除取余,逆序排列小數(shù)部分:基數(shù)乘取整,順序排列二進(jìn)制轉(zhuǎn)為八、十六進(jìn)制規(guī)則:三(四)合一,按序相拼(整數(shù)部分,從右向左取,小數(shù)部分從左向右取,位數(shù)不足補(bǔ)零)。八、十六進(jìn)制轉(zhuǎn)為二進(jìn)制規(guī)則:一分三(四),按序相拼數(shù)據(jù)在內(nèi)存中的存放形式1字節(jié)=8位,lByte=8bit字長(zhǎng):指CPU能同時(shí)處理的二進(jìn)制位數(shù)。由CPU的型號(hào)而定。如:16位微機(jī)的字長(zhǎng)就是16位或2字節(jié)。1GB=1O24MB,1MB=1O24KB,1KB=1O24BB:表示字節(jié),字節(jié)是表示存儲(chǔ)容量的最小單位。位(bit):是計(jì)算機(jī)中信息表示的最小單位。正整數(shù)在內(nèi)存中用“原碼”形式存放。(直接轉(zhuǎn)換為二進(jìn)制即可)。如:' |o|o|o|o|o|o|o|o|o|o|o|o|o|i|o|T二字節(jié)能存放的最大數(shù)是:32767011TTT11TTT11TTT11T1]對(duì)帶符號(hào)數(shù),最高位是符號(hào)位,用0表示正,用1表示負(fù)。負(fù)整數(shù)在內(nèi)存中用“補(bǔ)碼”形式存放。取補(bǔ)碼的步驟:(1)忽略負(fù)號(hào),求出原碼。(2)將原碼按位取反(0、1互換)。(3)在第二步的基礎(chǔ)上加U如:取-5的補(bǔ)碼。(1) |o|o|o|o|o|o|o|o|o|o|o|o|o|i|o|i|,(2) U1U1U1U1U1U1UoUo] 11111111111111111111111111:o111T將補(bǔ)碼轉(zhuǎn)換成相應(yīng)的整數(shù)的步驟:轉(zhuǎn)換成十進(jìn)制:1X2”=32768加負(fù)號(hào):-32768幾個(gè)特殊的帶符號(hào)整數(shù):1000000000000000 -327680111111111111111 327671111111111111111 -1無(wú)符號(hào)整數(shù):只有正整數(shù),沒有負(fù)整數(shù),最高位不表示符號(hào)位,每一位均參與轉(zhuǎn)換。二進(jìn)制帶符號(hào)整數(shù)無(wú)符號(hào)整數(shù)1111111111111111-1655351000000000000000-3276832768例2-12:若有:inta=-l;unsignedb=65535;則printf("%d,%u,%d,%u”,a,a,b,b);輸出結(jié)果是:-1,65535,-1,65535數(shù)據(jù)益出問(wèn)題:例2-13:若有inta=32767;則a=a+l的結(jié)果是:-32768例2-14:若有unsignedb=65536;則b的值是:0分析:32767:01111111111111111+1100000000000000將100000000000000按照帶符號(hào)數(shù)轉(zhuǎn)為十進(jìn)制為-3276865535:1111111111111111+11111111111111111+11]00000000]0000000065536unsignedb=655536;而b屬于無(wú)符號(hào)整型,在內(nèi)存中只占兩字節(jié),所以只能包括16位。標(biāo)準(zhǔn)C沒有具體要求規(guī)定各類型數(shù)據(jù)所占內(nèi)存的字節(jié)數(shù),現(xiàn)以這次考試標(biāo)準(zhǔn)viusalc++6.0為例,說(shuō)明各類型變量所占的位數(shù)。類型所占位數(shù)所占字節(jié)數(shù)類型所占位數(shù)所占字節(jié)數(shù)short162unsignedint324int324unsignedlong324long324float324unsignedshort162double648數(shù)據(jù)(浮點(diǎn)數(shù))實(shí)型常量(1)小數(shù)形式:由數(shù)字和小數(shù)點(diǎn)組成,必須有小數(shù)點(diǎn),小數(shù)點(diǎn)的某一側(cè)可以沒有數(shù)字。如:.23,123.876,123.(2)指數(shù)形式:用“e”或“E”后接一個(gè)整數(shù),表示以10為底的塞數(shù)。注意:“e”或"E”之前之后必須有數(shù)字,且之后的數(shù)字必須是整數(shù)。他們和前后的數(shù)字之間不能有空格。例如:例2-15:下列合法的常量是()(.A.-32169 B.0128C.OXDEFGD.13E0.5例2-16:下列合法的實(shí)型常量是( )0(A)OXff(B)124E(C)1.23E5.0(D)3.E2(E)1.25E+2(F).23e+02實(shí)型變量單精度型float占4字節(jié)雙精度型double占8字節(jié)長(zhǎng)雙精度longdouble占16字節(jié)(較少用).表達(dá)式與運(yùn)算符算術(shù)運(yùn)算符及其表達(dá)式:+-*/%%:(求余運(yùn)算)注意:(1)%兩邊必須是整型數(shù)據(jù)。12.0%3表達(dá)式是錯(cuò)誤的。(2)求余(%)的方法是:忽略符號(hào),求出余數(shù),再將所得余數(shù)的符號(hào)定為與被除數(shù)相同。例如:17%3結(jié)果是:217%-3結(jié)果是:2,-17%3結(jié)果是:-2,-17%-3結(jié)果是:-2強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型表達(dá)式:(類型名)表達(dá)式注意:類型名(表達(dá)式)這種形式是C++的強(qiáng)制類型表達(dá)方式。.賦值運(yùn)算符及其表達(dá)式賦值運(yùn)算符=格式:變量名=表達(dá)式功能:將表達(dá)式的值賦給左邊的變量。注:(1)賦值運(yùn)算符左邊只能是一個(gè)變量,不能是常量,也不能是表達(dá)式。a+b=3 4=3是非法的表達(dá)式a=6a+(b=3)都是合法的表達(dá)式a=b=20a=(b=10)/(c=2)都是合法的表達(dá)式(2)實(shí)型數(shù)據(jù)賦給整型變量時(shí),小數(shù)部分被舍去,整型數(shù)據(jù)賦給實(shí)型變量時(shí),系統(tǒng)自動(dòng)將整型數(shù)據(jù)轉(zhuǎn)換為實(shí)型數(shù)據(jù)。例如:floata;intb;表達(dá)式a=10%3的值是1.0表達(dá)式b=a=10%3的值是1復(fù)合賦值運(yùn)算符及其表達(dá)式:+=-=*=/=%=&=|=人=?=例如:a+=3相當(dāng)于a=a+3,a/=b+4相當(dāng)a/=(b+4)或a=a/(b+4)例:若a=12,則執(zhí)行表達(dá)式a+=a-=a+a后a的值是多少?分析:a+=a-=(a+a)/*a的值是12*/a+=a-=24 /*a加值是12*/a+=a=a-24 /*a的值是12*/a+=a=-12 /*a的值是12*/a+=-12 /*a的值是-12*/a=a+(-12) /*a的值是-12*/a=-24 /*a的值是-24*/自增、自減運(yùn)算符及其表達(dá)式-H- -注意:(1)只能用于變量,不能用于常量和表達(dá)式。如:6++(a+b)—都是錯(cuò)誤的。(2)當(dāng)它們用于變量名前時(shí),表達(dá)式的值為變量的值加一或減一。當(dāng)位于變量名后時(shí),表達(dá)式的值為變量原來(lái)的值。不論位于變量名前還是變量名后,只要進(jìn)行了自增、自減運(yùn)算,變量的值都會(huì)在原來(lái)的基礎(chǔ)上加1或減1。如:a=3則a++表達(dá)式的值是3運(yùn)算之后變量的值是4a=3則++a表達(dá)式的值是4之后變量的值是4a=3則a-表達(dá)式的值是3之后變量的值是2a=3則-a表達(dá)式的值是2之后變量的值是2⑶口訣:j=i++;這個(gè)表達(dá)式是先引用后增值。即:先把i的初始值給變量j,然后i再自加loj=++i;這歌表達(dá)式是先增值后引用。即:i先自加1,然后再將我們自加后的值賦值給變量jo但是記住它們是一起執(zhí)行的,就是說(shuō):例如j=i++先引用后增值實(shí)際上是一起執(zhí)行的,它們之間不存在先后關(guān)系,我們只是位了好記才用到了上面的方法。老師在上課的時(shí)候先不要說(shuō),但是你們必須知道。j=i-,j=-i和上面j=i++,j=++i的方法是一樣。號(hào)運(yùn)算符及其表達(dá)式.格式:表達(dá)式1,表達(dá)式2 表達(dá)式n注意:1.逗號(hào)表達(dá)式的值是整個(gè)逗號(hào)表達(dá)式中最后一個(gè)表達(dá)式的值。.求值順序是從左到右依次求解。例如:a=(3,b=l)的值是1運(yùn)算結(jié)束后a的值是1,b的值是1。四.相關(guān)試題1.2008年4月相關(guān)試題(11)以下敘述中正確的是A)C程序中的注釋只能出現(xiàn)在程序的開始位置和語(yǔ)句的后面B)C程序書寫格式嚴(yán)格,要求一行內(nèi)只能寫一個(gè)語(yǔ)句C)C程序書寫格式自由,一個(gè)語(yǔ)句可以寫在多行上D)用C語(yǔ)言編寫的程序只能放在一個(gè)程序文件中(12)以下選項(xiàng)中不合法的標(biāo)識(shí)符是A)printB)FORC)&aD)_00(13)以下選項(xiàng)中不屬于李薦常量的是A),C'B)"C"C),xCC(TD),\072'(14)設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是A)x=y*5=x+zB)int(15.8%5)C)x=y+z+5,++yD)x=25%5.0填空(7)設(shè)變量已正確定義為整型,貝IJ表達(dá)式n=i=2,++i,i++的值為[712.2007年9月相關(guān)試題(IDC語(yǔ)言源程序名的后綴是A).exeB),CC).objD).cp(12)可在C程序中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是A)andB)DateC)HiD)case_2007y-m-dDr.TomBigl(13)以下選項(xiàng)中,合法的一組C語(yǔ)言數(shù)值常量是A)028B)12.C).177D)0x8A.5e-30Xa234el.510,000-Oxf4.5e0Oabc3.e5(14)以下敘述中正確的是A)C語(yǔ)言程序?qū)脑闯绦蛑械谝粋€(gè)函數(shù)開始執(zhí)行B)可以在程序中由用戶指定任意一個(gè)函數(shù)作為主函數(shù),程序?qū)拇碎_始執(zhí)行C語(yǔ)言規(guī)定必須用main作為主函數(shù)名,程序?qū)拇碎_始執(zhí)行,在此結(jié)束main可作為用戶標(biāo)識(shí)符,用以命名任意一個(gè)函數(shù)作為主函數(shù)(16)以下關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述中正確的是A)均占4個(gè)字節(jié) B)根據(jù)數(shù)據(jù)的大小來(lái)決定所占內(nèi)存的字節(jié)數(shù)C)由用戶自己定義 D)由C語(yǔ)言編譯系統(tǒng)決定(17)若變量均已正確定義并賦值,以下合法的C語(yǔ)言賦值語(yǔ)句是x=y==5;B)x=n%2.5;C)x+n=i;D)x=5=4+l;3.2007年4月相關(guān)考題(12)下列敘述中錯(cuò)誤的是(D)A)計(jì)算機(jī)不能直接執(zhí)行用C語(yǔ)言編寫的源程序C程序經(jīng)C編譯程序編譯后,生成后綴為.obj的文件是一個(gè)二進(jìn)制文件C)后綴為.obj的文件,經(jīng)連接程序生成后綴為.exe的文件是一個(gè)二進(jìn)制文件D)后綴為.obj和.exe的二進(jìn)制文件都可以直接運(yùn)行(13)按照C語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是(B)A)大寫字母B)連接符C)數(shù)字字符D)下劃線(14)以下敘述中錯(cuò)誤的是(C)A)C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言B)結(jié)構(gòu)化程序有順序、分支、循環(huán)三種基本結(jié)構(gòu)組成C)使用三種基本結(jié)構(gòu)構(gòu)成的程序只能解決簡(jiǎn)單問(wèn)題D)結(jié)構(gòu)化程序設(shè)計(jì)提倡模塊化的設(shè)計(jì)方法(15)對(duì)于一個(gè)正常運(yùn)行的C程序,以下敘述中正確的是(A)A)程序的執(zhí)行總是從main函數(shù)開始,在main函數(shù)結(jié)束B)程序的執(zhí)行總是從程序的第一個(gè)函數(shù)開始,在main函數(shù)結(jié)束C)程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個(gè)函數(shù)中結(jié)束D)程序的執(zhí)行總是從程序的第一個(gè)函數(shù)開始,在程序的最后一個(gè)函數(shù)中結(jié)束(19)有以下程序,其中%u表示按無(wú)符號(hào)整數(shù)輸出(B)main(){unsignedintx=0xFFFF;/*x的初值為十六進(jìn)制數(shù)*/printf("%u\n”,x);}/*注意:x是占兩個(gè)字節(jié)*/程序運(yùn)行后的輸出結(jié)果是A)-1B)65535C)32767D)OxFFFF第二章順序結(jié)構(gòu)一.教學(xué)重點(diǎn)、難點(diǎn)知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)C語(yǔ)句分類0-130%簡(jiǎn)單識(shí)記字符輸出函數(shù)putcharO1-270%難度適中,重點(diǎn)掌握字符輸入函數(shù)getcharO1-270%難度適中,重點(diǎn)掌握格式輸入函數(shù)printf()3-4100%難度適中,重點(diǎn)理解重點(diǎn)掌握格式輸出函數(shù)scanf()3-4100%難度適中,重點(diǎn)理解重點(diǎn)掌握二.教學(xué)內(nèi)容.語(yǔ)句C語(yǔ)句共分為5類:控制語(yǔ)句函數(shù)調(diào)用語(yǔ)句:printf("thisisacstatement");表達(dá)式語(yǔ)句每一個(gè)合法的表達(dá)式后加上分號(hào)(;)就構(gòu)成了表達(dá)式語(yǔ)句。++a;i+j;語(yǔ)句和表達(dá)式的區(qū)別:表達(dá)式有唯一確定的值,而語(yǔ)句沒有值。賦值語(yǔ)句格式:賦值表達(dá)式;i=l,j=2是逗號(hào)表達(dá)式i=l;j=2;是兩條賦值語(yǔ)句i++;i—;++i;—i;都是賦值語(yǔ)句等價(jià)于i=i+l;或空語(yǔ)句:只有二個(gè)單獨(dú)而分號(hào)構(gòu)成的語(yǔ)句。如:;就是一條空語(yǔ)句。復(fù)合語(yǔ)句:用一對(duì){}將若干語(yǔ)句括起來(lái)構(gòu)成一條復(fù)合語(yǔ)句。.輸入輸出語(yǔ)句在使用庫(kù)函數(shù)時(shí)必須先用預(yù)編譯命令#includev頭文件名〉或#include”頭文件名”將相應(yīng)的頭文件包含到源程序中。如:#include<stdio.h>Z.l.printf()函數(shù)格式:printf(“格式控制”,輸出列表);功能:按格式控制指定的格式輸出數(shù)據(jù)。注意:格式控制包括以%開頭的“格式說(shuō)明符”和原樣輸出的普通字符。如:printf(“a=%d,a+b=%d”,30,4+7);輸出結(jié)果是:a=30,a+b=ll(l)d格式%d:按實(shí)際長(zhǎng)度輸出十進(jìn)制整數(shù)。%md:輸出占m歹!L若小于m歹!J,左邊補(bǔ)空格,若大于m歹!J,按實(shí)際輸出。%-md:輸出占m列,若小于m列,右邊補(bǔ)空格,若大于m列,按實(shí)際輸出。%ld:輸出長(zhǎng)整型數(shù)據(jù),輸入輸出長(zhǎng)整型數(shù)據(jù)時(shí)必須用該格式。例如:printf(“%d,%6d,%-6d,%ld”,386,1234,3456,12345L);輸出結(jié)果:386,1234,3456,12345printf(“%2d”,12345);輸出結(jié)果:12345(2)u格式%u:以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù)。printf(tt%u,,,-l);65535ptintf(“%u”,-32768);32768(3)。格式%。:以無(wú)符號(hào)八進(jìn)制形式輸出整數(shù),不輸出前導(dǎo)符0。printf(tt%d,%o,,,-l,-l);-1,177777(4)x或X格式%x或%X以無(wú)符號(hào)十六進(jìn)制形式輸出整數(shù)。不輸出前導(dǎo)符Ox或0X,小寫對(duì)小寫,大寫對(duì)大寫。printf(“%d,%x,%X,%x”,-l,“,Oxabc,OXAbc);-l,ffff,ABC,abc注:若要輸出十六進(jìn)制和八進(jìn)制的前導(dǎo)符,則要用%#。和%#x、%#X格式。printf(“%#o,%#x,%#X”,-l,-l,OxaBc);0177777,0xffff,0XABC(5)c格式%c用來(lái)輸出一個(gè)字符,不輸出單引號(hào)定界符。%c和%d可以相互轉(zhuǎn)換。printf(“%c,%d",'a','a');a,97printf(tt%c,%d^^,100,100);d,100(6)s格式用來(lái)輸出一個(gè)字符串,不輸出雙引號(hào)和字符串結(jié)束符。%s:輸出字符串的有效字符。printf("%s","china\Oyunnan");china%ms:輸出占m列,春小于m列,左邊補(bǔ)空格,大于m列,按實(shí)際輸出。printf(“%5$,%-5s,%2s'',"swfc",''swfc'',"swfc");swfc,swfc,swfc%m.ns:輸出占m列,只輸出字符串的左n個(gè)字符到m列的右端。如:printf("%7.5s”,”yunnan");vunna(7)f器式:按小數(shù)形式輸出實(shí)型數(shù)據(jù)。%f:默認(rèn)輸出6位小數(shù)。如:printf(M%f,%r,543.12,5.4312e+2);543.120000,543.120000%m.nf:輸出占m歹!J,其中有n位小數(shù)。若超過(guò)m歹!J,確保n位小數(shù)后按實(shí)際輸出。注意四舍五入問(wèn)題。如:printff<%7.3f,%-7.3f,%4.2r,3.1415726,3.1415926,314.5926);3.142,3.142,314.59(8)e格式以指數(shù)形式輸出一個(gè)實(shí)數(shù)。小數(shù)點(diǎn)前只有一位非零數(shù),5位小數(shù),3位指數(shù)。如:printf(“%e,%e”,l23.4,123.45e-7);234000e+002,1.234500e-005(9)g格式自動(dòng)在%f和%e中選擇較短的一種輸出,對(duì)于小數(shù)部分不輸出無(wú)意義的Oo如:printf(M%g,%g,,,l23.45,123.45e-2);123.45,1.2345printf(“%g”,123000000.0);23e+08小結(jié):(1)%%表示輸出一個(gè)%。如:printf(“%%d=%d”,10,10);%d=10(2)除了x,e,g大小寫均可外,其它都只能小寫。如:printf(M%d=%D,,,20,20);20=%D⑶輸出格式說(shuō)明符所能操作的數(shù)據(jù)類型必須與輸出項(xiàng)的類型一致。如:printf(“%d”,1.234);/*出錯(cuò)*/2.2.scanf()函數(shù)格式:scanf(“格式控制”,地址列表);意:(1)可指定數(shù)據(jù)所占的列數(shù),輸入后由系統(tǒng)自動(dòng)截取相應(yīng)的位數(shù)。如:scanf(44%3d%2d,,,&a,&b);若輸入:3863018則:a的值是:386b的值是:30若輸入:3863a的值是:386b的值是:3scanf(M%3c%2d,,,&ch,&c);若輸入:3863018則:ch的值是:3b的值是:30%*md:表示跳過(guò)m列不讀。如:scanf(4t%*3d%3d%4d,,,&a,&b);若輸入:123456則:a的值是:456b的值是:原來(lái)的值。(3)不能在scanf()函數(shù)中指定輸入數(shù)據(jù)的小數(shù)位數(shù)。如:scanf(“%7.5P,&a);/*出錯(cuò)*/在scanf()函數(shù)中,輸入時(shí)普通字符原樣輸入。如:scanffta=%d,b=%d,,,&a,&b);若要給a賦值5,b賦值10,正確的輸入是:a=5,b=10scanf(4<%d*,%d#,%d,,,&a,&b,&c);若要讓a,b,c分別得到1,2,3,正確的輸入是:1*,2#,3〈回車>若兩個(gè)格式說(shuō)明符之間沒有其它字符,則在輸入數(shù)據(jù)時(shí),兩數(shù)據(jù)之間要用回車或空格分隔,回車或空格可以是多個(gè)。但是,%c格式除外。如:scanf(M%d%d,,,&a,&b);若想讓a的值為5,b的值為10o則正確的輸入是:5空格回車〉或5〈回車〉10<回車>或5空格空格空格10<回車〉(6)多個(gè)%c格式之間沒有其它字符,仍然不能用回車或空格來(lái)分隔。如:scanf(w%c%c%c,,,&a,&b,&c);若輸入:a空格b空格c<回車>a的值是,a,,b的值是空格,c的值是,b,。(7)格式說(shuō)明符所能操作的數(shù)據(jù)類型必須與對(duì)應(yīng)變量的類型相同。如:inta;scanf(tt%r,&a);/*出錯(cuò)*/總結(jié):.普通字符原樣輸入,原樣輸出。.對(duì)于%d格式,指定寬度小于輸出寬度,原樣輸出。.%#o,%#x,%#X表示要輸出八進(jìn)制的前導(dǎo)符數(shù)字0,和十六進(jìn)制的前導(dǎo)符Ox,OXo.%x,%X格式,小寫對(duì)小寫,大寫對(duì)大寫。.%*md:表示跳過(guò)相應(yīng)的輸入項(xiàng)。.注意進(jìn)制間的轉(zhuǎn)換,以及無(wú)符號(hào)數(shù)和帶符號(hào)數(shù)之間的轉(zhuǎn)換。.在scanf()函數(shù)中,給double類型變量輸入數(shù)據(jù)時(shí),應(yīng)該使用%If類型說(shuō)明符,而輸出時(shí),可以用%If,也可以用%If。三.試題分析1.2008年4月試題分析(16)有以下程序段charch;intk;ch=,af;k=12;printf(M%c,%d,M,ch,ch,k);printf(ftk=%d\n,f,k);已知字符a的ASCH十進(jìn)制代碼為97,則執(zhí)行上述程序段后輸出結(jié)果是A)因變量類型與格式描述符的類型不匹配輸出無(wú)定值B)輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值C)a,97,12k=12D)a,97,k=122.2007年9月試題分析(15)若在定義語(yǔ)句:inta,b,c,*p=&c;之后,接著執(zhí)行以下選項(xiàng)中的語(yǔ)句則能正確執(zhí)行的語(yǔ)句是A)scanf(A)scanf(n%d",a,b,c);C)scanf(,,%d,,,p);(18)有以下程序段B)scanf(,'%d%d%d,',a,b,c);D)scanf(,,%d,',&p);intj;floaty;charname[50];scanf(,,%2d%f%s,',&j,&y,name);當(dāng)執(zhí)行上述程序段,從鍵盤上輸入555667777abc后,y的值為A)55566.0B)566.0 C)7777.0D)566777.0填空(6)執(zhí)行以下程序時(shí)輸入1234567<CR>,則輸出結(jié)果是[6】。#include<stdio.h>main(){inta=l,b;scanf(,,%2d%2d",&a,&b);printf("%d%d\n*',a,b);3.2007年4月試題分析(16)設(shè)變量均已正確定義,若要通過(guò)scan(M%d%c%d%c,,,&al,&cl,&a2,&c2);語(yǔ)句為變量al和a2賦數(shù)值10和20,為變量cl和c2賦字符X和Y。以下所示的輸入形式中正確的是(注:□代表空格字符)(D)A)IOdXdZOoY〈回車〉 B)10dX20dY〈回車〉C)10aX(回車〉 D)10X〈回車〉20nY〈回車〉 20Y〈回車〉填空(6)執(zhí)行以下程序后的輸出結(jié)果是―-main(){inta=10;a=(3*5,a+4);printf(Ma=%d\n,,,a);第三章選擇結(jié)構(gòu).教學(xué)重點(diǎn)、難點(diǎn)知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)關(guān)系運(yùn)算符及優(yōu)先次序0-140%簡(jiǎn)單識(shí)記關(guān)系表達(dá)式0-150%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)邏輯運(yùn)算符及優(yōu)先級(jí)1-250%簡(jiǎn)單識(shí)記邏輯表達(dá)式1-250%簡(jiǎn)單,屬重點(diǎn)識(shí)記知識(shí)點(diǎn)if語(yǔ)句的幾種形式1-2100%簡(jiǎn)單識(shí)記if語(yǔ)句的嵌套1-2100%難度適中,重點(diǎn)掌握條件運(yùn)算符0-1100%難度適中,重點(diǎn)掌握switch語(yǔ)句2-4100%簡(jiǎn)單,重點(diǎn)掌握重點(diǎn)理解語(yǔ)句標(biāo)號(hào)0-110%偏難,不是重點(diǎn)goto1-210%簡(jiǎn)單識(shí)記—.教學(xué)內(nèi)容1.關(guān)系運(yùn)算與邏輯運(yùn)算1.1邏輯值假(零)真(非零值)假(零)關(guān)系運(yùn)算符及其表達(dá)式<<=>>===!=關(guān)系運(yùn)算符優(yōu)先級(jí)別低于算術(shù)運(yùn)算符,高于賦值運(yùn)算符。(<<=>>=)優(yōu)先級(jí)別高于(=!=)如:a>b+c等價(jià)于a>(b+c)a==b<c等價(jià)于a==(b<c)a=b<c等價(jià)于a=(b<c)4=4表達(dá)式的值為“真4=4表達(dá)式不合法關(guān)系表達(dá)式的值只有1和0,其中1表示“真”,0表示“假”。邏輯運(yùn)算符及其表達(dá)式&&邏輯“與”||邏輯“或”!邏輯“非”優(yōu)先級(jí)別:!》&&》||運(yùn)算規(guī)則:邏輯&&:遇假則假邏輯||:遇真則真邏輯!:真假互換邏輯表達(dá)式的值:1(真)、0(假)例如:3>4結(jié)果是:03&&4結(jié)果是:1!3&&4結(jié)果是:00||3結(jié)果是:1注意:在求解邏輯與(&&)表達(dá)式時(shí),若&&運(yùn)算符左邊表達(dá)式的值為0(假),則不再進(jìn)行&&右邊表達(dá)式的運(yùn)算,且將整個(gè)&&表達(dá)式的值定為0;在求解邏輯或(||)表達(dá)式時(shí),若||左邊表達(dá)式的值為非0值(真),則不再進(jìn)行||右邊表達(dá)式的運(yùn)算,且將整個(gè)邏輯||表達(dá)式的值定為1(真)。
2.if語(yǔ)句2.1.if語(yǔ)句格式:2)if(表達(dá)式)
語(yǔ)句1;2)if(表達(dá)式)
語(yǔ)句1;else語(yǔ)句2;稱為:全if 單if注意:if后的表達(dá)式必須用()括起,else后沒有表達(dá)式。if和else都只能控制緊跟它的一條語(yǔ)句,若要控制多條語(yǔ)句,必須用一對(duì)(}括起構(gòu)成一條復(fù)合語(yǔ)句。2.2執(zhí)行方式:2.21if語(yǔ)句的執(zhí)行方式:首先判斷表達(dá)式的值是否為“真”,若“真”,則執(zhí)行語(yǔ)句部分。如果表達(dá)式的值為“假”,則“跳過(guò)”語(yǔ)句部分執(zhí)行if語(yǔ)句后面的其它語(yǔ)句。2.22if-else語(yǔ)句的執(zhí)行方式:首先判斷表達(dá)式的值是否為“真”,若“真”,則執(zhí)行語(yǔ)句部分。如果表達(dá)式的值為“假”,則執(zhí)行else語(yǔ)句后面的語(yǔ)句。例1:main。{intm=5;if(m++>5)printf(um=%d,\m);elseprintf("m=%cT,m—);}例2:main(){intm=5;if(-H-m>5)printf(um=%d,\m);elseprintf("m=%d\ii'',m-);printf("m=%d",m);2.3if語(yǔ)句的嵌套if(表達(dá)式1)if(表達(dá)式2)語(yǔ)句1;else 語(yǔ)句2;elseif(表達(dá)式3)語(yǔ)句3;else 語(yǔ)句4;else總是與前面最近的且未配對(duì)的if語(yǔ)句配對(duì),組成一對(duì)if-else語(yǔ)句。if(表達(dá)式1)if(表達(dá)式2)語(yǔ)句1;elseif(表達(dá)式3)語(yǔ)句2;else 語(yǔ)句3;第一個(gè)else語(yǔ)句有的同學(xué)會(huì)把它誤以為和第一個(gè)if配對(duì),但是實(shí)際的情況是和第二個(gè)if語(yǔ)句配對(duì),即:if(表達(dá)式1)if(表達(dá)式2)語(yǔ)句1;elseif(表達(dá)式3)語(yǔ)句2;else 語(yǔ)句3;例1.請(qǐng)分析下列程序的輸出結(jié)果。main(){ints=l;t=l;if(a>0)s=s+l;if(a>b)t=s+l;elseif(a==b)t=s;elset=2*s;printf(u%d\n^t);}若運(yùn)行時(shí)輸入510回車,則程序的執(zhí)行結(jié)果是?main(){intsanfC6%d%d9;&a,&b);s=l;t=l;if(a>0){s=s+l;if(a>b)t=s+l;}elseif(a==b)t=s;elset=2*s;printf("%d\n'',t);}若運(yùn)行時(shí)輸入510回車,則輸出結(jié)果是?例2.分析下列程序的輸出結(jié)果main(){inta=4,b=3,c=5,t=0;if(a<b)t=a;a=b;b=t;if(a<c)t=a;a=c;c=t;printf(u%d%d%d\n'',a,b,c);}main(){inta=4,b=3,c=5,t=0;if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}printf(u%d%d%d\n,\a,b,c);}聯(lián)想交換的思想:若要交換a和b的值,通常的做法是:{t=a;a=b;b=t;}3.條件運(yùn)算符和條件表達(dá)式條件運(yùn)算符:?:是唯一一個(gè)三目運(yùn)算符。優(yōu)先級(jí)別高于賦值運(yùn)算,結(jié)合方向自右向左。格式:表達(dá)式1表達(dá)式2:表達(dá)式3執(zhí)行方式:先求“表達(dá)式1”的值,若其值為“真。求出“表達(dá)式2”的值作為整個(gè)條件表達(dá)式的值;若其值為“假。求出“表達(dá)式3”的值作為整個(gè)表達(dá)式的值。例如:max=a>b?a:b;相當(dāng)于:if(a>b)max=a;elsemax=b;a>b?a:c>d?c:d相當(dāng)于a>b?a:(c>d?c:d)注意:表達(dá)式1、2、3的值不要求具有相同的類型,最后結(jié)果的類型為表達(dá)式2、3中較高類型的一種。如:(x=6)>(y=5)?l:l.5表達(dá)式的值是1?0而不是1。4.switch語(yǔ)句格式:switch(表達(dá)式){case 常量表達(dá)式1:語(yǔ)句1;break;case 常量表達(dá)式2:語(yǔ)句2;break;case 常量表達(dá)式n:語(yǔ)句n;break;default :語(yǔ)句n+1;break;)說(shuō)明:switchxcase、default、break都是關(guān)鍵字?;ɡㄌ?hào)里面的語(yǔ)句叫做switch語(yǔ)句體。Switch語(yǔ)句體中可以沒有break語(yǔ)句和default部分。Switch語(yǔ)句的圓括號(hào)中表達(dá)式的值必須是整型或是字符型,不能為實(shí)型。case后的表達(dá)式可以是求得整型量的常量表達(dá)式,但是常量表達(dá)式中不能含有變量。(3)執(zhí)行Switch語(yǔ)句時(shí),首先計(jì)算Switch后圓括號(hào)的表達(dá)式的值,然后將這個(gè)值與語(yǔ)句體中case后的常量表達(dá)式的值相比較,如果某個(gè)常量表達(dá)式的值與之相等,則執(zhí)行該case后的語(yǔ)句塊;如果沒有任何一個(gè)常量表達(dá)式的值與之相等,則執(zhí)行default后的語(yǔ)句塊。(4)在執(zhí)行的時(shí)候如果遇到break語(yǔ)句,則跳出switch語(yǔ)句。如果執(zhí)行完一個(gè)case或者default語(yǔ)句塊后沒有遇到break,則繼續(xù)順序往下執(zhí)行,知道遇到break語(yǔ)句或者語(yǔ)句體被執(zhí)行完畢為止。(5)default最多只能有一個(gè),通常出現(xiàn)在switch語(yǔ)句的最后部分,但也可以出現(xiàn)在case之間或所有的case之前。四.試題分析1.2008年4月試題分析:(17)已知字母A的ASCH代碼值為65,若變量kk為char型,以下不能正確判斷出kk中的值為大寫字母的表達(dá)式是A)kk>=,A,&?&kk<=,Z,B)!(kk>=,A,||kk<=,Z,)C)(kk+32)>=,a,&&(kk+32)<=,z,D)isalpha(kk)&&(kk<91)(18)當(dāng)變量c的值不為2、4、6時(shí),值也為“真”的表達(dá)式是A)(c==2)11(c=4)||(c=6)B)(c>=2&&c<=6)||(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&&c<=6)&&(c%2!=l)(19)若變量已正確定義,有以下程序段inta=3,b=5,c=7;if(a>b)a=b;c=a;if(c!=a)c=b;printf(n%d,%d,%d\n,\a,b,c);其輸出結(jié)果是A)程序段有語(yǔ)法錯(cuò)B)3,5,3C)3,5,5D)3,5,7(20)有以下程序#include<stdio.h>main(){intx=l,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;b++;break;a++;b++;break;a++;b++;}printf(“a=%d,b=%d\n”,a,b);I程序的運(yùn)行結(jié)果是A)a=l,b=0B)a=2,b=2C)a=l,b=lD)a=2,b=l2.2007年9月試題分析(20)有以下計(jì)算公式若程序前面已在命令行中包含math.h文件,不能夠正確計(jì)算上述公式的程序段是A)if(x>=0)y=sqrt(x); B)y=sqrt(x);elsey=sqrt(-x); if(x<0)y=sqrt(-x);C)if(x>=0)y=sqrt(x); D)y=sqrt(x>=0?x:-x);if(x<0)y=sqrt(-x);(21)設(shè)有條件表達(dá)式:(EXP)?i++:j-,則以下表達(dá)式中與(EXP)完全等價(jià)的是A)(EXP=0)B)(EXP!=0)C)(EXP=1)D)(EXP!=1)(23)已有定義:charc;,程序前面已在命令行中包含ctype.h文件。不能用于判斷c中的字符是否為大寫字母的表達(dá)式是A)isupper(c) B),A,<=c<=,Z,C)'A'v=c&&cv=Z D)c<=(,z,-32)&&(,a,-32)<=c(7)以下程序的功能是:輸出a、b、c三個(gè)變量中的最小值。請(qǐng)?zhí)羁铡?include<stdio.h>main(){inta,b,c,tl,t2;scanf(n%d%d%dn,&a,&b,&c);tl=a<b?【7];t2=c<tl?【8];printf(n%d\nn,t2);3.2007年4月試題分析(20)設(shè)變量x和y均已正確定義并賦值,以下if語(yǔ)句中,在編譯時(shí)將產(chǎn)生錯(cuò)誤信息的是(C)A)if(x++); B)if(x>y&&y!=0);C)if(x>y)x-- D)if(y<0){;}elsey++; elsex++;(21)以下選項(xiàng)中,當(dāng)x為大于1的奇數(shù)時(shí),值為0的表達(dá)式()A)x%2=lB)x/2C)x%2!=0D)x%2=0(22)以下敘述中正確的是(C)break語(yǔ)句只能用于switch語(yǔ)句體中continue語(yǔ)句的作用是:使程序的執(zhí)行流程跳出包含它的所有循環(huán)break語(yǔ)句只能用在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)D)在循環(huán)體內(nèi)使用break語(yǔ)句和continue語(yǔ)句的作用相同(23)有以下程序()main(){intk=5,n=0;do{switch(k){easel:case3:n+=l;break;default;n=0;k";easel:case4:n+=2;k—;break;)printf(M%d,,,n);Jwhile(k>0&&n<5);}程序運(yùn)行后的輸出結(jié)果是A)235B)0235C)02356D)2356第四章循環(huán)結(jié)構(gòu)一.教學(xué)重點(diǎn)、難點(diǎn)知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)while語(yǔ)句2-3100%重點(diǎn)理解重點(diǎn)掌握do...while語(yǔ)句2-3100%重點(diǎn)理解重點(diǎn)掌握f(shuō)or語(yǔ)句5-7100%重點(diǎn)理解重點(diǎn)掌握循環(huán)嵌套4-6100%重點(diǎn)理解重點(diǎn)掌握循環(huán)比較0-120%簡(jiǎn)單識(shí)記break語(yǔ)句2-370%難度適中,重點(diǎn)掌握continue語(yǔ)句2-350%難度適中,重點(diǎn)掌握注意:循環(huán)在這一章中的知識(shí)點(diǎn)比較少,但是它貫穿了整個(gè)的C語(yǔ)言的章節(jié)中,老師在教學(xué)中一定要把它它當(dāng)做重點(diǎn)中的重點(diǎn)來(lái)抓!二.教學(xué)內(nèi)容.while語(yǔ)句格式:while(表達(dá)式)循環(huán)體語(yǔ)句I注意:Ll.while是C語(yǔ)言的關(guān)鍵字。while后必須有小括號(hào)將表達(dá)式括起,里面的表達(dá)式是C語(yǔ)言中任意的表達(dá)式,作用是控制循環(huán)。其值為“真”(非0)則執(zhí)行循環(huán)體語(yǔ)句,否則跳出while循環(huán)。L3.while語(yǔ)句也只能控制緊跟它的一條語(yǔ)句。若需要控制多條語(yǔ)句,必須用{)括起,構(gòu)成一條復(fù)合語(yǔ)句。圓括號(hào)內(nèi)的表達(dá)式不能省略。循環(huán)體中的可以由一條空語(yǔ)句構(gòu)成,表示循環(huán)體部分不做任何的操作。如:while(表達(dá)式)i_/*;是循環(huán)體,它是一條空語(yǔ)句*/例如:分析下列程序的輸出結(jié)果。執(zhí)行過(guò)程:(1)計(jì)算圓括號(hào)中表達(dá)式的值。若為非0則執(zhí)行循環(huán)體語(yǔ)句,若為0則跳出循環(huán)。(2)執(zhí)行完循環(huán)體語(yǔ)句后重復(fù)過(guò)程(Domain(){inti=l,sum=0;while(i<=100){sum=sum+I;i++;printf(wsum=%d,,,sum);這是學(xué)習(xí)C語(yǔ)言基礎(chǔ)循環(huán)的最好的練習(xí),老師讓學(xué)生練習(xí)的時(shí)候可以把i控制在10以內(nèi),讓學(xué)生知道什么是循環(huán)..d0-while語(yǔ)句格式:do循環(huán)體while(表達(dá)式注意:l.l.do是C語(yǔ)言的關(guān)鍵字,需要和while一起搭配使用。while后必須有小括號(hào)將表達(dá)式括起,里面的表達(dá)式是C語(yǔ)言中任意的表達(dá)式,作用是控制循環(huán)。其值為“真”(非0)則執(zhí)行循環(huán)體語(yǔ)句,否則跳出while循環(huán)。while語(yǔ)句也只能控制緊跟它的一條語(yǔ)句。若需要控制多條語(yǔ)句,必須用{)括起,構(gòu)成一條復(fù)合語(yǔ)句。圓括號(hào)內(nèi)的表達(dá)式不能省略。循環(huán)體中的可以由一條空語(yǔ)句構(gòu)成,表示循環(huán)體部分不做任何的操作。如:do{;}while(表達(dá)式)j_/*;是循環(huán)體,它是一條空語(yǔ)句*/由于do-while循環(huán)結(jié)構(gòu)整個(gè)語(yǔ)法上也是C語(yǔ)言語(yǔ)句,因此最后的分號(hào)必不可少,它同樣表示語(yǔ)句的結(jié)束。執(zhí)行過(guò)程:(1)執(zhí)行循環(huán)體語(yǔ)句。(2)計(jì)算圓括號(hào)中表達(dá)式的值。若為非0則重復(fù)(1),否則跳出循環(huán)。.for語(yǔ)句格式:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)循環(huán)體for是C語(yǔ)言的關(guān)鍵字.or之后的圓括號(hào)內(nèi)一共有三個(gè)表達(dá)式,以分號(hào)“/隔開。一般情況下,表達(dá)式1的作用是賦初值;表達(dá)式2的作用是控制循環(huán);表達(dá)式3的作用是賦值。for語(yǔ)句也只能控制緊跟它的一條語(yǔ)句。若需要控制多條語(yǔ)句,必須用{}括起,構(gòu)成一條復(fù)合語(yǔ)句。表達(dá)式1、2、3均可以省略,若省略表達(dá)式2,則認(rèn)為表達(dá)式2的值始終為真。而兩個(gè)分號(hào)絕不能省。行過(guò)程:(1)計(jì)算表達(dá)式1;(2)計(jì)算表達(dá)式2,若其值為非0,轉(zhuǎn)步驟(3);若其值為0則轉(zhuǎn)步驟(5);(3)執(zhí)行一次foi■循環(huán)體。(4)計(jì)算表達(dá)式3,轉(zhuǎn)步驟(2)?(5)結(jié)束循環(huán),執(zhí)行for語(yǔ)句后面的語(yǔ)句。.循環(huán)結(jié)構(gòu)的嵌套在一個(gè)循環(huán)體內(nèi),又包含另一個(gè)循環(huán)。三種循環(huán)語(yǔ)句可以相互嵌套。main(){intij;for(i=l;i<3;i++)卜4;jH) |printf("\ni=%dj=%d'',i^lprintf("\ni=%d,i=%d”,i,i);for(i=l;;i++)printf(“%d”,i);/*表達(dá)式2的值始終為真,這是死循環(huán)*/.break和continue語(yǔ)句break語(yǔ)句用于結(jié)束循環(huán)或switch結(jié)構(gòu)。continue語(yǔ)句用于結(jié)束本次循環(huán),跳過(guò)循環(huán)中continue后尚未執(zhí)行的語(yǔ)句,繼續(xù)進(jìn)行下一次循環(huán)條件的判斷。注意:break語(yǔ)句只能控制直接包含它的switch結(jié)構(gòu)或循環(huán)。continue語(yǔ)句只能控制直接包含它的循環(huán)。例1:main(){inti,sl=0,s2=0,s3=0;for(i=l;i<=10;i++){switch(i%5){casel:sl++;case2:s2++;break;case3:s3++;contiune;}sl++;}printf(M%d,%d,%dM,sl,s2,s3);}例2:把1?100之間能被4整除的數(shù)輸出。(老師一定要教會(huì)學(xué)生這中方法!)main(){inti;for(i=l;i<=100;i++)(if(i%4!=0)continue;printf(w%3d",i);三.試題分析1.2008年4月試題分析(21)有以下程序#include<stdio.h>main(){intx=8;for(;x>0;x—){if(x%3){printf(u%d,w,x—);continue;}x);程序的運(yùn)行結(jié)果是A)7,4,2B)8,7,5,2C)9,7,6,4D)8,5,4,2(22)以下不構(gòu)成無(wú)限循環(huán)的語(yǔ)句或者語(yǔ)句組是A)n=0;B)n=0;do{++n;}while(n<=0);while⑴{n++;}C)n=10;D)for(n=0,i=l;;i++)n+=i;while(n);{n—;}(31)有以下程序#includc<stdio.h>main(){ints[12]={l,23,4,4,3,2,l,l,l,2,3},c[5]={0},i;for(i=0;i<12;i++)c[s[i)]++;for(i=l;i<5;i++)printf("%d",c[i]);printf(“\n”);)程序的運(yùn)行結(jié)果是A)1234B)2344C)4332D)1123(32)有以下程序#include<stdio.h>voidfun(int*s,intnl,intn2){intij,t;?=nl;j=n2;while(i<j){t=s[i];s[i]=s[j]}main(){inta[10]={l,2,3,4,5,6,7,8,9,0},k;fun(a,0,3);fun(a,4,9);fun(a,0,9);for(k=0;k<10;k++)printfr%d,9,a|k]);printf(“\n”);}程序運(yùn)行的結(jié)果是A)0987654321B)4321098765C)5678901234D)0987651234(33)有以下程序#include<stdio.h>#include<string.h>voidfun(char*s|],intn){char*t;intij;for(i=0;i<n-l;i-H-)for(j=i+l;j<n;j++)if(strlen(s|il)>strlen(s[j])){t=s|i|;s|i]=s[j];s[j]=t;}mainO{char*s§[]={“bcc”,“bbcc”,”xy'',"aaaacc"Jaabcc"};fun(ss,5);printf(w%s,%s\nw,ss[0],ss[4]);}程序的運(yùn)行結(jié)果是A)xy,aaaaccB)aaaacc,xyC)bcc,aabccD)aabcc,bcc(35)有以下程序#include<stdio.h>voidfun(char*a,char*b){while(*a='*')a++;while(*b=*a){b++;a-H-;}Imain(){char*s=^****a*b****,\t|80|;fun(s9t);puts(t);程序的運(yùn)行結(jié)果是A)*****a*bB)a*bC)a*b****D)ab(8)若有定義:intk;,以下程序段的輸出結(jié)果是[8】。for(k=2;k<6;k++,k++)printf(w##%d,,,k);(9)以下程序段的定義語(yǔ)句中,x[l]的初值是[9】,程序運(yùn)行后輸出的內(nèi)容是【10】。#include<stdio.h>main(){intx[]={l,23,4,5,6,7,8,9,10,H,12,13,14,15,16),*p[4],i;for(i=0;i<4;i++){p|i)=&x[2*i+l|;printf(“%d'',p[i][O]);}printf("\n");2007年9月試題分析(19)若變量已正確定義,有以下程序段i=0;doprintf(*'%d,while(i++);printf("%d\n”,i);其輸出結(jié)果是A)0,0B)0,1C)1,1D)程序進(jìn)入無(wú)限循環(huán)(22)有以下程序#include<stdio.h>main(){inty=9;for(;y>0;y-)if(y%3==0)printf(“%d”,-y);程序的運(yùn)行結(jié)果是A)741B)963C)852D)875421(24)有以下程序#include<stdio.h>main(){intij,m=55;for(i=l;i<=3;i++)for(j=3;j<=i;j++)m=m%j;printf(M%d\nm);程序的運(yùn)行結(jié)果是A)0 B)1 C)2 D)3(34)有以下程序#include<stdio.h>voidfun(int*a,intn)/*fun函數(shù)的功能是將a所指數(shù)組元素從大到小排序*/{intt,i,j;for(i=0;i<n-l;i++)for(j=i+l;j<n;j++)if(a[i]<a[j]){t=a[i];a[il=a[j];a[j]=t;}}main(){intc[10)={l,2,3,4,5,6,7,8,9,0},i;fun(c+4,6);for(i=0;i<10;i++)printf("%d,",c|i]);printf(,'\n,');)程序的運(yùn)行結(jié)果是A)1,2,3,4,5,6,7,8,9,0, B)0,9,8,7,6,5,1,2,3,4,C)0,9,8,7,6,5,4,3,2,l, D)1,23,4,9,8,7,6,5,0,(8)以下程序的輸出結(jié)果是[9Lo#include<stdio.h>main(){intn=12345,d;while(n!=0){d=n%10;printf(,,%du,d);n/=10;}}(9)有以下程序段,且變量已正確定義和賦值for(s=L0,k=l;k<=n;k++)s=s+1.0/(k*(k+l));printf("s=%f\n\n",s);請(qǐng)?zhí)羁眨瓜旅娉绦蚨蔚墓δ芘c之完全相同s=1.0;k=l;while(【10]){s=s+1.0/(k*(k+l));【11];}printf(,'s=%f\n\n,',s);(10)以下程序的輸出結(jié)果是【12】o#include<stdio.h>main(){inti;for(i='a';i<T; printf(n%cn,i-faf+'A');printf(M\nn);}2007年4月試題分析(22)以下敘述中正確的是(C)break語(yǔ)句只能用于switch語(yǔ)句體中continue語(yǔ)句的作用是:使程序的執(zhí)行流程跳出包含它的所有循環(huán)break語(yǔ)句只能用在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)D)在循環(huán)體內(nèi)使用break語(yǔ)句和continue語(yǔ)句的作用相同(23)有以下程序()main(){intk=5,n=0;do{switch(k){easel:case3:n+=l;break;default;n=0;k—;case2:case4:n+=2;k—;break;}printf(“%d”,n);}whlle(k>0&&n<5);}程序運(yùn)行后的輸出結(jié)果是A)235B)0235C)02356D)2356(24)有以下程序mian(){inti,j;for(i=l;i<4;i++){for(j=i;j<4;j++)printf("%d*%d=%d”,i,j,i*j);printf("\n");程序運(yùn)行后的輸出結(jié)果是()A)1*1=11*2=21*3=3B)1*1=11*2=21*3=32*1=22*2=4 2*2=42*3=6
3*1=3C)1*1=13*1=3C)1*1=11*2=22*2=41*3=32*3=6D)1*1=12*1=22*2=43*3=9 3*1=33*2=63*3=9(7)當(dāng)執(zhí)行以下程序時(shí),輸入1234567890〈回車〉,則其中while循環(huán)體將執(zhí)行一次。#include<stdio.h>main(){charch;While((ch=getchar())==,0,)printf("#");第五章字符型數(shù)據(jù)位運(yùn)算一.教學(xué)內(nèi)容.字符型數(shù)據(jù)1」字符常量:用一對(duì)單引號(hào)括起的一個(gè)字符。例如:,、丁6,是合法的字符型常量。“a”,、b\A,5,U2,都是不合法的字符型常量。轉(zhuǎn)義字符常量:必須以一個(gè)反斜杠“\"開頭.常見的轉(zhuǎn)義字符見表5-1。\n:回車換行\(zhòng)t:橫向跳格\v:豎向跳格\b:退格\r:回車 \f:換頁(yè)\ddd:ddd表示最多可以有三位8進(jìn)制數(shù)。\xhh:hh表示最多可以有二位16進(jìn)制數(shù)。注意:三位8進(jìn)制數(shù)不一定以0開頭,只要是0?7之間的數(shù)字即可。例:下列字符常量中合法的是()A.\027B.''028'C.,\xl2,D.''0xlf'E.,\1234,F.'\xffh'G'AB'H.,123,J."A"K.,\xf,例:下列字符常量中合法的是()A.'/'B.'/t' C.''' D.'"'E.'\b'F.T G'\\' H.7Z, l;\n字符型變量關(guān)鍵字:char,字符型變量在內(nèi)存中占1字節(jié)。例:chara=,5,;“字符的ASCII碼值是97W字符的ASCII碼值是65同一字母的大小寫之差是32,那么我們要把小寫字母變成大寫字母就相應(yīng)的字母減去32即可,同樣大寫字母加上32后就變成了與其相對(duì)應(yīng)的小寫字母。數(shù)字,0,?,9,對(duì)應(yīng)的ASCII碼值是48-57o.字符數(shù)據(jù)的輸入輸出Z.l.putchar()和printf()格式:putchar(字符),printf("%c",ch);功能:輸出一個(gè)字符,但不輸出單引號(hào)。其中“字符”可以是一切合法的字符型或整型數(shù)據(jù)。它會(huì)自動(dòng)將整型數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的字符輸出。putchar('a');a printf("%c",'a');aputchar(65);A printf(tt%c,,,65);Acharch=,g';putchar(ch);輸出:gcharch='g';printf("%c",ch);輸出:ggetchar()格式:getchar()功能:接收一個(gè)從鍵盤輸入的字符。注意:1.它可以接收從鍵盤上輸入的任何字符,包括回車符、空格符等。2.任何輸入都是在回車后方按順序送入內(nèi)存中,即才被函數(shù)接收。如:chara,b;a=getchar();b=getchar();若輸入:1〈回車〉則變量a的值為字符變量b的值為回車符。2.3.scanf函數(shù)輸入數(shù)據(jù):在進(jìn)行字符數(shù)據(jù)輸入的時(shí)候,空格符、回車、橫向跳格都是合法有效的字符,都將被讀入并賦值給相應(yīng)的變量。3.位運(yùn)算(詳細(xì)的見課本52頁(yè))二.試題分析1.2008年試題分析(13)以下選項(xiàng)中不屬于字符常量的是A)'CB)nCMC)\xCC(rD)'\072'(16)有以下程序段charch;intk;ch='a';k=12;printf(n%c,%d/\ch,ch,k);printf(,,k=%d\n,\k);已知字符a的ASCH十進(jìn)制代碼為97,則執(zhí)行上述程序段后輸出結(jié)果是A)因變量類型與格式描述符的類型不匹配輸出無(wú)定值B)輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值C)a,97,12k=12D)a,97,k=12(17)已知字母A的ASCII代碼值為65,若變量kk為char型,以下不能正確判斷出kk中的值為大寫字母的表達(dá)式是A)kk>='A'&&kkv='Z'B)!(kk>='A'IIkk〈='Z')C)(kk+32)>=,a,&&(kk+32)<=,z,D)isalpha(kk)&&(kk<91)(38)變量a中的數(shù)據(jù)用二進(jìn)制表示的形式是01011101,變量b中的數(shù)據(jù)用二進(jìn)制表示的形式是11110000。若要求將a的高4位取反,低4位不變,所要執(zhí)行的運(yùn)算是A)aAbB)a|bC)a&bD)a?42.2007年9月試題分析(23)已有定義:charc;,程序前面已在命令行中包含ctvpe.h文件。不能用于判斷c中的字符是否為大寫字母的表達(dá)式是A)isupper(c) B),A,<=c<=*Z,C)'AY=c&&c<=Z D)c<=fz,-32)&&(,a,-32)<=c(26)已知字符,A,的ASCII代碼值是65,字符變量cl的值是,A,,c2的值是,D\執(zhí)行語(yǔ)句printf(”%d,%d”,cl,c2-2);后,輸出結(jié)果是A)A,BB)A,68 C)65,66 D)65,68#indude<stdio.h>main(){inti;for(i=,a*;i<T;i++,i++)printf(M%cM,i-'a'+'A');printf(M\nn);2007年4月試題分析(25)以下合法的字符型常量是()A)<\xl3,B)'\018'C)'65'D)'\n'(27)已知大寫字母A的ASCII碼是65,小寫字母aASCU碼是97,以下不能將變量c中大寫字母轉(zhuǎn)換為對(duì)應(yīng)小寫字母的語(yǔ)句是()A)c=(c-A)%26+'a' B)c=c+32C)c=c-'A'+'a' D)c=('A'+c)%26-'a'(7)當(dāng)執(zhí)行以下程序時(shí),輸入1234567890〈回車〉,則其中while循環(huán)體將執(zhí)行一次。#include<stdio.h>main(){charch;While((ch=getchar())='0')printf("#");第六章函數(shù)一.教學(xué)重點(diǎn)、難點(diǎn)知識(shí)點(diǎn)所占分值考核幾率專家點(diǎn)評(píng)庫(kù)函數(shù)1-260%簡(jiǎn)單,重點(diǎn)識(shí)記知識(shí)點(diǎn)函數(shù)的定義0-150%簡(jiǎn)單,重點(diǎn)識(shí)記知識(shí)點(diǎn)形參和實(shí)參及函數(shù)調(diào)用2-380%難度適中,重點(diǎn)理解重點(diǎn)掌握函數(shù)調(diào)用的一般形式和調(diào)用方式2-390%偏難,重點(diǎn)掌握重點(diǎn)理解函數(shù)的說(shuō)明及其位置0-160%簡(jiǎn)單識(shí)記函數(shù)的嵌套調(diào)用1-390%偏難,重點(diǎn)掌握重點(diǎn)理解函數(shù)的遞歸調(diào)用1-280%偏難,重點(diǎn)掌握重點(diǎn)理解二.教學(xué)內(nèi)容函數(shù)是C程序的基本單位。.函數(shù)的定義:函數(shù)返回值的類型名函數(shù)名(類型名1形參名1,類型名2形參名2,….)(說(shuō)明部分語(yǔ)句部分}說(shuō)明:一個(gè)C程序可以由一個(gè)或多個(gè)源程序文件組成。一個(gè)源程序文件可以由一個(gè)或多個(gè)函數(shù)組成。C程序〉源程序〉函數(shù)函數(shù)返回值的類型名缺省時(shí),返回值類型默認(rèn)為int型,而不是沒有返回值。若沒有返回值的時(shí)候應(yīng)該為void.函數(shù)名是用戶自定義標(biāo)識(shí)符,唯一且獨(dú)有,不得與同一程序中其他函數(shù)相同。主函數(shù)的函數(shù)名必須是main。函數(shù)后面的括號(hào)是必不可少的,括號(hào)中的為形式參數(shù)列表。形式參數(shù)用于數(shù)據(jù)的傳遞,同樣是用戶標(biāo)識(shí)符。在同一函數(shù)內(nèi)形式參數(shù)必須是唯一的。如果函數(shù)不帶形式參數(shù),則形式參數(shù)列表可以省略。函數(shù)體部分的一對(duì)花括號(hào)必不可少。函數(shù)之間的關(guān)系是相互平行、獨(dú)立
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026吉林松原市生態(tài)環(huán)境局所屬事業(yè)單位選拔10人參考考試題庫(kù)及答案解析
- 2026山東青島西海岸新區(qū)部分事業(yè)單位招聘8人筆試備考試題及答案解析
- 飛機(jī)氣源系統(tǒng)培訓(xùn)課件
- 2026浙江杭州市廣播電視監(jiān)測(cè)中心招聘編外工作人員1人參考考試題庫(kù)及答案解析
- 2026山東聊城市眼科醫(yī)院引進(jìn)博士研究生3人備考考試試題及答案解析
- 全場(chǎng)珠寶活動(dòng)策劃方案(3篇)
- 獸醫(yī)質(zhì)量管理制度圖片(3篇)
- 分管工程的管理制度(3篇)
- 國(guó)家衛(wèi)健委管理制度(3篇)
- 涂娃娃活動(dòng)策劃方案(3篇)
- 2025-2030半導(dǎo)體缺陷檢測(cè)設(shè)備行業(yè)運(yùn)營(yíng)模式與供需趨勢(shì)預(yù)測(cè)研究報(bào)告
- GB/T 46755-2025智能紡織產(chǎn)品通用技術(shù)要求
- 2023年廣西區(qū)考公務(wù)員錄用考試《行測(cè)》真題及答案解析
- GB/T 23444-2024金屬及金屬?gòu)?fù)合材料吊頂板
- 應(yīng)用麻醉鎮(zhèn)痛技術(shù)施行負(fù)壓吸宮術(shù)技術(shù)規(guī)范
- 國(guó)家電網(wǎng)公司招聘高校畢業(yè)生應(yīng)聘登記表
- 見證取樣手冊(cè)(智能建筑分部)
- DZ∕T 0353-2020 地球化學(xué)詳查規(guī)范(正式版)
- 醫(yī)療衛(wèi)生輿情課件
- 2023-2024學(xué)年宜賓市高一數(shù)學(xué)上學(xué)期期末質(zhì)量監(jiān)測(cè)試卷附答案解析
- 實(shí)用的標(biāo)準(zhǔn)氧化還原電位表
評(píng)論
0/150
提交評(píng)論