-
簡(jiǎn)介:19春學(xué)期C語(yǔ)言及程序設(shè)計(jì)在線(xiàn)作業(yè)3試卷總分100得分100一、單選題共15道試題共75分1下面正確的字符常量是AX17B80CD“““N“““正確答案C2有定義INTA34輸入其3行2列元素的正確語(yǔ)句為()ASCANF“D”A32B“SCANF“D”A21“C“SCANF“D”A21“D“SCANF“D”A21“正確答案C3若有定義INTX7FLOATA25B47則表達(dá)式AX3INTAB的值是()。A25B275C35D0正確答案A4以下程序段執(zhí)行后輸出結(jié)果()。INTIFI1IPRINTF“D”IA1B2C3D死循環(huán)正確答案D5為了避免嵌套的條件語(yǔ)句IFELSE的二義性,C語(yǔ)言規(guī)定ELSE與()是正確的。A縮排位置相同的IFB其之前最近的IFC其之后IFD同一行上的IF正確答案B6下列關(guān)于SWITCH語(yǔ)句和BREAK語(yǔ)句的結(jié)論中,只有()是正確的。正確答案B12以下能對(duì)二維數(shù)組A進(jìn)行正確初始化的語(yǔ)句是()。AINTA2101523B“INTA3123456“C“INTA24123456“D“INTA310111“正確答案B13下面程序的運(yùn)行結(jié)果是()。C“TV0WILLN“PRINTF“D“STRLENCA14B3C9D字符串中有非法字符,輸出值不能確定正確答案B14有下列語(yǔ)句和賦值語(yǔ)句(1)STR”IAMABOY”(2)STR12”IAMABOY”(3)P”IAMABOY”(4)P”IAMABOY”下列說(shuō)法正確的是()A只有(1)、(2)正確B只有(3)、(4)正確C只有(1)、(3)、(4)正確D只有(3)正確正確答案B15執(zhí)行下列語(yǔ)句后,第一個(gè)輸出的值為()INCLUDESTDIOHDEFINEMDEFINENM1MAINPRINTF“DN”NA3B4C6D8正確答案A二、判斷題共5道試題共25分1已知S119S2“AB0CDEF“則執(zhí)行語(yǔ)句STRCPYS1S2后,變量S的內(nèi)容是不能確定。A錯(cuò)誤B正確正確答案A
下載積分: 5 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 4
大?。?0.02(MB)
子文件數(shù):
-
簡(jiǎn)介:西南大學(xué)網(wǎng)絡(luò)與繼續(xù)教育學(xué)院課程代碼9020學(xué)年學(xué)季20192單項(xiàng)選擇題單項(xiàng)選擇題1、若要求在、若要求在IFIF后一對(duì)圓括號(hào)中表示后一對(duì)圓括號(hào)中表示A不等于不等于0的關(guān)系的關(guān)系則能正確表示這一關(guān)系的表達(dá)式為則能正確表示這一關(guān)系的表達(dá)式為_(kāi)___________1A5PRINTF“DN“AA5PRINTF“DN“AELSEELSEPRINTF“DN“APRINTF“DN“A
下載積分: 8 賞幣
上傳時(shí)間:2024-03-15
頁(yè)數(shù): 26
大?。?0.16(MB)
子文件數(shù):
-
簡(jiǎn)介:C語(yǔ)言課程設(shè)計(jì)課程名稱(chēng)計(jì)算機(jī)高級(jí)語(yǔ)言課程設(shè)計(jì)(C)教師姓名本科生姓名本科生學(xué)號(hào)本科生專(zhuān)業(yè)所在院系類(lèi)別日期2、必須用鋼筆或圓珠筆批閱,用鉛筆閱卷無(wú)效;3、如有平時(shí)成績(jī),必須在上面評(píng)分表中標(biāo)出,并計(jì)算入總成績(jī)。
下載積分: 9 賞幣
上傳時(shí)間:2024-03-16
頁(yè)數(shù): 56
大?。?0.71(MB)
子文件數(shù):
-
簡(jiǎn)介:課程設(shè)計(jì)報(bào)告學(xué)院信息科學(xué)與工程學(xué)院專(zhuān)業(yè)計(jì)算機(jī)科學(xué)與技術(shù)(軟件外包)1、2、設(shè)計(jì)內(nèi)容及要求企業(yè)職工人事基本信息包括職工編號(hào)、姓名、性別、出生年份、職稱(chēng)(助工、工程師、高級(jí)工程師)、任現(xiàn)職年限、實(shí)發(fā)工資。系統(tǒng)的主要功能包括1創(chuàng)建職工人事基本信息文件,根據(jù)提示輸入職工的各項(xiàng)信息,將職工信息存儲(chǔ)到一個(gè)二進(jìn)制文件中。2增加職工人事基本信息,在原有職工人事基本信息文件的基礎(chǔ)上增加新的職工信息,要求保存至原文件,并提示用戶(hù)選擇是否繼續(xù)進(jìn)行添加操作。3刪除職工人事基本信息,提示用戶(hù)輸入要進(jìn)行刪除操作的職工編號(hào),如果在文件中有該信息存在,則將該編號(hào)所對(duì)應(yīng)的職工信息刪除,否則輸出提示信息,并提示用戶(hù)選擇是否繼續(xù)進(jìn)行刪除操作。4修改職工人事基本信息,提示用戶(hù)輸入要進(jìn)行修改操作的職工編號(hào),如果在文件中有該息存在,則提示用戶(hù)輸入要修改的選項(xiàng)(職稱(chēng)、任現(xiàn)職年限),結(jié)果保存至原文件,并提示用戶(hù)選擇是否繼續(xù)進(jìn)行修改操作。5按不同條件進(jìn)行查詢(xún)操作,輸出滿(mǎn)足條件的職工信息。1按職工編號(hào)查詢(xún),輸入一個(gè)編號(hào),輸出對(duì)應(yīng)的職工信息。2按姓名查詢(xún),輸入全名。6按不同條件對(duì)職工信息進(jìn)行統(tǒng)計(jì)工作。1統(tǒng)計(jì)各職稱(chēng)崗位的職工人數(shù)是多少,計(jì)算高級(jí)工程師的比例。2計(jì)算企業(yè)職工的平均實(shí)發(fā)工資,并輸出。3統(tǒng)計(jì)職工工資低于平均工資的人數(shù),并輸出他們的姓名和實(shí)發(fā)工資。3、設(shè)計(jì)思路該系統(tǒng)分為六大功能分別為創(chuàng)建、增加、刪除、修改、查詢(xún)、統(tǒng)計(jì),所以總體上先從界面部分定義了六個(gè)函數(shù),這些功能通過(guò)定義的函數(shù)一步步實(shí)現(xiàn)。每一個(gè)功能的實(shí)現(xiàn)通過(guò)字符數(shù)組的定義和使用以及各種函數(shù)的運(yùn)用來(lái)解決。4、設(shè)計(jì)結(jié)果及分析第一次寫(xiě)的程序雖然說(shuō)能運(yùn)行通過(guò),但是沒(méi)有把按不同條件統(tǒng)計(jì)職工信息以及刪除工作功能實(shí)現(xiàn),所以繼續(xù)重做,一遍一遍的改正,結(jié)果程序改的亂七八糟,而且出現(xiàn)了許多錯(cuò)誤,慢慢努力,總算勉強(qiáng)通過(guò)。5、總結(jié)VOIDTONGJIVOID統(tǒng)計(jì)信息函數(shù)VOIDJIEWEIVOID用于退出系統(tǒng)時(shí)的結(jié)束語(yǔ)言INTMAINVOIDFOUNDWHILE1MENU調(diào)用MENU函數(shù)顯示主菜單SCANF“D“輸入想選擇的功能FFLUSHSTDINSWITCH對(duì)進(jìn)行多分支選擇CASE1SYSTEM“CLS“LOOKBREAKCASE2SYSTEM“CLS“ADDBREAKCASE3SYSTEM“CLS“DELEBREAKCASE4SYSTEM“CLS“CHANGEBREAKCASE5SYSTEM“CLS“TONGJIBREAKCASE0SYSTEM“CLS“PRINTF“NT謝謝使用再見(jiàn)N“JIEWEIEXIT0DEFAULTSYSTEM“CLS“PRINTF“NT按鍵有誤,請(qǐng)重新選擇N“RETURN0功能顯示系統(tǒng)菜單參數(shù)無(wú)返回值無(wú)主要思路利用PRINTF函數(shù)輸出菜單VOIDMENUVOIDPRINTF“N“PRINTF“TN“※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※PRINTF“TN“※※PRINTF“T※企業(yè)職工人事信息管理系統(tǒng)N“※PRINTF“TN“※※PRINTF“TN“※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※PRINTF“N“PRINTF“T王棟TT計(jì)算機(jī)1101N“
下載積分: 6 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 15
大?。?0.1(MB)
子文件數(shù):
-
簡(jiǎn)介:蘭州職業(yè)技術(shù)學(xué)院信息工程系蘭州職業(yè)技術(shù)學(xué)院信息工程系C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)指導(dǎo)書(shū)語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)指導(dǎo)書(shū)蘭州職業(yè)技術(shù)學(xué)院編寫(xiě)目錄目錄1實(shí)訓(xùn)項(xiàng)目一實(shí)訓(xùn)項(xiàng)目一C語(yǔ)言的運(yùn)行環(huán)境和運(yùn)行過(guò)程語(yǔ)言的運(yùn)行環(huán)境和運(yùn)行過(guò)程12實(shí)訓(xùn)項(xiàng)目二實(shí)訓(xùn)項(xiàng)目二C語(yǔ)言的基礎(chǔ)知識(shí)語(yǔ)言的基礎(chǔ)知識(shí)33實(shí)訓(xùn)項(xiàng)目三實(shí)訓(xùn)項(xiàng)目三簡(jiǎn)單的簡(jiǎn)單的C程序設(shè)計(jì)程序設(shè)計(jì)54實(shí)訓(xùn)項(xiàng)目四實(shí)訓(xùn)項(xiàng)目四順序結(jié)構(gòu)程序設(shè)計(jì)順序結(jié)構(gòu)程序設(shè)計(jì)75實(shí)訓(xùn)項(xiàng)目五實(shí)訓(xùn)項(xiàng)目五選擇結(jié)構(gòu)程序設(shè)計(jì)選擇結(jié)構(gòu)程序設(shè)計(jì)96實(shí)訓(xùn)項(xiàng)目六實(shí)訓(xùn)項(xiàng)目六循環(huán)結(jié)構(gòu)程序設(shè)計(jì)循環(huán)結(jié)構(gòu)程序設(shè)計(jì)127實(shí)訓(xùn)項(xiàng)目七實(shí)訓(xùn)項(xiàng)目七一維數(shù)組一維數(shù)組148實(shí)訓(xùn)項(xiàng)目八實(shí)訓(xùn)項(xiàng)目八二維數(shù)組二維數(shù)組169實(shí)訓(xùn)項(xiàng)目九實(shí)訓(xùn)項(xiàng)目九函數(shù)函數(shù)1810實(shí)訓(xùn)項(xiàng)目十實(shí)訓(xùn)項(xiàng)目十指針指針20
下載積分: 8 賞幣
上傳時(shí)間:2024-03-15
頁(yè)數(shù): 26
大小: 0.17(MB)
子文件數(shù):
-
簡(jiǎn)介:1,程序設(shè)計(jì)基礎(chǔ),,2,C程序的上機(jī)步驟,C語(yǔ)言發(fā)展歷史,C語(yǔ)言的特點(diǎn),簡(jiǎn)單的C程序介紹,第一章C語(yǔ)言概述,3,計(jì)算機(jī)唯一能識(shí)別和處理的語(yǔ)言,由0、1序列構(gòu)成的指令代碼,用10000000表示“”,用助記符號(hào)描述的指令系統(tǒng)用ADDA,B表示“AB”,面向機(jī)器的語(yǔ)言,用SUMAB;來(lái)實(shí)現(xiàn)求和,面向過(guò)程、面向?qū)ο蟮恼Z(yǔ)言,,程序設(shè)計(jì)語(yǔ)言的發(fā)展,C語(yǔ)言出現(xiàn)的歷史背景,4,產(chǎn)生過(guò)程時(shí)間19721973地點(diǎn)美國(guó)貝爾實(shí)驗(yàn)室目的UNIX操作系統(tǒng)設(shè)計(jì)人KENTHOMPSON和DMRITCHIE,C語(yǔ)言發(fā)展過(guò)程,5,C標(biāo)準(zhǔn)標(biāo)準(zhǔn)CKELSEZYRETURNZ},MAIN{INTA,B,CSCANF“D,D”,CMAXA,BPRINTF“MAXD“,C}/定義MAX子函數(shù)/INTMAXINTX,INTY{INTZIFXYZXELSEZYRETURNZ},SCANF語(yǔ)句中“”作為語(yǔ)句終止符注釋//為注釋,不能嵌套不產(chǎn)生編譯代碼,17,MAIN{},MAIN{INTI,SUMSUM0FORI1I100I{SUMI/求和/}PRINTF“D\N”,SUM},優(yōu)秀程序員的素質(zhì)之一使用TAB縮進(jìn){}對(duì)齊有足夠的注釋有合適的空行,習(xí)慣用小寫(xiě)字母,大小寫(xiě)敏感不使用行號(hào),無(wú)程序行概念可使用空行和空格常用鋸齒形書(shū)寫(xiě)格式,格式特點(diǎn),18,,程序代碼的錄入,生成源程序C,語(yǔ)法分析查錯(cuò),翻譯生成目標(biāo)程序OBJ,與其它目標(biāo)程序或庫(kù)鏈接裝配,生成可執(zhí)行程序EXE,軟件用戶(hù)得到的僅僅是可執(zhí)行程序,C程序執(zhí)行步驟,C程序的上機(jī)步驟,19,第二章程序的靈魂算法,ALGORITHM,20,NIKIKLAUSWIRTH提出,,,教材認(rèn)為,,程序,算法數(shù)據(jù)結(jié)構(gòu)程序設(shè)計(jì)方法語(yǔ)言工具和環(huán)境,靈魂,加工對(duì)象,VC或者JAVA,程序的要素,結(jié)構(gòu)化程序設(shè)計(jì),21,算法的概念,算法,,為解決一個(gè)問(wèn)題而采取的方法和步驟,,在有限步驟內(nèi)求解某一問(wèn)題所使用的一組定義明確的規(guī)則,22,【例21】求12345。最原始方法步驟1先求12,得到結(jié)果2。步驟2將步驟1得到的乘積2乘以3,得到結(jié)果6。步驟3將6再乘以4,得24。步驟4將24再乘以5,得120。這樣的算法雖然正確,但太繁。改進(jìn)的算法S1使T1S2使I2S3使TI,乘積仍然放在在變量T中,可表示為T(mén)I→TS4使I的值1,即I1→IS5如果I≤5,返回重新執(zhí)行步驟S3以及其后的S4和S5;否則,算法結(jié)束。,23,,,24,【例23】判定20002500年中的每一年是否閏年,將結(jié)果輸出。潤(rùn)年的條件能被4整除,但不能被100整除的年份;能被100整除,又能被400整除的年份;設(shè)Y為被檢測(cè)的年份,則算法可表示如下S12000→YS2若Y不能被4整除,則輸出Y“不是閏年”,然后轉(zhuǎn)到S6S3若Y能被4整除,不能被100整除,則輸出Y“是閏年”,然后轉(zhuǎn)到S6S4若Y能被100整除,又能被400整除,輸出Y“是閏年”否則輸出Y“不是閏年”,然后轉(zhuǎn)到S6S5輸出Y“不是閏年”。S6Y1→YS7當(dāng)Y≤2500時(shí),返回S2繼續(xù)執(zhí)行,否則,結(jié)束。,25,,,,26,,,,27,算法的特征,確定性,有零個(gè)或多個(gè)輸入,有效性,有一個(gè)或多個(gè)輸出,有窮性,28,自然語(yǔ)言表示流程圖表示NS流程圖表示偽代碼表示計(jì)算機(jī)語(yǔ)言表示,順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu),怎樣表示一個(gè)算法,29,流程圖要素,,30,結(jié)構(gòu)化程序設(shè)計(jì)基本思想任何程序都可以用三種基本結(jié)構(gòu)表示,限制使用無(wú)條件轉(zhuǎn)移語(yǔ)句(GOTO)結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)反復(fù)嵌套構(gòu)成的程序優(yōu)點(diǎn)結(jié)構(gòu)清晰,易讀,提高程序設(shè)計(jì)質(zhì)量和效率,程序的三種基本結(jié)構(gòu),31,,順序結(jié)構(gòu),32,二分支選擇結(jié)構(gòu),多分支選擇結(jié)構(gòu),選擇結(jié)構(gòu),33,當(dāng)型循環(huán)結(jié)構(gòu),直到型循環(huán)結(jié)構(gòu),注A,B,A1AN可以是一個(gè)簡(jiǎn)單語(yǔ)句,也可以是一個(gè)基本結(jié)構(gòu),循環(huán)結(jié)構(gòu),34,課后作業(yè),復(fù)習(xí)這兩章的內(nèi)容P13,15,16改為求四個(gè)數(shù)的最大和最小P36,21,24前三題,25回憶有關(guān)二進(jìn)制的知識(shí)上機(jī)準(zhǔn)備例11;12;13;15;16若還有時(shí)間,上機(jī)調(diào)試?yán)?20比如10,35,THEEND,
下載積分: 4 賞幣
上傳時(shí)間:2024-01-07
頁(yè)數(shù): 35
大?。?0.67(MB)
子文件數(shù):
-
簡(jiǎn)介:C語(yǔ)言程序設(shè)計(jì)課程標(biāo)準(zhǔn)語(yǔ)言程序設(shè)計(jì)課程標(biāo)準(zhǔn)第一部分第一部分課程概述課程概述一、課程名稱(chēng)一、課程名稱(chēng)中文名稱(chēng)C語(yǔ)言程序設(shè)計(jì)英文名稱(chēng)CPROGRAMMINGLANGUAGE二、學(xué)時(shí)與適用對(duì)象二、學(xué)時(shí)與適用對(duì)象課程總計(jì)70學(xué)時(shí),其中理論46學(xué)時(shí),實(shí)驗(yàn)課22學(xué)時(shí),綜合考核2學(xué)時(shí)。本標(biāo)準(zhǔn)適用于五年制及四年制生物醫(yī)學(xué)工程、四年制公共事業(yè)管理專(zhuān)業(yè)。三、課程性質(zhì)、地位三、課程性質(zhì)、地位C語(yǔ)言程序設(shè)計(jì)是生物醫(yī)學(xué)工程和公共事業(yè)管理專(zhuān)業(yè)的一門(mén)專(zhuān)業(yè)基礎(chǔ)課,是學(xué)習(xí)其它工科課程的基礎(chǔ)。本課程以程序設(shè)計(jì)思想為主線(xiàn),介紹C語(yǔ)言的基本概念和程序設(shè)計(jì)的思想和方法,培養(yǎng)學(xué)員運(yùn)用C語(yǔ)言解決實(shí)際問(wèn)題的能力。通過(guò)學(xué)習(xí)該門(mén)課程,可以使學(xué)員掌握程序設(shè)計(jì)的基本方法及思維,形成程序設(shè)計(jì)基本思想,掌握程序調(diào)試的基本方法,使學(xué)員初步具備程序設(shè)計(jì)能力,為學(xué)員進(jìn)一步學(xué)習(xí)其他專(zhuān)業(yè)課程和今后從事軟件開(kāi)發(fā)工作打下堅(jiān)實(shí)的基礎(chǔ)。四、課程基本理念四、課程基本理念1、全面貫徹黨的教育方針,準(zhǔn)確把握本門(mén)課程在人才培養(yǎng)方案中的作用和地位,教學(xué)內(nèi)容、方法、手段的選擇必須以人才培養(yǎng)目標(biāo)和規(guī)格為依據(jù),與國(guó)家、軍隊(duì)總部的要求相一致。2、課程教學(xué)目標(biāo)和組織與我?!敖ㄔO(shè)國(guó)際先進(jìn)的研究型軍醫(yī)大學(xué)”的定位相匹配,符合國(guó)際化、現(xiàn)代化、精品化的辦學(xué)理念。3、要堅(jiān)持以學(xué)員為主體,教員為主導(dǎo)的教學(xué)理念。全程滲透素質(zhì)教育、創(chuàng)新教育和個(gè)性化教育等現(xiàn)代教育思想和理念。施教之功重在啟發(fā),貴在引導(dǎo)。要突出學(xué)員學(xué)習(xí)的主體地位,充分發(fā)揮學(xué)員的積極性和學(xué)習(xí)潛能,形成自己的學(xué)習(xí)方法,21、基本知識(shí)了解C的基本數(shù)據(jù)類(lèi)型、運(yùn)算符和表達(dá)式、模塊化程序設(shè)計(jì)的方法,深刻理解流程控制的概念和控制方式,掌握分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、數(shù)組、函數(shù)、指針、結(jié)構(gòu)及文件的使用。2、基本技能掌握用C語(yǔ)言進(jìn)行程序設(shè)計(jì)的基本框架,理解結(jié)構(gòu)化程序設(shè)計(jì)思想;熟練應(yīng)用C語(yǔ)言集成環(huán)境設(shè)計(jì)和調(diào)試C程序;能用C語(yǔ)言程序設(shè)計(jì)的方式分析和解決簡(jiǎn)單實(shí)際問(wèn)題并測(cè)試程序;掌握計(jì)算機(jī)語(yǔ)言類(lèi)課程的學(xué)習(xí)方法,無(wú)論以后在學(xué)習(xí)、工作中使用什么語(yǔ)言編程,都能靈活應(yīng)用程序設(shè)計(jì)的思想和方法分析、解決問(wèn)題。(二)過(guò)程與方法目標(biāo)(二)過(guò)程與方法目標(biāo)1、通過(guò)課堂教學(xué),打牢學(xué)員專(zhuān)業(yè)基礎(chǔ);通過(guò)課內(nèi)外研討、實(shí)驗(yàn)等實(shí)踐性教學(xué)環(huán)節(jié),培養(yǎng)學(xué)員分析問(wèn)題和解決問(wèn)題的能力。2、通過(guò)參與教員的科研課題等第二課堂活動(dòng),培養(yǎng)學(xué)員程序設(shè)計(jì)和程序調(diào)試的能力;通過(guò)撰寫(xiě)小論文、參與科研學(xué)術(shù)等活動(dòng),培養(yǎng)學(xué)員收集整理信息和交流知識(shí)等綜合運(yùn)用能力和創(chuàng)新意識(shí)。3、通過(guò)課程教學(xué)活動(dòng)和教員、學(xué)員的雙邊互動(dòng),使學(xué)員在學(xué)習(xí)、研究過(guò)程中養(yǎng)成觀察、發(fā)現(xiàn)、引申問(wèn)題,自覺(jué)運(yùn)用所學(xué)知識(shí)分析、解決問(wèn)題的良好習(xí)慣,并具備一定的獨(dú)立思考、分析概括和創(chuàng)新能力。4、通過(guò)網(wǎng)絡(luò)課程學(xué)習(xí),拓寬知識(shí)面,延伸課堂知識(shí),培養(yǎng)自學(xué)能力和興趣,增強(qiáng)自主學(xué)習(xí)的能力。(三)情感態(tài)度與價(jià)值觀目標(biāo)(三)情感態(tài)度與價(jià)值觀目標(biāo)養(yǎng)成運(yùn)用所學(xué)知識(shí)對(duì)計(jì)算機(jī)運(yùn)行過(guò)程和機(jī)理有一定的關(guān)注和思索,能夠把所學(xué)的知識(shí)和技能應(yīng)用到具體的軟件開(kāi)發(fā)等工作實(shí)踐中去。培養(yǎng)實(shí)事求是的科學(xué)態(tài)度和敢于挑戰(zhàn)權(quán)威的科學(xué)精神,具備團(tuán)隊(duì)精神和合作交流意識(shí),并指導(dǎo)自己的日常工作與行動(dòng)。
下載積分: 6 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 22
大?。?0.45(MB)
子文件數(shù):
-
簡(jiǎn)介:電科19秋C語(yǔ)言在線(xiàn)作業(yè)3一、單選題100分1下面程序段的運(yùn)行結(jié)果是C5AB0C0PRINTF“S“CA’A’’B’BABCABCDAB□其中□表示空格答案B2若有以下程序段INTA40231IJTFI1I5ITAIJI1WHILEJ0AJAJ1AJJAJ1T則該程序段的功能是A對(duì)數(shù)組A進(jìn)行插入排序升序B對(duì)數(shù)組A進(jìn)行插入排序降序C對(duì)數(shù)組A進(jìn)行選擇排序升序D對(duì)數(shù)組A進(jìn)行選擇排序降序答案B3設(shè)變量A是整型F是實(shí)型I是雙精度型則表達(dá)式10AIF值的數(shù)據(jù)類(lèi)型為AINTBFLOATCDOUBLED不確定答案C4在C語(yǔ)言中,正確的的結(jié)論是A對(duì)文件操作必須先關(guān)閉文件B對(duì)文件操作必須先打開(kāi)文件C對(duì)文件操作順序沒(méi)有統(tǒng)一規(guī)定D以上都錯(cuò)答案B5已有函數(shù)MAXAB為了讓函數(shù)指針變量P指向函數(shù)MAX正是確的賦值方法是APMAXBPMAXCPMAXABDPMAXAB答案A6設(shè)有程序段INTK10A在C程序中逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低B在C程序中APH和APH是兩個(gè)不同的變量C若A和B類(lèi)型相同在執(zhí)行了賦值表達(dá)式AB后B中的值將放人A中而B(niǎo)中的值不變D當(dāng)從鍵盤(pán)輸入數(shù)據(jù)時(shí)對(duì)于整型變量只能輸入整型數(shù)值對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值。答案D13根據(jù)下面的定義能印出字母M的語(yǔ)句是根據(jù)下面的定義能印出字母M的語(yǔ)句是STRUCTPERSONNAME9;INTAGE;STRUCTPERSONCLASS10“JOHN”,17“PAUL”,19“MARY”,18“ADAM”,16;APRINTF“CN”,CLASS3NAME;BPRINTF“CN”,CLASS3NAME1;CPRINTF“CN”,CLASS2NAME1;DPRINTF“CN”,CLSAA2NAME0;答案D14下面程序的運(yùn)行結(jié)果是MAININTA6IFI1I6IAI9I24I35PRINTF““AIA40404B40403C一40443D一40440答案C15己有變量定義和函數(shù)調(diào)用語(yǔ)句INTA25PRINT_VAUE下面函數(shù)的正確輸出結(jié)果是VOIDPRINT_VALUEINTXPRINTF“DN“XA23B24C25D26答案D16下面程序的運(yùn)行結(jié)果是INCLUDESTDIOHMAININTK0CADOSWITCHCCASEAKBREAKCASEBKCASECK2BREAKCASEDKK,ONTINUECASEEKK10BREAKDEFAULTKK3KWHILEC
下載積分: 5 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 5
大?。?0.02(MB)
子文件數(shù):
-
簡(jiǎn)介:電科19秋C語(yǔ)言在線(xiàn)作業(yè)2一、單選題50分1若有以下程序段INTA40231IJTFI1I5ITAIJI1WHILEJ0AJAJ1AJJAJ1T則該程序段的功能是A對(duì)數(shù)組A進(jìn)行插入排序升序B對(duì)數(shù)組A進(jìn)行插入排序降序C對(duì)數(shù)組A進(jìn)行選擇排序升序D對(duì)數(shù)組A進(jìn)行選擇排序降序答案B2凡是函數(shù)中未指定存儲(chǔ)類(lèi)別的局部變量其隱含的存儲(chǔ)類(lèi)別為A自動(dòng)AUTOB靜態(tài)STATICC外部EXTERND寄存器REGISTER答案A3“文件包含“預(yù)處理語(yǔ)句的使用形式中當(dāng)INCLUDE后面的文件名用““,雙引號(hào)括起時(shí)尋找被包含文件的方式是A直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄B先在源程序所在目錄搜索再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索C僅僅搜索源程序所在目錄D僅僅搜索當(dāng)前目錄答案B4對(duì)下面程序,從整體功能及語(yǔ)法上看,說(shuō)法正確的是()每行程序前面的數(shù)字表示行號(hào)。1MAIN23FLOATA10004INTI5FI0I3ISCANF“D“6FI0I10IA0A0AI7PRINTF“DN“A08A沒(méi)有錯(cuò)誤B第3行有錯(cuò)誤C第5行有錯(cuò)誤D第7行有錯(cuò)誤答案C答案B10若調(diào)用一個(gè)函數(shù)且此函數(shù)中沒(méi)有RETURN語(yǔ)句關(guān)于該函數(shù)則正確的說(shuō)法是A沒(méi)有返回值B返回若干個(gè)系統(tǒng)默認(rèn)值C能返回一個(gè)用戶(hù)所希望的函數(shù)值D返回一個(gè)不確定的值答案D二、多選題50分11下列符號(hào)中可以用作自定義函數(shù)名的是AINTBGO_TOCINTDGETETYPEDEF答案BCD12C語(yǔ)言規(guī)定,如下說(shuō)法是正確的A不能將結(jié)構(gòu)作為整體來(lái)進(jìn)行存??;B結(jié)構(gòu)是若干變量的集合,這些變量的類(lèi)型可以相同;C共用體(聯(lián)合)允許不同數(shù)據(jù)類(lèi)型的數(shù)據(jù)使用共同的存儲(chǔ)區(qū)域;D不能用0的是AFP10K1KNPKBP10K0WHILEKNPKCP10K1DOKPKWHILEKNDP10FKNK1KPK答案AB15以下數(shù)據(jù)類(lèi)型在內(nèi)存中占用4個(gè)字節(jié)的是AINTBUNSIGNEDLONGCFLOATDUNSIGNED答案BC16以下哪些是關(guān)于指針數(shù)組的正確描述AINTA4BINTA4
下載積分: 5 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 4
大小: 0.02(MB)
子文件數(shù):
-
簡(jiǎn)介:電科19秋C語(yǔ)言在線(xiàn)作業(yè)1一、單選題50分1下面程序的運(yùn)行結(jié)果是MAININTA6IFI1I6IAI9I24I35PRINTF““AIA40404B40403C一40443D一40440答案C2ENUMCOLREDGREENYELLOW5WHITEBLACK定義了一枚舉類(lèi)型。編譯程序?yàn)橹当碇懈鳂?biāo)識(shí)符分配的枚舉值依次為A1、2、3、4、5B0、1、5、2、3C0、1、5、6、7D3、4、5、6、7答案C3下面程序段的循環(huán)次數(shù)是INTK2WHILEK0PRINTF″D″KKPRINTF″N″A0次B1次C2次D無(wú)限次答案A4若運(yùn)行以下程序時(shí)從鍵盤(pán)輸入ADECRCR表示回車(chē)則下面程序的運(yùn)行結(jié)果是INCLUDESTDIOHMAINCINTV00V10V20DOSWITCHCGETCASEACASEACASEECASEECASEICASEICASEOCASEOCASEU答案B10若有說(shuō)明LANGUAGE“FTRAN““BASIC““PAL““JAVA““C“則表達(dá)式LANGUAGE1LANGUAGE3比較的是A字符F和字符PB字符串BAS1C和字符串JAVAC字符B和字符JD字符串FTRAN和字符串PAL答案C二、多選題25分11在下面C語(yǔ)言的函數(shù)說(shuō)明語(yǔ)句中,正確的是AINTFUNINTINTBINTFUNINTXYCINTFUNXYDINTFUNINTXINTYEINTFUNINTXINTY答案AE12在函數(shù)調(diào)用過(guò)程中,下列說(shuō)法正確的是A形式參數(shù)和實(shí)在參數(shù)各占一個(gè)獨(dú)立的存儲(chǔ)單元B形式參數(shù)和實(shí)在參數(shù)存儲(chǔ)空間都是在函數(shù)調(diào)用時(shí)分配的C在函數(shù)的執(zhí)行過(guò)程中,形參變量值的改變不會(huì)影響實(shí)參值的改變D函數(shù)調(diào)用結(jié)束時(shí),臨時(shí)存儲(chǔ)區(qū)被撤消E在函數(shù)調(diào)用過(guò)程中,實(shí)在參數(shù)與形式參數(shù)在個(gè)數(shù)、類(lèi)型上必須匹配答案ACDE13在定義函數(shù)時(shí),函數(shù)的存儲(chǔ)類(lèi)型可以A是STATICB是AUTOC是REGISTERD是EXTERNE省略答案ADE14下列符號(hào)中可以用作自定義函數(shù)名的是AINTBGO_TOCINTDGETETYPEDEF答案BCD15以下哪些是關(guān)于指針數(shù)組的正確描述AINTA4BINTA4C指針數(shù)組每個(gè)元素都是指針變量D若INTA44INTBA0A1A2A3則B是指針數(shù)組E指針數(shù)組與指向數(shù)組的指針是等價(jià)的答案BCD
下載積分: 5 賞幣
上傳時(shí)間:2024-03-17
頁(yè)數(shù): 4
大小: 0.02(MB)
子文件數(shù):
-
簡(jiǎn)介:紅色的是正確的紅色的是正確的以下敘述正確的是C語(yǔ)言中各函數(shù)之間既允許直接遞歸調(diào)用也允許間接遞歸調(diào)用C語(yǔ)言中各函數(shù)之間既不允許直接遞歸調(diào)用也不允許間接遞歸調(diào)用C語(yǔ)言中各函數(shù)之間既允許直接遞歸調(diào)用不允許間接遞歸調(diào)用C語(yǔ)言中各函數(shù)之間既不允許直接遞歸調(diào)用允許間接遞歸調(diào)用單選第2題(2分)若有以下說(shuō)明和定義,則對(duì)FUN函數(shù)的正確調(diào)用語(yǔ)句是AFUNAWAFUNABFUNBWFUNBMAININTAINTBW10CFUNINTC單選第3題(2分)以下程序的輸出結(jié)果是紅色的是正確的FUNCINTAINTBSTATICINTMI2IM1MIABRETURNM81781682088單選第5題(2分)以下程序的輸出結(jié)果是VOIDFUNINTSSTATICINTJ0DOSJSJ1WHILEJ2MAIN
下載積分: 8 賞幣
上傳時(shí)間:2024-03-11
頁(yè)數(shù): 26
大小: 0.03(MB)
子文件數(shù):
-
簡(jiǎn)介:39C語(yǔ)言程序的調(diào)試、運(yùn)行步驟修改程序,觀察語(yǔ)法錯(cuò)誤、邏輯錯(cuò)誤及改正方法。語(yǔ)法錯(cuò)誤可以刪除一個(gè)分號(hào),使編開(kāi)始編輯源程序CCPP編譯目標(biāo)程序OBJ連接可執(zhí)行程序EXE運(yùn)行結(jié)果譯出現(xiàn)錯(cuò)誤提示,改正之,再編譯。類(lèi)比寫(xiě)文章有錯(cuò)別字。邏輯錯(cuò)誤將SUMSUMI改為SUMSUMI,編譯、連接、運(yùn)行,發(fā)現(xiàn)語(yǔ)法錯(cuò)誤13習(xí)題參考答案連接錯(cuò)誤運(yùn)行錯(cuò)誤運(yùn)行結(jié)果不符合題目要求。找出錯(cuò)誤(調(diào)試),改正之,再編譯、連接、運(yùn)行,看結(jié)果。類(lèi)比寫(xiě)文章詞不達(dá)意。1對(duì)C語(yǔ)言來(lái)說(shuō),下列標(biāo)識(shí)符中哪些是合法的,哪些是不合法的TOTAL_DEBUGLARGEPRINTF“AAN“PRINTF“AN“RETURN014
下載積分: 9 賞幣
上傳時(shí)間:2024-03-12
頁(yè)數(shù): 111
大?。?1.26(MB)
子文件數(shù):
-
簡(jiǎn)介:第8章結(jié)構(gòu)體和共用體,前面的章節(jié)中已經(jīng)介紹了各種基本數(shù)據(jù)類(lèi)型、數(shù)組和指針。但只有這些數(shù)據(jù)類(lèi)型還難以處理一些比較復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。本章將以前面介紹的數(shù)據(jù)類(lèi)型為基礎(chǔ),進(jìn)一步介紹結(jié)構(gòu)體類(lèi)型、共用體類(lèi)型和枚舉類(lèi)型。,,,81結(jié)構(gòu)體82動(dòng)態(tài)內(nèi)存分配與鏈表83共用體類(lèi)型84枚舉類(lèi)型85用戶(hù)自定義類(lèi)型86程序舉例,第8章結(jié)構(gòu)體和共用體,第8章,81結(jié)構(gòu)體,81結(jié)構(gòu)體,811結(jié)構(gòu)類(lèi)型定義在實(shí)際問(wèn)題中,一組數(shù)據(jù)往往具有不同的數(shù)據(jù)類(lèi)型。例如,在學(xué)生登記表中,姓名應(yīng)為字符型;學(xué)號(hào)可為整型或字符型;年齡應(yīng)為整型性別應(yīng)為字符型成績(jī)可為整型或?qū)嵭汀5@些顯然不能用一個(gè)數(shù)組來(lái)存放這一組數(shù)據(jù)。因?yàn)閿?shù)組中各元素的類(lèi)型和長(zhǎng)度都必須一致,以便于編譯系統(tǒng)處理。為了解決這個(gè)問(wèn)題,C語(yǔ)言中給出了另一種構(gòu)造數(shù)據(jù)類(lèi)型“結(jié)構(gòu)體”?!敖Y(jié)構(gòu)體”是一種構(gòu)造類(lèi)型,它是由若干“成員”組成的。每一個(gè)成員可以是一個(gè)基本數(shù)據(jù)類(lèi)型或者又是一個(gè)構(gòu)造類(lèi)型。結(jié)構(gòu)體既然是一種“構(gòu)造”而成的數(shù)據(jù)類(lèi)型,那么在說(shuō)明和使用之前必須先定義它,也就是構(gòu)造它。如同在說(shuō)明和調(diào)用函數(shù)之前要先定義函數(shù)一樣。,81結(jié)構(gòu)體,定義一個(gè)結(jié)構(gòu)體類(lèi)型的一般形式為STRUCT結(jié)構(gòu)體名{結(jié)構(gòu)成員的說(shuō)明}成員表由若干個(gè)成員組成,每個(gè)成員都是該結(jié)構(gòu)體的一個(gè)組成部分。對(duì)每個(gè)成員也必須作類(lèi)型說(shuō)明,其形式為類(lèi)型說(shuō)明符成員名成員名的命名應(yīng)符合標(biāo)識(shí)符的書(shū)寫(xiě)規(guī)定。例如STRUCTSTU{INTNUMCHARNAME20CHARSEXFLOATSCORE},81結(jié)構(gòu)體,在這個(gè)結(jié)構(gòu)體定義中,結(jié)構(gòu)體名為STU,該結(jié)構(gòu)體由4個(gè)成員組成。第一個(gè)成員為NUM,整型變量;第二個(gè)成員為NAME,字符數(shù)組變量;第三個(gè)成員為SEX,字符變量;第四個(gè)成員為SCORE,實(shí)型變量。應(yīng)注意在括號(hào)“}”后的分號(hào)是不可少的。結(jié)構(gòu)體定義之后,即可進(jìn)行變量說(shuō)明。凡說(shuō)明為結(jié)構(gòu)體STU的變量都由上述4個(gè)成員組成。由此可見(jiàn),結(jié)構(gòu)是一種復(fù)雜的數(shù)據(jù)類(lèi)型,是數(shù)目固定,類(lèi)型不同的若干有序變量的集合。,81結(jié)構(gòu)體,812結(jié)構(gòu)體類(lèi)型變量的說(shuō)明說(shuō)明結(jié)構(gòu)體變量有以下三種方法。以上面定義的STU為例來(lái)加以說(shuō)明。(1)先定義結(jié)構(gòu)體類(lèi)型,再說(shuō)明結(jié)構(gòu)體變量例如STRUCTSTU{INTNUMCHARNAME20CHARSEXFLOATSCORE}STRUCTSTUBOY1,BOY2說(shuō)明了兩個(gè)變量BOY1和BOY2為STU結(jié)構(gòu)類(lèi)型。也可以用宏定義使用一個(gè)符號(hào)常量來(lái)表示一個(gè)結(jié)構(gòu)類(lèi)型,例如DEFINESTUSTRUCTSTUSTU{INTNUMCHARNAME20CHARSEXFLOATSCORE}STUBOY1,BOY2,81結(jié)構(gòu)體,(2)在定義結(jié)構(gòu)體類(lèi)型的同時(shí)說(shuō)明結(jié)構(gòu)體變量例如STRUCTSTU{INTNUMCHARNAME20CHARSEXFLOATSCORE}BOY1,BOY2(3)直接說(shuō)明結(jié)構(gòu)體變量例如STRUCT{INTNUMCHARNAME20CHARSEXFLOATSCORE}BOY1,BOY2,81結(jié)構(gòu)體,第三種方法與第二種方法的區(qū)別在于第三種方法中省去了結(jié)構(gòu)體名,而直接給出結(jié)構(gòu)體變量。三種方法中說(shuō)明的BOY1,BOY2變量都具有相同的結(jié)構(gòu)。說(shuō)明了BOY1,BOY2變量為STU類(lèi)型后,即可向這兩個(gè)變量中的各個(gè)成員賦值。在上述STU結(jié)構(gòu)體定義中,所有的成員都是基本數(shù)據(jù)類(lèi)型或數(shù)組類(lèi)型。成員也可以又是一個(gè)結(jié)構(gòu)體類(lèi)型,即構(gòu)成了嵌套的結(jié)構(gòu)體。,81結(jié)構(gòu)體,例如STRUCTDATE{INTMONTHINTDAYINTYEAR}STRUCT{INTNUMCHARNAME20CHARSEXSTRUCTDATEBIRTHDAYFLOATSCORE}BOY1,BOY2,首先定義一個(gè)結(jié)構(gòu)體DATE,由MONTH月、DAY日、YEAR年三個(gè)成員組成。在定義并說(shuō)明變量BOY1和BOY2時(shí),其中的成員BIRTHDAY被說(shuō)明為DATA結(jié)構(gòu)體類(lèi)型。成員名可與程序中其它變量同名,互不干擾。結(jié)構(gòu)體變量成員的表示方法,在程序中使用結(jié)構(gòu)體變量時(shí),往往不把它作為一個(gè)整體來(lái)使用。,說(shuō)明結(jié)構(gòu)體在內(nèi)存中存儲(chǔ)容量是各成員容量之和,這是與后面聯(lián)合體的重要區(qū)別。,81結(jié)構(gòu)體,813結(jié)構(gòu)體變量的引用一般情況下,不能對(duì)一個(gè)結(jié)構(gòu)體變量作為整體引用,只能引用其中的成員。結(jié)構(gòu)體變量中成員引用的一般形式為結(jié)構(gòu)體變量名成員名其中,“”是域成員運(yùn)算符,是C語(yǔ)言中優(yōu)先級(jí)最高的運(yùn)算符之一。例如BOY1NUM即第一個(gè)人的學(xué)號(hào),BOY2SEX即第二個(gè)人的性別。如果成員本身又是一個(gè)結(jié)構(gòu)體,則必須逐級(jí)找到最低級(jí)的成員才能使用。例如BOY1BIRTHDAYMONTH即第一個(gè)人出生的月份。成員可以在程序中單獨(dú)使用,與普通變量完全相同。,81結(jié)構(gòu)體,814結(jié)構(gòu)體變量的賦值對(duì)于結(jié)構(gòu)體變量,只有以下兩種情況可以對(duì)結(jié)構(gòu)體變量賦值。(1)結(jié)構(gòu)體變量整體賦值例如BOY2BOY1(2)取結(jié)構(gòu)體變量地址例如注意結(jié)構(gòu)體變量名是地址常量,含義與數(shù)組名和函數(shù)名相同,不能對(duì)結(jié)構(gòu)體變量做整體輸入/輸出。例如SCANF“D,S,C,F“,PRINTF“D,S,C,F“,BOY1這些語(yǔ)句都是不允許的,只能對(duì)結(jié)構(gòu)體成員進(jìn)行輸入/輸出。,81結(jié)構(gòu)體,例81給結(jié)構(gòu)體變量賦值并輸出其值。INCLUDEVOIDMAIN{STRUCTSTU/定義結(jié)構(gòu)體STU/{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY1,BOY2/定義STU類(lèi)型的變量BOY1、BOY2/BOY1NUM102BOY1NAME“ZHANGPING“PRINTF“INPUTSEXANDSCORE\N“SCANF“CF“,/給BOY1的成員SEX和SCORE賦值/BOY2BOY1/把BOY1整體賦給BOY2/PRINTF“NUMBERD\NNAMES\N“,BOY2NUM,BOY2NAMEPRINTF“SEXC\NSCORE62F\N“,BOY2SEX,BOY2SCORE},81結(jié)構(gòu)體,程序運(yùn)行結(jié)果INPUTSEXANDSCOREM96↙NUMBER102NAMEZHANGPINGSEXMSCORE︼9600,本程序中用賦值語(yǔ)句給NUM和NAME兩個(gè)成員賦值,NAME是一個(gè)字符串指針變量。用SCANF函數(shù)動(dòng)態(tài)地輸入SEX和SCORE成員值,然后把BOY1的所有成員的值整體賦予BOY2。最后分別輸出BOY2的各個(gè)成員值。,81結(jié)構(gòu)體,815結(jié)構(gòu)體變量的初始化如果結(jié)構(gòu)體變量為全局變量或者靜態(tài)變量,則可以對(duì)它做初始化賦值。對(duì)局部或自動(dòng)結(jié)構(gòu)體變量不能做初始化賦值。,81結(jié)構(gòu)體,例82外部結(jié)構(gòu)體變量初始化。INCLUDESTRUCTSTU/定義結(jié)構(gòu)體/{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY2,BOY1{102,“ZHANGPING“,M,785}/對(duì)變量BOY1的成員初始化/VOIDMAIN{BOY2BOY1/把BOY1整體賦給BOY2/PRINTF“NUMBERD\NNAMES\N“,BOY2NUM,BOY2NAMEPRINTF“SEXC\NSCORE62F\N“,BOY2SEX,BOY2SCORE},81結(jié)構(gòu)體,程序運(yùn)行結(jié)果NUMBER102NAMEZHANGPINGSEXMSCORE︼7850,本程序中,BOY2,BOY1均被定義為外部結(jié)構(gòu)體變量,并對(duì)BOY1作了初始化賦值。在MAIN函數(shù)中,把BOY1的值整體賦予BOY2,然后用兩個(gè)PRINTF語(yǔ)句輸出BOY2各成員的值。,81結(jié)構(gòu)體,例83靜態(tài)結(jié)構(gòu)體變量初始化。INCLUDEVOIDMAIN{STATICSTRUCTSTU/定義靜態(tài)結(jié)構(gòu)體/{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY2,BOY1{102,“ZHANGPING“,M,785}/對(duì)變量BOY1的成員初始化/BOY2BOY1PRINTF“NUMBERD\NNAMES\N“,BOY2NUM,BOY2NAMEPRINTF“SEXC\NSCORE62F\N“,BOY2SEX,BOY2SCORE}本程序是把BOY1,BOY2都定義為靜態(tài)局部的結(jié)構(gòu)體變量,同樣可以做初始化賦值。,81結(jié)構(gòu)體,816結(jié)構(gòu)體數(shù)組一個(gè)結(jié)構(gòu)體變量可以處理一個(gè)對(duì)象,如果有多個(gè)對(duì)象,則需要多個(gè)結(jié)構(gòu)體變量,數(shù)組的元素也可以是結(jié)構(gòu)體類(lèi)型的,因此可以構(gòu)成結(jié)構(gòu)體數(shù)組。結(jié)構(gòu)體數(shù)組的每一個(gè)元素都是具有相同結(jié)構(gòu)體類(lèi)型的下標(biāo)結(jié)構(gòu)體變量。在實(shí)際應(yīng)用中,經(jīng)常用結(jié)構(gòu)體數(shù)組來(lái)表示具有相同數(shù)據(jù)結(jié)構(gòu)的一個(gè)群體。如一個(gè)班的學(xué)生檔案,一個(gè)車(chē)間職工的工資表等。結(jié)構(gòu)體數(shù)組的定義方法和結(jié)構(gòu)體變量相似,也有三種方式(1)先定義結(jié)構(gòu)體類(lèi)型,再定義結(jié)構(gòu)體數(shù)組。例如STRUCTSTU{INTNUMCHARNAMECHARSEXFLOATSCORE};STRUCTSTUBOY5定義了一個(gè)結(jié)構(gòu)體數(shù)組BOY,共有5個(gè)元素,BOY0~BOY4。每個(gè)數(shù)組元素都具有STRUCTSTU的結(jié)構(gòu)體形式。,81結(jié)構(gòu)體,(2)在定義結(jié)構(gòu)體類(lèi)型的同時(shí)定義結(jié)構(gòu)體數(shù)組。例如STRUCTSTU{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY5(3)直接定義結(jié)構(gòu)體數(shù)組。例如STRUCT{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY5,81結(jié)構(gòu)體,對(duì)外部結(jié)構(gòu)體數(shù)組或靜態(tài)結(jié)構(gòu)體數(shù)組可以做初始化賦值。例如STRUCTSTU{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY5{{101,“LIPING“,M,45},{102,“ZHANGPING“,M,625},{103,“HEFANG“,F,925},{104,“CHENGLING“,F,87},{105,“WANGMING“,M,58}}當(dāng)對(duì)全部元素做初始化賦值時(shí),也可不給出數(shù)組長(zhǎng)度。,81結(jié)構(gòu)體,例84計(jì)算學(xué)生的平均成績(jī)和不及格的人數(shù)。INCLUDESTRUCTSTU/定義結(jié)構(gòu)體/{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY5{{101,“LIPING“,M,45},{102,“ZHANGPING“,M,625},{103,“HEFANG“,F,925},{104,“CHENGLING“,F,87},{105,“WANGMING“,M,58}}/對(duì)結(jié)構(gòu)體數(shù)組元素初始化/VOIDMAIN{INTI,C0FLOATAVE,S0FORI0I成員名例如PSTUNUM或PSTUNUM應(yīng)該注意PSTU兩側(cè)的括號(hào)不可少,因?yàn)槌蓡T符“”的優(yōu)先級(jí)高于“”。如去掉括號(hào)寫(xiě)作PSTUNUM,則等效于PSTUNUM,這樣,意義就完全不對(duì)了。,81結(jié)構(gòu)體,例86分析下面程序的運(yùn)行結(jié)果。INCLUDESTRUCTSTU/定義結(jié)構(gòu)體/{INTNUMCHARNAMECHARSEXFLOATSCORE}BOY1{102,“ZHANGPING“,M,785},PSTUVOIDMAIN{PSTUPRINTF“NUMBERD\NNAMES\N“,BOY1NUM,BOY1NAMEPRINTF“SEXC\NSCORE62F\N\N“,BOY1SEX,BOY1SCOREPRINTF“NUMBERD\NNAMES\N“,PSTUNUM,PSTUNAMEPRINTF“SEXC\NSCORE62F\N\N“,PSTUSEX,PSTUSCOREPRINTF“NUMBERD\NNAMES\N“,PSTUNUM,PSTUNAMEPRINTF“SEXC\NSCORE62F\N\N“,PSTUSEX,PSTUSCORE},81結(jié)構(gòu)體,本程序序定義了一個(gè)結(jié)構(gòu)體類(lèi)型STU,定義了STU類(lèi)型結(jié)構(gòu)變量BOY1并作了初始化賦值,還定義了一個(gè)指向STU類(lèi)型結(jié)構(gòu)體的指針變量PSTU。在MAIN函數(shù)中,PSTU被賦予BOY1的地址,因此PSTU指向BOY1。然后在PRINTF語(yǔ)句內(nèi)用三種形式輸出BOY1的各個(gè)成員值。,程序運(yùn)行結(jié)果NUMBER102NAMEZHANGPINGSEXMSCORE︼7850,82動(dòng)態(tài)內(nèi)存分配與鏈表,我們存儲(chǔ)數(shù)量比較多的同類(lèi)型或同結(jié)構(gòu)的數(shù)據(jù)時(shí),一般首先考慮數(shù)組。然而在實(shí)際應(yīng)用中,當(dāng)處理一些難以確定其數(shù)量的數(shù)據(jù)時(shí),如果用數(shù)組來(lái)處理,必須事先分配一個(gè)足夠大的連續(xù)空間,以保證數(shù)組元素?cái)?shù)量充分夠用,但這樣處理時(shí)對(duì)存儲(chǔ)空間的一種浪費(fèi)。C語(yǔ)言使用動(dòng)態(tài)內(nèi)存分配來(lái)解決這樣的問(wèn)題,其中常用的就是鏈表。鏈表是一種常見(jiàn)的數(shù)據(jù)結(jié)構(gòu),它動(dòng)態(tài)地進(jìn)行存儲(chǔ)分配,并且可以方便而又簡(jiǎn)單地進(jìn)行數(shù)據(jù)插入,刪除等操作。,82動(dòng)態(tài)內(nèi)存分配與鏈表,821鏈表的概念鏈表是指若干個(gè)數(shù)據(jù)按一定的原則連接起來(lái)。這個(gè)原則為前一個(gè)數(shù)據(jù)指向下一個(gè)數(shù)據(jù),只有通過(guò)前一個(gè)數(shù)據(jù)項(xiàng)才能找到下一個(gè)數(shù)據(jù)項(xiàng)。鏈表有一個(gè)“頭指針”HEAD,它指向鏈表的第一個(gè)元素(數(shù)據(jù)項(xiàng))。鏈表的一個(gè)元素稱(chēng)為一個(gè)“結(jié)點(diǎn)”NODE。結(jié)點(diǎn)中包含兩部分內(nèi)容,第一部分是結(jié)點(diǎn)數(shù)據(jù)本身,如圖81中的A、B、C、D所示。結(jié)點(diǎn)的第二部分是一個(gè)指針,它指向下一個(gè)結(jié)點(diǎn)。最后一個(gè)結(jié)點(diǎn)稱(chēng)為“表尾”,表尾結(jié)點(diǎn)的指針不指向任何地址,因此為空(NULL)。,圖81鏈表結(jié)構(gòu)圖,82動(dòng)態(tài)內(nèi)存分配與鏈表,如果每個(gè)結(jié)點(diǎn)采用一個(gè)指針,將前一個(gè)結(jié)點(diǎn)的指針指向下一個(gè)結(jié)點(diǎn),這稱(chēng)為單鏈表。如果每個(gè)結(jié)點(diǎn)有兩個(gè)指向其他結(jié)點(diǎn)的指針,則稱(chēng)為雙鏈表。本節(jié)主要討論單鏈表的運(yùn)算。由以上簡(jiǎn)單鏈表可以看到,鏈表中的每個(gè)結(jié)點(diǎn)至少包含兩個(gè)域,一個(gè)域用來(lái)存放數(shù)據(jù),其類(lèi)型根據(jù)需存放的數(shù)據(jù)類(lèi)型定義。另一個(gè)域用來(lái)存放下一個(gè)結(jié)點(diǎn)的地址,因此必然是一個(gè)指針類(lèi)型,此指針的類(lèi)型應(yīng)該是所指向的表結(jié)點(diǎn)的結(jié)構(gòu)體類(lèi)型。在C語(yǔ)言中,可以用結(jié)構(gòu)體類(lèi)型來(lái)實(shí)現(xiàn)鏈表,例如STRUCTSTUDENT{INTLONGFLOATSCORESTRUCTSTUDENTNEXT/指向下一結(jié)點(diǎn)/}其中NEXT是結(jié)構(gòu)體指針變量,用來(lái)存放下一個(gè)結(jié)點(diǎn)的地址,即NEXT是指向下一個(gè)結(jié)點(diǎn)。,82動(dòng)態(tài)內(nèi)存分配與鏈表,822動(dòng)態(tài)存儲(chǔ)分配C語(yǔ)言允許在函數(shù)執(zhí)行部分的任何地方使用動(dòng)態(tài)存儲(chǔ)分配函數(shù)開(kāi)辟或收回存儲(chǔ)單元,這樣的存儲(chǔ)分配叫動(dòng)態(tài)存儲(chǔ)分配。動(dòng)態(tài)分配使用自由、節(jié)約內(nèi)存。鏈表是動(dòng)態(tài)分配存儲(chǔ)空間的,也就是說(shuō)在需要的時(shí)候才開(kāi)辟一個(gè)結(jié)點(diǎn)的存儲(chǔ)空間。在C語(yǔ)言中提供了以下有關(guān)的函數(shù)來(lái)實(shí)現(xiàn)動(dòng)態(tài)存儲(chǔ)分配和釋放,這些函數(shù)包含在“STDIOH”或“MALLOCH”中。,82動(dòng)態(tài)內(nèi)存分配與鏈表,1MALLOC函數(shù)(分配內(nèi)存空間函數(shù))調(diào)用形式為VOIDMALLOCSIZE其作用是在內(nèi)存中動(dòng)態(tài)獲取一個(gè)大小為SIZE個(gè)字節(jié)的連續(xù)存儲(chǔ)空間。該函數(shù)將返回一個(gè)VOID類(lèi)型的指針,若分配成功,就返回所分配的空間的起始地址,否則,就返回空指針(NULL)。2.CALLOC函數(shù)(分配內(nèi)存空間函數(shù))調(diào)用形式為VOIDCALLOCUNSIGNEDN,UNSIGNEDSIZE其作用是在內(nèi)存中動(dòng)態(tài)獲取N個(gè)大小為SIZE個(gè)字節(jié)的存儲(chǔ)空間。該函數(shù)將返回一個(gè)VOID類(lèi)型的指針,若分配成功,就返回內(nèi)存單元的起始地址,否則,返回空指針(NULL)。用該函數(shù)可以動(dòng)態(tài)地獲取一個(gè)一維數(shù)組空間,其中N為數(shù)組元素個(gè)數(shù),每個(gè)數(shù)組元素的大小為SIZE個(gè)字節(jié)。,82動(dòng)態(tài)內(nèi)存分配與鏈表,3.FREE函數(shù)(釋放內(nèi)存空間函數(shù))調(diào)用形式為VOIDFREEVOIDP其作用是釋放由P指針?biāo)赶虻膬?nèi)存空間。即系統(tǒng)回收,使這段空間又可以被其他變量所用。指針變量P是最近一次調(diào)用MALLOC或CALLOC函數(shù)時(shí)返回的值,不能是任意的地址。4REALLOC函數(shù)調(diào)用形式為VOIDRECALLOCVOIDP,UNSIGNEDSIZE其作用是將P所指的已分配的內(nèi)存空間重新分配成大小為SIZE個(gè)字節(jié)的空間。它用于改變已分配的空間的大小,可以增減單元數(shù)。函數(shù)返回新內(nèi)存的首地址,如果內(nèi)存不夠,則返回空指針(NULL)。,82動(dòng)態(tài)內(nèi)存分配與鏈表,例87分配一塊區(qū)域,輸入一個(gè)學(xué)生數(shù)據(jù)。INCLUDEINCLUDEVOIDMAIN{STRUCTSTU/定義結(jié)構(gòu)體/{INTNUMCHARNAMECHARSEXFLOATSCORE}PS/定義一個(gè)結(jié)構(gòu)體指針變量PS/PSSTRUCTSTUMALLOCSIZEOFSTRUCTSTUPSNUM102/輸入學(xué)生數(shù)據(jù)/PSNAME“ZHANGPING“PSSEXMPSSCORE625PRINTF“NUMBERD\NNAMES\N“,PSNUM,PSNAMEPRINTF“SEXC\NSCORE62F\N“,PSSEX,PSSCOREFREEPS},82動(dòng)態(tài)內(nèi)存分配與鏈表,程序運(yùn)行結(jié)果NUMBER102NAMEZHANGPINGSEXMSCORE︼6250,本程序中,定義了結(jié)構(gòu)體類(lèi)型STU,定義了STU類(lèi)型指針變量PS。然后分配一塊STU大內(nèi)存區(qū),并把首地址賦予PS,使PS指向該區(qū)域。再以PS為指向結(jié)構(gòu)體的指針變量對(duì)各成員賦值,并用PRINTF輸出各成員值。最后用FREE函數(shù)釋放PS指向的內(nèi)存空間。整個(gè)程序包含了申請(qǐng)內(nèi)存空間、使用內(nèi)存空間、釋放內(nèi)存空間三個(gè)步驟,實(shí)現(xiàn)存儲(chǔ)空間的動(dòng)態(tài)分配。,82動(dòng)態(tài)內(nèi)存分配與鏈表,823建立和輸出鏈表所謂動(dòng)態(tài)建立鏈表是指在程序執(zhí)行過(guò)程中從無(wú)到有地建立鏈表,將一個(gè)個(gè)新生成的結(jié)點(diǎn)順次鏈接入已建立的鏈表上,上一個(gè)結(jié)點(diǎn)的指針域存放下一個(gè)結(jié)點(diǎn)的起始地址,并給各結(jié)點(diǎn)數(shù)據(jù)域賦值。所謂輸出鏈表是將鏈表上各個(gè)結(jié)點(diǎn)的數(shù)據(jù)域中的值依次輸出,直到鏈表結(jié)尾。,82動(dòng)態(tài)內(nèi)存分配與鏈表,例88以三個(gè)結(jié)構(gòu)體變量為結(jié)點(diǎn)建立一個(gè)簡(jiǎn)單的鏈表并輸出。INCLUDESTRUCTNODE{INTDATASTRUCTNODENEXT}VOIDMAIN{STRUCTNODEA,B,C,HEAD,PHEAD/頭結(jié)點(diǎn)指向A結(jié)點(diǎn)/ADATA5ANEXT/A結(jié)點(diǎn)指向B結(jié)點(diǎn)/BDATA10BNEXT/B結(jié)點(diǎn)指向C結(jié)點(diǎn)/CDATA15CNEXTNULL/C結(jié)點(diǎn)是尾結(jié)點(diǎn)/PHEAD/使P指向A結(jié)點(diǎn)/WHILEPNULL{PRINTF“D“,PDATA/輸出指針P所指向結(jié)點(diǎn)的數(shù)據(jù)/PPNEXT/使P指向下一個(gè)結(jié)點(diǎn)/}PRINTF“NULL\N“},程序運(yùn)行結(jié)果51015NULL,82動(dòng)態(tài)內(nèi)存分配與鏈表,824鏈表的基本操作鏈表的基本操作包括,建立并初始化鏈表,遍歷訪問(wèn)鏈表(包括查找結(jié)點(diǎn)、輸出結(jié)點(diǎn)等),刪除鏈表中的結(jié)點(diǎn),在鏈表中插入結(jié)點(diǎn)。鏈表的各種基本操作的步驟如下。1建立鏈表①建立頭結(jié)點(diǎn)(或定義頭指針變量)。②讀取數(shù)據(jù)。③生成新結(jié)點(diǎn)。④將數(shù)據(jù)存入結(jié)點(diǎn)的數(shù)據(jù)域中。⑤將新結(jié)點(diǎn)連接到鏈表中(將新結(jié)點(diǎn)地址賦給上一個(gè)結(jié)點(diǎn)的指針域連接到鏈表)。⑥重復(fù)步驟②~⑤,直到尾結(jié)點(diǎn)為止。,82動(dòng)態(tài)內(nèi)存分配與鏈表,2.遍歷訪問(wèn)鏈表輸出鏈表即順序訪問(wèn)鏈表中各結(jié)點(diǎn)的數(shù)據(jù)域,方法是從頭結(jié)點(diǎn)開(kāi)始,不斷地讀取數(shù)據(jù)和下移指針變量,直到尾結(jié)點(diǎn)為止。3.刪除鏈表中的一個(gè)結(jié)點(diǎn)①找到要?jiǎng)h除結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)。②將要?jiǎng)h除結(jié)點(diǎn)的后驅(qū)結(jié)點(diǎn)的地址賦給要?jiǎng)h除結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)的指針域。③將要?jiǎng)h除結(jié)點(diǎn)的存儲(chǔ)空間釋放。4.在鏈表的某結(jié)點(diǎn)前插入一個(gè)結(jié)點(diǎn)①開(kāi)辟一個(gè)新結(jié)點(diǎn)并將數(shù)據(jù)存入該結(jié)點(diǎn)的數(shù)據(jù)域。②找到插入點(diǎn)結(jié)點(diǎn)。③將新結(jié)點(diǎn)插入到鏈表中,將新結(jié)點(diǎn)的地址賦給插入點(diǎn)上一個(gè)結(jié)點(diǎn)的指針域,并將插入點(diǎn)的地址存入新結(jié)點(diǎn)的指針域。,
下載積分: 4 賞幣
上傳時(shí)間:2024-01-06
頁(yè)數(shù): 93
大?。?0.54(MB)
子文件數(shù):
-
簡(jiǎn)介:謀學(xué)網(wǎng)19春學(xué)期C語(yǔ)言及程序設(shè)計(jì)在線(xiàn)作業(yè)3試卷總分100得分0一、單選題共15道試題共75分1下面正確的字符常量是AX17B80CD“““N“““正確答案C2有定義INTA34輸入其3行2列元素的正確語(yǔ)句為()ASCANF“D”A32B“SCANF“D”A21“C“SCANF“D”A21“D“SCANF“D”A21“正確答案C3若有定義INTX7FLOATA25B47則表達(dá)式AX3INTAB的值是()。A25B275C35D0正確答案A4以下程序段執(zhí)行后輸出結(jié)果()。INTIFI1IPRINTF“D”IA1B2C3D死循環(huán)正確答案D5為了避免嵌套的條件語(yǔ)句IFELSE的二義性,C語(yǔ)言規(guī)定ELSE與()是正確的。A縮排位置相同的IFB其之前最近的IFC其之后IFD同一行上的IF正確答案B6下列關(guān)于SWITCH語(yǔ)句和BREAK語(yǔ)句的結(jié)論中,只有()是正確的。12以下能對(duì)二維數(shù)組A進(jìn)行正確初始化的語(yǔ)句是()。AINTA2101523B“INTA3123456“C“INTA24123456“D“INTA310111“正確答案B13下面程序的運(yùn)行結(jié)果是()。C“TV0WILLN“PRINTF“D“STRLENCA14B3C9D字符串中有非法字符,輸出值不能確定正確答案B14有下列語(yǔ)句和賦值語(yǔ)句(1)STR”IAMABOY”(2)STR12”IAMABOY”(3)P”IAMABOY”(4)P”IAMABOY”下列說(shuō)法正確的是()A只有(1)、(2)正確B只有(3)、(4)正確C只有(1)、(3)、(4)正確D只有(3)正確正確答案B15執(zhí)行下列語(yǔ)句后,第一個(gè)輸出的值為()INCLUDESTDIOHDEFINEMDEFINENM1MAINPRINTF“DN”NA3B4C6D8正確答案A二、判斷題共5道試題共25分1已知S119S2“AB0CDEF“則執(zhí)行語(yǔ)句STRCPYS1S2后,變量S的內(nèi)容是不能確定。A錯(cuò)誤B正確正確答案A2聲明語(yǔ)句INTA310111能對(duì)二維數(shù)組A進(jìn)行正確初始化。A錯(cuò)誤B正確正確答案A
下載積分: 5 賞幣
上傳時(shí)間:2024-03-15
頁(yè)數(shù): 4
大?。?0.03(MB)
子文件數(shù):
-
簡(jiǎn)介:1C程序設(shè)計(jì)習(xí)題參考答案習(xí)題一2習(xí)題二3習(xí)題三5習(xí)題四8習(xí)題五14習(xí)題六17習(xí)題七20習(xí)題八26習(xí)題九33習(xí)題十35習(xí)題十一363⑴請(qǐng)上機(jī)調(diào)試、運(yùn)行本章課本上C語(yǔ)言程序例題4~6(注釋部分可以不必輸)⑵仿照例6編程,輸入兩個(gè)變量后,輸出其中較大的值。INCLUDEVOIDMAININTABPRINTF“請(qǐng)輸入A,B的值N“SCANF“DD“IFABPRINTF“DN“AELSEPRINTF“DN“B⑶仿照例題編程,輸入圓柱體的半徑和高,計(jì)算并輸出圓柱體的體積。INCLUDEVOIDMAINFLOATRHVPRINTF“請(qǐng)輸入半徑、高的值N“SCANF“FF“VRR3141593HPRINTF“FN“V習(xí)題二11將下列程序上機(jī)運(yùn)行,寫(xiě)出你所使用的將下列程序上機(jī)運(yùn)行,寫(xiě)出你所使用的C語(yǔ)言處理系統(tǒng)中語(yǔ)言處理系統(tǒng)中SHTSHT、INTINT以及以及LONGLONG類(lèi)型數(shù)據(jù)的字長(zhǎng)和數(shù)值范圍。型數(shù)據(jù)的字長(zhǎng)和數(shù)值范圍。INCLUDEVOIDMAINPRINTF“SHT類(lèi)型數(shù)據(jù)的字長(zhǎng)為DN“SIZEOFSHTPRINTF“INT類(lèi)型數(shù)據(jù)的字長(zhǎng)為DN“SIZEOFINTPRINTF“LONG類(lèi)型數(shù)據(jù)的字長(zhǎng)為DN“SIZEOFLONG解答VC環(huán)境下,分別為2、4、422仿照題仿照題1編程,測(cè)試編程,測(cè)試FLOATFLOAT、DOUBLEDOUBLE類(lèi)型數(shù)據(jù)的字長(zhǎng)。類(lèi)型數(shù)據(jù)的字長(zhǎng)。INCLUDEVOIDMAINPRINTF“FLOAT類(lèi)型數(shù)據(jù)的字長(zhǎng)為DN“SIZEOFFLOATPRINTF“DOUBLE類(lèi)型數(shù)據(jù)的字長(zhǎng)為DN“SIZEOFDOUBLE33判斷下列各個(gè)敘述的正確與否。判斷下列各個(gè)敘述的正確與否。⑴C的LONG類(lèi)型數(shù)據(jù)可以表示任何整數(shù)【╳】⑵任何變量都必須要聲明其類(lèi)型【√】⑶C的任何類(lèi)型數(shù)據(jù)在計(jì)算機(jī)內(nèi)都是以二進(jìn)制形式存儲(chǔ)的【√】⑷SCANF函數(shù)中的格式符“D”不能用于輸入實(shí)型數(shù)據(jù)【√】⑸格式符中指定寬度時(shí),從緩沖區(qū)中讀入的字符數(shù)完全取決于所指定的寬度【√】⑹按格式符“D”輸出FLOAT類(lèi)型變量時(shí),截?cái)嘈?shù)位取整后輸出【╳】
下載積分: 7 賞幣
上傳時(shí)間:2024-05-22
頁(yè)數(shù): 40
大?。?0.4(MB)
子文件數(shù):