版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
目錄TOC\o"1-5"\h\z\o"CurrentDocument"第一章C語言基礎(chǔ)知識 1\o"CurrentDocument"第二章C語言程序設(shè)計(jì)的初步知識 3\o"CurrentDocument"第三章順序結(jié)構(gòu)程序設(shè)計(jì) 13\o"CurrentDocument"第四章選擇結(jié)構(gòu)程序設(shè)計(jì) 21\o"CurrentDocument"第五章循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 35\o"CurrentDocument"第六章數(shù)組 49\o"CurrentDocument"第七章函數(shù) 59\o"CurrentDocument"第八章指針 74\o"CurrentDocument"第九章結(jié)構(gòu)體與共用體 95\o"CurrentDocument"第十章文件 103\o"CurrentDocument"附錄1預(yù)處理命令 107\o"CurrentDocument"附錄2位運(yùn)算 111\o"CurrentDocument"模擬試題ー 115\o"CurrentDocument"模擬試題二 120\o"CurrentDocument"模擬試題三 125\o"CurrentDocument"模擬試題四 131\o"CurrentDocument"模擬試題五 137第一章答案 錯(cuò)誤!未定義書簽。第二章答案 錯(cuò)誤!未定義書簽。第三章答案 錯(cuò)誤!未定義書簽。第四章答案 錯(cuò)誤!未定義書簽。第五章答案 錯(cuò)誤!未定義書簽。第六章答案 錯(cuò)誤!未定義書簽。第七章答案 錯(cuò)誤!未定義書簽。第八章答案 錯(cuò)誤!未定義書簽。模擬試題ー答案模擬試題模擬試題ー答案模擬試題二答案模擬試題三答案模擬試題四答案模擬試題五答案第九章答案 錯(cuò)誤!未定義書簽。第十章答案 錯(cuò)誤!未定義書簽。附錄1答案 錯(cuò)誤!未定義書簽。附錄2答案 錯(cuò)誤!未定義書簽。錯(cuò)誤!未定義書簽錯(cuò)誤!未定義書簽錯(cuò)誤!未定義書簽錯(cuò)誤!未定義書簽錯(cuò)誤!未定義書簽第一章C語言基礎(chǔ)知識ー、選擇題.c語言規(guī)定,必須用作為主函數(shù)名。(0級)A)FunctionB)includeC)main D)stdio.一個(gè)C程序可以包含任意多個(gè)不同名的函數(shù),但有且僅有一個(gè),ー個(gè)C程序總是從開始執(zhí)行。(0級)A)過程 B)主函數(shù) C)函數(shù)D)include.是C程序的基本構(gòu)成單位。(0級)A)函數(shù)B)函數(shù)和過程 〇超文本過程 D)子程序.下列說法正確的是。(0級)A)ー個(gè)函數(shù)的函數(shù)體必須要有變量定義和執(zhí)行部分,二者缺一不可B)ー個(gè)函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒有變量定義〇ー個(gè)函數(shù)的函數(shù)體可以沒有變量定義和執(zhí)行部分,函數(shù)可以是空函數(shù)D)以上都不對.下列說法正確的是。(0級)main函數(shù)必須放在C程序的開頭main函數(shù)必須放在C程序的最后main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時(shí)是從程序開頭執(zhí)行的main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時(shí)是從main函數(shù)開始的.下列說法正確的是。(0級)A)在執(zhí)行C程序時(shí)不是從mian函數(shù)開始的C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個(gè)語句C程序書寫格式自由,一個(gè)語句可以分寫在多行上C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫ー個(gè)語句,并要有行號.在C語言中,每個(gè)語句和數(shù)據(jù)定義是用結(jié)束。(0級)A)句號B)逗號 C)分號D)括號.下列字符串是標(biāo)識符的是。(0級)教材第19頁,只能有數(shù)字,字母和ド劃線組成,且第-個(gè)字符不能為數(shù)字A)_HJ B)9_studentC)longD)LINE1.以下說法正確的是。(0級)A)C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行B)在C語言程序中,要調(diào)用的函數(shù)必須在main〇函數(shù)中定義C)C語言程序總是從main()函數(shù)開始執(zhí)行D)C語言程序中的main。函數(shù)必須放在程序的開始部分10.不是C語言提供的合法關(guān)鍵字。(0級)A)switchB)printC)caseD)default11.C語言提供的合法關(guān)鍵字是ー_o(0級)題目錯(cuò)了!A)breackB)printC)funitonD)end12.C語言提供的合法關(guān)鍵字是ー_。(0級)A)continueB)procedureC)beginD)appendC語言規(guī)定:在ー個(gè)源程序中,main函數(shù)的位置 ?(02-03第一學(xué)期試題)A)必須在最開始 B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C)可以在任意位置 D)必須在源文件的最后ー個(gè)C語言程序是由 。(02~03第一學(xué)期試題)A)一個(gè)主程序和若干個(gè)子程序組成;B)函數(shù)組成,并且每ー個(gè)C程序必須且只能由一個(gè)主函數(shù);C)若干過程組成;D)若干子程序組成.二、填空題.ー個(gè)C程序至少包含一個(gè) 主函數(shù) ,即main函數(shù)。(0級).一個(gè)函數(shù)由兩部分組成,它們是 函數(shù)說明部分和 函數(shù)體。(0級).函數(shù)體的范圍是最外層的ー對大花括號內(nèi) 。(0級).函數(shù)體一般包括 變量定義部分和執(zhí)行部分。(0級).C語言是通過.輸入輸出函數(shù) 來進(jìn)行輸入輸出的。(0級).在C語言中,凡在ー個(gè)標(biāo)識符后面緊跟著ー對圓括弧,就表明它是ー個(gè)ー函數(shù) 〇(0級).主函數(shù)名后面的ー對圓括號中間可以為空,但ー對圓括號不能小寫。(0級)第二章C語言程序設(shè)計(jì)的初步知識ー、選擇題(該作業(yè)中空類型不屬于基本類型)1.在C語言中,下列類型屬于構(gòu)造類型的是ー(0級)A)整型B)字符型 〇實(shí)型D)數(shù)組類型2?在C語言中,下列類型屬于構(gòu)造類型的是___。(0級)A)空類型B)字符型 C)實(shí)型D)共用體類型3?在C語言中,下列類型屬于構(gòu)造類型的是(0級)A)整型B)指針類型 C)實(shí)型D)結(jié)構(gòu)體類型4.在C語言中,下列類型屬于基本類型的是ー_。(0級)A)整型、實(shí)型、字符型 B)空類型、枚舉型〇結(jié)構(gòu)體類型、實(shí)型D)數(shù)組類型、實(shí)型.下列類型屬于基本類型的是。(0級)A)結(jié)構(gòu)體類型和整型 B)結(jié)構(gòu)體類型、數(shù)組、指針、空類型C)實(shí)型 D)空類型和枚舉類型.下列字符串屬于標(biāo)識符的是。(0級)A)INT B)5_student C)2ong D)!DF.下列字符串屬于標(biāo)識符的是〇(0級)A)_WL B)3_3333 C)int D)LINE3.下列字符串不屬于標(biāo)識符的是。(0級)A)sum B)average C)day_night D)M.D.JOHN.下列字符串不屬于標(biāo)識符的是=(0級)A)total B)lutos_l_2_3C)_night D)$123.下列字符串不屬于標(biāo)識符的是。(0級)A)_aboveB)all C)_end D)#dfg.C語言中不能用來表示整常數(shù)的進(jìn)制是。(0級)A)十進(jìn)制B)十六進(jìn)制 C)ハ進(jìn)制D)二進(jìn)制.C語言中能用來表示整常數(shù)的進(jìn)制是。(0級)A)十進(jìn)制、ハ進(jìn)制、十六進(jìn)制 B)十二進(jìn)制、十進(jìn)制C)六進(jìn)制、ハ進(jìn)制 D)二進(jìn)制、十進(jìn)制.在C語言中,回車換行符是。(O級)A)\n B)\t C)\v D)\b.在C語言中,退格符是。(0級)A)\n B)\t C)\v D)\h.在C語言中,反斜杠符是?(0級)A)\nB)\tC)\vD)\\.在ASCII碼表中可以看到每個(gè)小寫字母的ASCI!碼比它相應(yīng)的大寫字母的ASCII碼。(0級)A)大32 B)大64C)小32D)小64.設(shè)d為字符變量,下列表達(dá)式不正確的是〇(0級)A)d=97 B)d='a' C)d="a" D)d='g'.設(shè)d為字符變量,下列表達(dá)式正確的是。(0級)A)d=678 B)(/=%' C)dゴd” D)d=,gjkl,教材2.6節(jié).lM'a,+1.5-567.345/'b,的結(jié)果是 型數(shù)據(jù)。(0級)A)longB)doubleC)ini D)unsignedfloat.語句inti=3;k=(i++)+(i++)+(i++);執(zhí)行過后k的值為,i的值為。<〇級)A)9,6B)12,5C)18,6D)15,5.如果i=3,貝リk=(i++)+(++i)+(i++)執(zhí)行過后k的值為,i的值為。(1級)A)12,6B)12,5C)18,6D)15,5.如果i=3,則k=(++i)+(++i)+(i++)執(zhí)行過后k的值為,i的值為。(1級)A)15,6B)12,5C)18,6D)15,5.如果!=3J則k=(++i)+(++i)+(++i)執(zhí)行過后k的值為,i的值為。(1級)A)9,6B)12,5C)18,6D)15,5.如果inti=3,則printf(“%d”,-i++)的結(jié)果為,i的值為〇(1級)A)-3,4B)-4,4C)-4,3D)-3,3.如果inti=3,intj=4,則k=i+++j執(zhí)行之后k,i和j的值分別為0(1級)++的優(yōu)先級大于+A)7,3,4B)8,3,5 C)7,4,4 D)8,4,5.已知在ASCI!字符集中,數(shù)字〇的序號為48,下面程序的輸出結(jié)果為。(1級)main(){charx,y;x=U;y=9;primf("%d,%d\n'',x,y);)A)因輸出格式不合法,輸出錯(cuò)誤信息B)48,57C)0,9 D)48,58.已知在ASCI!字符集中,字母A的序號為65,下面程序的輸出結(jié)果為(1級)main(){charc=,A,;inti=10;c=c+10;i=c%i;printf(44%c,%d\n,\c,i);)A)75,7 B)75,5C)K,5 D)因存在非圖形字符,無法直接顯示出來28.已知在ASCII集中,字母A的序號為65,下面程序的輸出結(jié)果為(1級)main(){charcl=,B\c2=,Y,;printf("%d,%d\n”,++cl,-c2);A)輸出格式不合法,輸出錯(cuò)誤信息B)67,88C)66,8929.C語言中最簡單的數(shù)據(jù)類型包括ーD)C,X 。(1級)A)整型,實(shí)型,邏輯型B)整型,實(shí)型,字符型〇整型,字符型,邏輯型D)整型,實(shí)型,邏輯型,字符型30.C語言中,運(yùn)算對象必須是整型數(shù)的運(yùn)算符是 _?(1級)A)% B)\31..下列常數(shù)中,合法的C常量是ーC)%和、ー。(1級)D)**A)-0. B)'105'32.下列常數(shù)中,合法的C常量是ーC)AB'ー〇(1級)D)3+5A)"x-y" B),105,33.下列常數(shù)中,合法的C常量是ーC)'Be'—.(1級)D)7ffA) B)e-31034.下列常數(shù)中,不合法的C常量是ーC)'DEF 。(!級)D)‘1234’A)-0x2al B)lg335,下列常數(shù)中,不合法的C常量是ーC)'[' 〇(1級)?!篊HINA”A)-0x3bl B)123e+2.336.下列符號中,可以作為變量名的是C)'}': ?(1級)D)6e+7A)+a B)12345e37.下列符號中,可以作為變量名的是C)a3B。(1級)D)5e+0
D)nextdayD)nextday38.下面程序的輸出結(jié)果是。(1級)main(){intx;x=?3+4*5-6;printf("%d”,x);x=3+4%5-6;printfCt%d,,,x);*=?3*4%?6/5ゆ血ザ%ザ送);求余的優(yōu)先級與乘除相同,負(fù)號優(yōu)先級最高x=(7+6)%5/2;prirnf("%d”,x);)B)11-321D)11121B)11-321D)11121。(1級)*=是賦值運(yùn)算符號,右結(jié)合B)1040D)8,4.(1級)C)12-321.下面程序的輸出結(jié)果是ーmian(){intx=2,y=0,z;x*=3+2;printf("%d”,x);x*=y=z=4;printf(u%d*\x);)A)840C)10,4.下面程序的輸出結(jié)果是ーmain(){intx=2,y=0,z;x+=3+2;printf(tt%d,,,x);x*=y=z=4;printf("%d",x);)A)728B)無法計(jì)算 C)7,4D)8,4.下面程序的輸出結(jié)果是0(1級)main。{intx=4,y=0,z;x*=3+2;printf(“%d”,x);x*=y==(z=4);printf("%d",x);=ニ的優(yōu)先級高于?二}A)1440B)200C)204D)144.下面程序的輸出結(jié)果是。(1級)main(){inti,j;i=16;j=(i++)+i;prinlf("%d”,j);i=15;printf("%d%d”,++i,i);)A)321615 B)331515C)341516 D)341615.在C語言中,以下合法的字符常量是〇(1級)A)'084,B)”43,C)'O'D)T,\0n.若已定義X和Y為double類型,則表達(dá)式:x=l,y=x+3/2的值為0(1級)A)1 B)2 C)2.0D)2.5.下列程序的執(zhí)行結(jié)果是〇(1級)#include<stdio.h>#definesum10+20main(){intb=0,c=0;b=5;c=sum*b;prmtf(,,%dH,c);}A)100B)110C)70D)150列程序的執(zhí)行結(jié)果是〇(1級)#include<stdio.h>#definesum(10+20)mian()(inta=0,b=0,c=0;a=sum;b=5;c=sum*b;printf(n%d\c);}A)100B)110C)70D)15047.表達(dá)式(int)2.1416的值為〇(1級)A)2 B)2.1 C)0 D)348.表達(dá)式(double)(20/3)的值為。(1級)A)6 B)6.0 C)2 D)349.在下面幾組數(shù)據(jù)類型中,全是基本數(shù)據(jù)類型是哪ー組?(02-03第?學(xué)期試題)A)試題)A)整型實(shí)型字符型〇數(shù)組結(jié)構(gòu)體共用體50.以下說法正確的是ーB)整型數(shù)組指針D)指針邏輯型空類型.(02-03第一學(xué)期試題)A)B)C)D)A)B)C)D)在C程序中,無論是整數(shù)還是實(shí)數(shù),其存放形式都一致.在C程序中,先是只能用于整數(shù)運(yùn)算的運(yùn)算符.在C程序中,變量可以不必先定義就可使用.51.假設(shè)所有變量均為整型,則表達(dá)式(a=5,b=2,a++,a+b)的值是(02~03第?學(xué)期試題)?般逗號運(yùn)算是做了實(shí)際運(yùn)算的printf("%d\n",(a=5,a++,a));A)8B)7C)6D)552.若有以下定義,則正確的賦值語句為?(O2~O3第?學(xué)期試題)inta,b;floatx;A)a=l,b=2, B)b++;C)a=b=5 D)b=int(x);..C語言規(guī)定標(biāo)識符由等字符組成.(01~02第:學(xué)期試題)A)字母數(shù)字下劃線 B)中劃線字母數(shù)字C)字母數(shù)字逗號 D)字母下劃線中劃線.若有如下定義:inta=2,b=3;floatx=3.5,y=2,5:則表達(dá)式:(float)(a+b)/2+(int)x%(int)y的值是,強(qiáng)制類型轉(zhuǎn)換的優(yōu)先級高于除號(01~02第二學(xué)期試題)A)2.500000B)3.500000 04.500000D)5,000000.以下表達(dá)式:2+,a'+i*f,其中i為整型變量,f為float型變量,則表達(dá)式的最終數(shù)據(jù)類型為ー。(〇1~02第二學(xué)期試題)A)int B)floatC)charD)double56?若有:inta,b=2;貝リa=(b*100+1.5,100)貝リa的值是=(01-02第二學(xué)期試題)A)100B)100.5C)200.5D)300.5.有如下語句:printf(“%s,%5.3s\n”,“COMPUTER",“COMPUTER");執(zhí)行語句后的最終結(jié)果為ー?(01-02第二學(xué)期試題)P60,Printf函數(shù)使用A)COMPUTER,CMP. B)COMPUTER,CMP.C)COMPU,CMP. D)COMPU,CMP.已知ch是字符型變量,下面不正確的賦值語句是:。(03試題)A)ch=''0' B)ch='a+b'C)ch='7'+'9'D)ch=7+9.若x和y都為float型變量,且x=3.6,y=5.8執(zhí)行下列語句后輸出結(jié)果為: 。(03試題)printf(tt%f\(x,y));A)3.600000C)3.600000,5.800000B)5.800000D)輸出符號不夠,輸出不正確值.設(shè)變量a是整型,變量f是實(shí)型,變量I是雙精度型,則表達(dá)式10+,a,+I*f值的數(shù)據(jù)類型:〇(往屆試題)A)intB)floatC)doubleD)不確定.已知字母A的ASCII碼為十進(jìn)制65,下面程序段的運(yùn)行結(jié)果為:。(往屆試題)charchl,ch2;chl='A'+5-3;ch2='A'+6~3;printf(**%d,%c\n”,chl,ch2);A)67,DB)B,C C)C,DD)不確定值.以下不正確的C語言標(biāo)識符是。(04-05第二學(xué)期試題)A)ABCB)abcC)a_bcD)ab.c.設(shè)x、y均為float型變量,則以下不合法的賦值語句是。(04-05笫ー學(xué)期試題)A)++x; B)j=(x%2)/10;C)x*=y+8; D)x=y=0;.若有說明語句:charc=*\645;則變量C包含:。(往屆試題〉21個(gè)字符 B)2個(gè)字符C)3個(gè)字符 D)說明不合法,C值不確定。.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為。(往屆試題)sqrl開方A)加f B)floatC)double D)不確定.設(shè)整型變量a值為9,則下列表達(dá)式中使b的值不為4的表達(dá)式:0(往屆試題)A)b=a/2 B)b=a%2C)b=8-(3,a-5) D)b=a>5?4:2.設(shè)有以下定義,則能使值為3的表達(dá)式是:〇(往屆試題)intk=7,x=12;A)x%=(k%=5) B)x%=(k-k%5)C)x%=k D)(x%=k)-(k%=5).以下選項(xiàng)中是C語言的數(shù)據(jù)類型的是:〇(往屆試題)A)復(fù)數(shù)型 B)邏輯型C)雙精度型 D)集合型二、填空題.C語言的數(shù)據(jù)類型有四大類,分別是ーヽヽーヽー。(0級)基本類型構(gòu)造類型指針類型空類型.C語言數(shù)據(jù)類型中構(gòu)造類型包括三種,他們是ーヽヽー?(0級).數(shù)組類型結(jié)構(gòu)體類型共用體類型.C語言基本數(shù)據(jù)類型包括ーヽーヽーヽー〇(0級)整型 字符型實(shí)型枚舉類型.在C語言屮,程序運(yùn)行期間,其值不能被改變的量叫」量一。(0級)5?在C語言中,常量有不同的類型,包括ヽヽ一和一等。(0級)整型常量實(shí)型常量字符常量字符串常量.符號常量是指用ー個(gè)標(biāo)識符代表ー個(gè)常量。(0級).整型常量和實(shí)型常量也稱為數(shù)值型常量 ,它們有正負(fù)之分?(0級).在C語言中,在習(xí)慣上符號常景名用大寫 ,變量用小寫。(大寫或小寫)(0級)9?在C語言中,變量是其值可以改變的量。(0級).變量也有不同類型,加整形、實(shí)型和字符型等。(0級).C語言在定義變量的同時(shí)說明變量的 數(shù)據(jù)類型,系統(tǒng)在編譯時(shí)就能根據(jù)變量定義及其數(shù)據(jù)類型為它分配相應(yīng)數(shù)量的存儲(chǔ)空間。(0級).在C語言中,用來標(biāo)識變量名,符號常量名,函數(shù)名,數(shù)組名,類型名,文件名的有效字符序列稱為標(biāo)識符。(0級).在C語言中,標(biāo)識符只能由字母、數(shù)字和下劃線 三種字符組成,且第一個(gè)字符必須字母或下劃線。(0級).在C語言中,要求對所有用到的變量,遵循先定義后使用的原則。(0級).可以用來表示C的整常數(shù)的進(jìn)制是十、十六、ハ。(0級).整型變量可分為基本型、短整型 、長整形、無符號四種,分別用intshortlongunsigned0(0級).在ー個(gè)整常量后面加一個(gè)字母丄和_L,則認(rèn)為是longint型常量。(0級).在C語言中,實(shí)數(shù)有兩種表現(xiàn)形式,是十進(jìn)制和指數(shù)形式.(0級).實(shí)型變量分為單精度和雙精度,即float和double型。(0級).C的字符常量是用單括號括起來的?個(gè)字符。(0級).在一個(gè)變量定義語句中可以同時(shí)定義多個(gè)變量,變量之間用逗號隔開。(0級).C語言中規(guī)定,在變量定義的同時(shí)也可以給變量賦初值,叫做變量初始化。(0級).下面的程序這個(gè)題目有點(diǎn)問題mian(){printf("abc\tde\rfg\n");/*5白處分別為兩個(gè)和一個(gè)空格?/prinlf("h\ti\b\bjk");/?空白處為三個(gè)空格?/)運(yùn)行結(jié)果是〇(1級)fgc deh 型的取值范圍是ー2い?(2凡1) 。(0級).在C語言中,字符型數(shù)據(jù)和整型數(shù)據(jù)之間可以通用,一個(gè)字符數(shù)據(jù)既能字符輸出,也可以整型輸出。(0級).下面的程序main(){charcl,c2;cl='a';c2=V;c1=c1-32;c2=c2-32;printf("%c%c",cl,c2);}運(yùn)行結(jié)果為A*B。(0級).在ASCII代碼表中可以看到每ー個(gè)小寫字母比相應(yīng)的大寫字母的ASCII代碼大32 -(0級).C的字符串常量是用雙引號 括起來的字符序列。(0級).在C語言中,系統(tǒng)在每ー個(gè)字符串的結(jié)尾自動(dòng)加一個(gè)“字符串結(jié)束標(biāo)志符”即2 ,以便系統(tǒng)據(jù)此數(shù)據(jù)判斷字符串是否結(jié)束。(0級).表達(dá)式10+'a'+1.5-0.5*'b,的結(jié)果59.5 。(1級).表達(dá)式10+'a'+1.5-567.345/'b'的結(jié)果是double型數(shù)據(jù)。(1級教材P32有說明.在TURBO中,單精度實(shí)數(shù)的取值范圍在之間。(1級).在C語言中,加減乘除這些運(yùn)算符需要兩個(gè)運(yùn)算對象,稱為雙目運(yùn)算符。.在C語言中.算術(shù)運(yùn)算符的結(jié)合性是左結(jié)合。(1級).下面的程序mian(){floatx;inti;x=3.6;i=(int)x;printf("x=%f,i=%d",x,i);}運(yùn)行結(jié)果為_x=3.600000,i=3 。(1級).如果inti=3,則printf("%d",-i++)執(zhí)行后輸出是二3_,i的結(jié)果是4 。(1級).在C語言中,表達(dá)式的類型有,,,,—,ー。(1級)賦值表達(dá)式算術(shù)表達(dá)式關(guān)系表達(dá)式邏輯表達(dá)式條件表達(dá)式逗號表達(dá)式.逗號表達(dá)式的形式如下:表達(dá)式1,表達(dá)式2則逗號表達(dá)式的結(jié)果是 先達(dá)式2的值.(1級).表達(dá)式x=(a=3,6*3)和表達(dá)式x=a=3,6*a分別是賦值表達(dá)式和逗號表達(dá)式.兩個(gè)表達(dá)式執(zhí)行完的結(jié)果是18和18.執(zhí)行后X的值分別是18.3—.(1級).main(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);|運(yùn)行后i,j,m,n的才是8」1910 .(1級).在C語言中的運(yùn)算符優(yōu)先級最小的是逗號運(yùn)算符.(I級)42.在C語言中,可以利用 強(qiáng)制類型轉(zhuǎn)換 ,將一個(gè)表達(dá)式的值轉(zhuǎn)換成指定的類型。第三章順序結(jié)構(gòu)程序設(shè)計(jì)ー、選擇題.C語言中調(diào)用printf進(jìn)行輸出時(shí)需要注意,在格式控制串中,格式說明與輸出項(xiàng)的個(gè)數(shù)必須相同。如果格式說明的個(gè)數(shù)小于輸出項(xiàng)的個(gè)數(shù),多余的輸出項(xiàng)將:如果格式說明的個(gè)數(shù)多于輸出項(xiàng)的個(gè)數(shù),則對于多余的格式將輸出不定值(或0)。(0級)A)不予輸出 B)輸出空格C)照樣輸出 D)輸出不定值或。.在scanf函數(shù)的格式控制中,格式說明的類型與輸入的類型應(yīng)該ーー對應(yīng)匹配。如果類型不匹配,系統(tǒng)。(〇級)A)不予接收B)并不給出出錯(cuò)信息,但不可能得出正確信息數(shù)據(jù)C)能接受正確輸入D)給出出錯(cuò)信息,不予接收輸入.下列說法正確的是。(0級)A)輸入項(xiàng)可以是ー個(gè)實(shí)型常量,如scanf("%f',4.8);B)只有格式控制,沒有輸入項(xiàng)也能進(jìn)行正確輸入,如scanf("a=%d,b=%d"):〇當(dāng)輸入ー個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分應(yīng)規(guī)定小數(shù)點(diǎn)后的位數(shù),如scanf("%5.3f',&f):0,當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量的地址,如scanf("%F,&f);生根據(jù)題目中已給出的數(shù)據(jù)的輸入和輸出形式,程序中輸入/輸出語句的正確是ー。(1級)main()(inta;floatx;printf(Hinputa,x:n);輸入語句輸出語句}輸入形式inputa,x:32.1輸出形式a+x=5.10A)scanf("%d,%f\&a,&x); 〃逗號printf(u\na+x=%4.2f',a+x);scanf(n%d%f;&a,&x); 〃不是句號//6.1->.2〃輸入不能//6.1->.2〃輸入不能用精度D)10,10,16D)ll,ll,16printf("\na+x=%4.2f',a+x);scanf(H%d%f',&a,&x);printf(n\na+x=%6.1f',a+x);scanf("%d%3.1f;&a,&x);printf("\na+x=%4.2f',a+x);え以下程序的輸出結(jié)果是〇(1級)main()(inti=010,j=10,k=0xl0;printf(”%d,%d,%d\n”,i,j,k);A)8J0,16 B)8,10,10 C)10,10,10.以下程序的輸出結(jié)果是。(1級)main()(inti=011,j=ll,k=0xll;printf(H%d,%d,%d\nM,i,j,k);)A)9J1,17 B)9,11,11 011,11,11.以下程序的輸出結(jié)果是〇(1級)#include<stdio.h>main(){printf("%d\n",NULL);} //null參考stdio.hA)不確定的值(因變量無定義) B)0C)-l D)1.以下程序的輸出結(jié)果是。(1級)main()(charcl=<6,,c2=,0,;printf(n%c,%c,%d,%d\n';cl,c2,cl-c2,c1+c2);)A)因輸出格式不合法,輸出出錯(cuò)信息B)6,0,6,102C)6,0,7,6 D)6,0,5,7.設(shè)有如下定義intx=10,y=3,z;則語句printf(H%d\nM,z=(x%y,x/y));的輸出結(jié)果是。(1級)A)3 B)0 C)4 D)1.設(shè)有如下定義intx=10,y=5,z;則語句printfC*%d\nH,z=(x+=y,x/y));的輸出結(jié)果是〇(1級)A)1 B)0 C)4 D)3IL以下程序的輸出結(jié)果是〇(1級)main(){intx=10,y=10;printf(u%d%d\n",x—y);)A)1010 B)99 C)910 D)109】2.寫出下面程序的輸出結(jié)果。(1級)main(){intx;x=?3+4*5-6;printf("%d”,x);x=3+4%5-6;printf(,,%d,\x);x=-3*4%6/5;printf(”%d”,x);x=(7+6)%5/2;printf("%d”,x);)A)//101B)ll-321 C)12-321D)ll12113.寫出下面程序的輸出結(jié)果。(1級)main()(intx,y,z;x=y=l;z=x++-l;printf("%d,%d\t",x,z);z+=-x+++(++y);printf("%d,%d",x,z);)A)2,03,0 B)2,l3,0 C)2,02,1 D)2,l0,1】4.寫出下面程序的輸出結(jié)果。(!級)main。(intij;i=20;j=(++i)+i;printf(u%dnJ);i=13;printf(M%d%d),i++,i);A)4214,13 B)4114,14 C)421313 D)421314.若有定義:加ス,丫ゆ継へ展;并有以下輸入數(shù)據(jù)(此處,vcr>代表換行符)12<cr>ABC<cr>則能給x賦整數(shù)1?給y賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的正確程序段是〇(1級)A)scanf(nx=%dy=%du,&x,&y);a=getchar();b=getchar();c=getchar();B)scanf(',%dy%d,',&x,&y);a=getchar();b=getchar();c=getchar();C)scanf(n%d%d%c%c%c%c%c%cn,&x,&y,&a,&a,&b,&b,&c,&c);D)scanf(H%d%d%c%c%c&x,&y,&a,&h,&c);.若已知a=10,b=20,則表達(dá)式!avb的值為〇(1級)A)10 B)20 CH D)0.prinlf函數(shù)中用到格式符“%4s”,其中數(shù)字4表示輸出的字符串站用4列。如果字符串長度大于4,則按原字符長從左向右全部輸出;如果字符串長度小于4,則輸出方式為。(1級)A)從左起輸出該字符串,右補(bǔ)空格 B)按原字符長從左向右全部輸出C)右對齊輸出該字符,左補(bǔ)空格 D)輸出錯(cuò)誤信息.以下C程序,正確的運(yùn)行結(jié)果是〇(1級)main()longy=-34567;printf(,'y=%-81d\nlongy=-34567;printf(,'y=%-81d\n,',y);printf(,'y=%-O81d\n',,y);printf(ny=%O81d\nM,y);printf(My=%+81d\n",y);)A)y=-34567y=-34567y=-0034567y=-34567Qy=-34567y=-34567y=-0034567y=-3456719.C程序的基本編譯單位是ーA)函數(shù)B)文件〃比較偏B)y=-34567y=-34567y=-0034567y=+-34567D)y=-34567y=-0034567y=00034567y=+34567〇(01?02第二學(xué)期試題)〇源文件D)子程序20.設(shè)有如下定義和執(zhí)行語句,其輸出結(jié)果為:〇(03試題)inta=3,b=3;a=—b+1;printf(ut%d%d",a,b);A)32B)42 022D)23.根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為:0(往屆試題)已有定義:floatal,a2;數(shù)據(jù)的輸入方式:4.5233.52scaれ成“啊啊ユ&al,&a2);scanfC%f,%f,,,al,a2);scanf("%4.3f,%3.2f”,&al,&a2);scanfC%4.3f%3.2f,\aha2);.以下程序的輸出結(jié)果是:。(往屆試題)main(){int1=012,j=12,k=0xl2;printf(t6%d,%d,%d\n,,,I,j,k);A)10,12,18 B)12,12,12C)10,12,12 D)12,12,1823.以下程序的輸出結(jié)果是:(注:一表示空格)〇(往屆試題)main(){primf「Xn*sl=%8s*",“china");TOC\o"1-5"\h\zprintf(%*s2=%-5s*”,“chi”); }A)*sl=china一一一* B)*sl=china-一一?*s2=chi**s2=chi一*C)*sl=ーーーchina*D)*slニーー一china**s2ニーーchi**s2=chi一B*二.填空題LC語言中的語句可分為5類,即ー、、、一 > 。(0級)TOC\o"1-5"\h\z.控制語句空語句復(fù)合語句 函數(shù)調(diào)用語句 表達(dá)式語句.由一次函數(shù)調(diào)用加一個(gè)分號構(gòu)成一個(gè)函數(shù)調(diào)用語句。(0級).putchar函數(shù)的作用是 向終端輸出,個(gè)字符 。(0級).prinビ是C語言提供的標(biāo)準(zhǔn)輸出函數(shù),它的作用是一向終端格式輸出 。(0級).printf函數(shù)的“格式控制”包括兩部分,他們是一格式說明和普通字符 。(0級).對不同類型的語句有不同的格式字符。例如: d格式字符是用來輸出十進(jìn)制整數(shù),―J格式字符是用來輸出ー個(gè)字符, s 格式字符是用來輸岀ー個(gè)字符串。(0級).%-ms表示如果串長小于 m,則在m列范圍內(nèi),字符串向左靠,右補(bǔ)空格。(0級).如果要輸出字符“%”,則應(yīng)該在“格式控制”字符串中用%%表示。(0級)?getchar函數(shù)的作用是從終端輸入一個(gè)字符。(0級)10.符號“&”是地址運(yùn)算符,&a是指 a在內(nèi)存中的地址 。(0級)1l.scanf函數(shù)中的"格式控制"后面應(yīng)當(dāng)是變量地址,而不是變量名。(0級)12.C語言中的空語句就是分號。(0級)は電合語句是由一對花括號括起來的若干語句組成。(0級)14.分析下面程序:#include<stdio.h>main(){intx=2,y,z;x*=3+2;printf(n%d\n',,x);x*=y=z=4;printf(',%d\n,\x);x=y=z;printf(t,%d\nT,,x);x=(y=z);printf("%d\nn,x);)程序的輸出結(jié)果為 10<CR>40<CR>4vCR>4<CR>(<CR>表示回車換行符)=(I級).編制程序?qū)?shí)數(shù)a與b進(jìn)行加,減,乘,除計(jì)算,要求顯示如下結(jié)果。(答案不是唯一的)jia=70.000000jian=30.000000cheng=1000.000000chu=2.5000000程序:#include<stdio.h>voidmain(void){ CD TOC\o"1-5"\h\za=50.0;b=20.0;printf(Miia=%f^,;(2) );Drintf(niian=%f\nu (3) );printf(Hcheng=%f\n",⑷ );printffnchu=%f\n>\ (5) ):將缺少的部分填在空白處。(1級)doublea,b;a+ba-ba*ba/b.下列程序的輸出結(jié)果是。(1級)#include<stdio.h>main(){chara;a='A';printf("%d%c",a,a);165A分析下面程序main()(intx=2,y,z;x*=3+2;printf(u%d\n,',x);x*=y=z=4;printf("%d\n",x);x=y=l;z=x+4--l;printf(',%d,%d\n,',x,z);z+=一x+++(++y);printf("%d,%d”,x,z);}程序的輸出結(jié)果是〇(1級)10vCR>40<CR>2.0<CR>3,0(vCR>表示回車換行符).分析下面程序main。(intx,y;x=16,y=(x++)+x;printf(',%d\nH,y);x=15;printf("%d,%d\n",++x,x); 〃自右向左求解x=20,y=x—+x;printf(n%d\n",y);x=13;printf(',%d,%d',,x++tx);}程序的輸岀結(jié)果是〇(1級).以下程序的輸出結(jié)果為:。(03試題)main(){floata=3.14,b=3.14159;printf("%f,%5,3f\n”#,b); }.以下程序的輸出結(jié)果為:〇(04?05第二學(xué)期試題)#include<stdio.h>main(){charcl,c2;clゴa';c2=t\n,;printf("%c%c”,cl,c2);}三、編程題.從鍵盤上輸入一個(gè)大寫字母,要求改用小寫字母輸出。(1級).編寫程序,求方程ax2+bx+c=0的解x。(1級).請編寫ー個(gè)程序,能顯示出以下兩行文字。(1級)Iamastudent.IloveChina.第四章選擇結(jié)構(gòu)程序設(shè)計(jì)ー、選擇題.下列運(yùn)算符中優(yōu)先級最高的是。(0級)A)> B)+C)&&D);=.以下關(guān)于運(yùn)算符優(yōu)先級的描述中,正確的是。(0級)!(邏輯非)>算術(shù)運(yùn)算>關(guān)系運(yùn)算》&&(邏輯與)>11(邏輯或)>賦值運(yùn)算&&(邏輯與)>算術(shù)運(yùn)算〉關(guān)系運(yùn)算〉賦值運(yùn)算C)關(guān)系運(yùn)算〉算術(shù)運(yùn)算〉&&(邏輯與)〉11(邏輯或)>賦值運(yùn)算D)賦值運(yùn)算〉算術(shù)運(yùn)算〉關(guān)系運(yùn)算〉&&(邏輯與)刃(邏輯或).邏輯運(yùn)算符的運(yùn)算對象的數(shù)據(jù)類型.{0級)A)只能是〇或1 B)只能是.T.或,F.〇只能是整型或字符型 D)任何類型的數(shù)據(jù).能正確表示x的取值范圍在[0,100]和[-10,-5]內(nèi)的表達(dá)式是。(1級)A)(x<=-10)II(x>=-5)&&(x<=0)II(x>=100)B)(x>=-10)&&(x<=-5)II(x>=0)&&(x<=100)C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)D)(x<=-10)II(x>=-5)&&(x<=0)II(x>=100).以下程序的運(yùn)行結(jié)果是0(1級)main()(intc,x,y;x=l;y=l;c=0;C=x++||y++; 〃書上說的或條件如果前面的成立,后面的就不執(zhí)行了printf(**\n%d%d%d\n,,,x,y,c);)A)110 B)211C)OilD)001.以下程序的運(yùn)行結(jié)果是。(1級)main()(intc,x,y;x=0;y=0;c=0;c=x++&&y++;printf(<4\n%d%d%d\n,,,x,y,c);)A)100 B)211C)OilD)001.判斷字符型變量ch為大寫字母的表達(dá)式是〇(1級)A)'A'v=chv=Z B)(ch>='A')&(ch<='Z')C)(ch>=W)&& 丿D)(ch>=,A,)AND(chv='Z')8,判斷字符型變量ch為小寫字母的表達(dá)式是〇(1級)A)'a'v=chv='z'C)(ch>='a')A)'a'v=chv='z'C)(ch>='a')II(chv='z').以下if語句書寫正確的是A)if(x=0;)printf(M%f\x);elseprintf(,,%f,,-x);C)if(x>0);{x=x+l;printfC%r,x);)elseprintf("%r',-x);.分析以下程序:main(){intx=5,a=0,b=0;if(x=a+b) printff4**else printfC4####\n,,);以上程序。(1級)A)有語法錯(cuò),不能通過編譯C)輸出****11.兩次運(yùn)行下面的程序,如果從鍵盤(1級)B)(ch>=a)&&(ch<=z)D)(ch>='a')&&(ch<=N)?(1級)B)if(x>0){x=x+l;printf(M%f\x);}elsepriiHf("%r',-x);D)if(x>0){x=x+l;printf("%f',x)}elseprintf("%F',-x);B)通過編譯,但不能連接D)輸冊###上分別輸入6和4,則輸出結(jié)果是main(){intx;scanf("%d”,&x);if(x++>5)primf(“%ザ,x);ノ封號表示一個(gè)完整的語句,所以++起作用else printf("%d\n”,x-);)D)6和4A)フ和5B)6和3C)7和412.寫出下面程序的執(zhí)行結(jié)果?(1D)6和4{intx,y=l;if(y!=O)x=5;printf("%dド,x);if(y==0) x=3;elsex=5;printf(ii%d\t\n,,,x);)A)1 3 B)1 5 05 3 D)5 5.寫出下面程序的執(zhí)行結(jié)果〇(2級)main(){intx=l,y=l,z=O;if(z<0)if(y>0)x=3;elsex=5;printf(n%d\tn,x);if(z=y<0)x=3;elseif(y==0)x=5;elsex=7;prinlf(”%dV”,x);prindT%d\d,z);)A)170 B)370 0550 D)151.假定所有變量均已正確說明,下列程序段運(yùn)行后x的值是。(1級)a=b=c=0;x=35;if(!a)x=-l;elseif(b);if(c)x=3;elsex=4;A)34 B)4 〇35 D)3.寫出下面程序的運(yùn)行結(jié)果是。(2級)main(){intx,y=l,z=-l;if(y!=O)x=5;printf(Mx+%d\t,,,x);if(y==0)x=3;elsex=5;printf("x=%d\t\n',,x);
x=l;if(z<0)if(y>0)x=3;elsex=5;printf(,,x=%d\t\n,,,x);if(z=y<0)x=5;floatx;inta,b;則正確的floatx;inta,b;則正確的switch語句是printf(Hx=%d\f',x);printf(n%d\t\nM,z);if(x=y=z)x=3;printf(,'x=%d\t,,,x);printf(nz=%d\t\n",z);}A)x=5 x=5B)x=5 x=5x=3X=1x=7 z=0x=5 z=0x=0 z=0x=3 z=0C)x=5 x=5D)x=5 x=5x=5X=1x=7 z=0x=7 z=0x=3z=lx=3 z=016.若有以下函數(shù)關(guān)系x<0fy=2xx>0—y=xx=0fy=x+1下面程序段能正確表示以上關(guān)系的是ー?(2級)A)y=2x;B)y=2x;if(x!=0)if(x<=0)if(x>O)y=x;if(x==0)y=x+l;elsey=x+l;elsey=x;C)if(x>=0)(D)y=x+l;if(x>0)y=x;if(x<=0)elsey=x+l;if(x<0)y=2x;elsey=2x;elsey=x;17.若有以下變量定義:?(1級)A)switch(x){case1.0:printf(',*\nM);case2.0:printf(H**\nH);)switch(x){casel,2:printf("*\n,');case3:printf("*1switch(a+b){casel:printf(,,*\n*');case2*a:printf("**\nH);)switch(a^-b){casel:printf(,,*\n*');casel+2:printf(n**\nn);}.以下關(guān)于運(yùn)算符優(yōu)先順序的描述正確的是。(02?03第一學(xué)期試題)A)關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符(賦值運(yùn)算符(邏輯運(yùn)算符B)邏輯運(yùn)算符〈關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符〈賦值運(yùn)算符0賦值運(yùn)算張邏輯運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符D)算術(shù)運(yùn)算符〈關(guān)系運(yùn)算符(賦值運(yùn)算符〈邏輯運(yùn)算符.能正確表小a>=10或av=0的關(guān)系表達(dá)式是。(02~03第,學(xué)期試題)A)a>=10ora<=0 B)a>=10Ia<=0C)a>=10&&a<=0 D)a>=10IIa<=0.以下不正確的if語句形式是〇(02-03第?學(xué)期試題)if(x>y&&x!=y);if(x==j)x+=j;if(x!=y)scanf("%d”,&x)elsescanf("%d”,&y);if(x<y){x++;y++;}.當(dāng)a=l,b=3,c=5,d=4時(shí),執(zhí)行完下面程序段后x的值為〇(02-03第一學(xué)期試題)if(a<b)if(c<d)x=1;elseif(a<c)if(b<d)x=2;elsex=3;elsex=6;elsex=7;A)1B)2C)3D)622.以下if語句中語法錯(cuò)誤的是〇(01-02第二學(xué)期試題)A)if(a>b)printf(ll%f,,a); B)if(a>b)printf("%f',a);elseprintf("%F',b);C)け(a>b)pri叫(“對,,a) D)if(a>b)printf("%f',b);elseprintf("%f',b); elseprintf("%f',a);.能表示整數(shù)x符合下面兩個(gè)條件的語句是。(01~02第二學(xué)期試題)(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.A)(x%4==0&&x%100!=0)llx%400==0B)(x%4==0llx%100!=0)&&x%400==0C)(x%4==0&&x%400!=0)llx%100==0D)(x%100==0llx%4!=0)&&x%400==0.設(shè)有如下定義:charch二'z',則執(zhí)行下面語句后變量ch是值為:〇(03試題)ch=(fcA,<=ch&&ch<=4Z')?(ch+32):chA)AB)aC)ZD)z.若I為整型變量,則下列程序段的運(yùn)行結(jié)果為〇(03試題)1=322;if(I%2==0)printf(kk#####")elseprintfC4*****");A)械## B)楣###*****C)***** D)有語法錯(cuò)誤,無法輸出結(jié)果.已知intx=30,y=50,z=80;以下語句執(zhí)行后變量x、y、z的值分別為:〇(03試題)if(x>yllx<z&&y>z)z=x;x=y;y=z;A)x=50fy-80,z=80 B)x=50,y=30,z=30C)x=30,y=50,z=80 D)x=80,y=30,z=50.C語言中,要求運(yùn)算對象必須是整型的運(yùn)算符是:〇(往屆試題)A)> B)++ C)% D)!=.已知intx=30,y=50,z=80;以下語句執(zhí)行后變量x、y、z的值分別為:(往屆試題)if(x>yllx<z&&y>z){z=x;x=y;y=z;}A)A)x=50fy=80,z=80C)x=30,y=50,z=8029.以下程序的輸出結(jié)果是ーB)x=50,y=30,z=30D)x=80,y=30,z=50〇(04?05第二學(xué)期試題)main(){intx=2,y=-1,z=2;if(x<y) if(y<0)z=0;elsez+=l;printf("%d\n",z); }A)3B)2C)1D)0.設(shè)a、b和c是int型變量,且a=2,b=4,c=6,則下面表達(dá)式中值為0的是:。(往屆試題)A)'a'+VB)a<=bC)allb+c&&b-cD)!((a<b)&&!cII1).在C的if語句中,可用作判斷的表達(dá)式是:。(往屆試題)A)關(guān)系表達(dá)式 B)邏輯表達(dá)式C)算術(shù)表達(dá)式 D)任意表達(dá)式.下面能正確表示變量a在區(qū)間[0,5]或(6,10)內(nèi)的表達(dá)式為:〇(往屆試題)A)0<=aIIa<=5116<aIIa<100<=a&&a<=5II6<a&&a<10(0<=alla<=5)&&(6<alla<10)0<=a&&a<=5&&6<a&&a<10.在C語言中,多分支選擇結(jié)構(gòu)語句為:switch(c){case常量表達(dá)式!:語句!;case常量表達(dá)式語句n-1;default 語句n;}其中括號內(nèi)表達(dá)式c的類型:〇(往屆試題)A)可以是任意類型 B)只能為整型C)可以是整型或字符型 D)可以為整型或?qū)嵭?以下if語句語法正確的是:。(往屆試題)A)if(x>0)printf("%f”,x)elseprintf(t4%f\-x);B)if(x>0)/x=x+y;printfウx);)elseprintf(((%f",-x);if(x>0){x=x+y;printf("%f”,x);};elseprintf(“%f”,-x);if(x>0){x=x+y;printfC%f",x)}elseprimf("%f”,-x);.為了表示關(guān)系x>=y>=z,應(yīng)使用C語言表達(dá)式.〇(1級)A)(x>=y)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&(y>=z).若欲表示在if后a不等于〇的關(guān)系,則能夠正確表示這ー關(guān)系的表達(dá)式為〇(1級)A)a<>0B)!a C)a=0 D)a.下面程序的輸出結(jié)果是〇(1級)main(){intx,y,z;x=y=1;z=x++-l;printf("%d,%d\t”,x,z);z+=-x+++(++yll++z);printf(%d,%d,,,x,z);}A)2,03," B)2,13,0C)2,02,1 D)2,10,1.下面程序的輸出結(jié)果是〇(1級)main(){intx=40,y=4,z=4;x=y==z;printf(44%d",x);x=x==(y-z);printf(%d",x);)A)40B)41C)11D)10.若x=3,y=z=4,則下列表達(dá)式的值分別為?(1級)(z>=y>=x)?1:0z>=y&&y>=xA)01 B)11C)00 D)1040.若x=3,y=z=4,則下列表達(dá)式的值分別為〇(1級)Cz>=y>=x)?l:0y+=z,x*=yA)024 B)18 008 D)112.在以下ー組運(yùn)算符中,優(yōu)先級最高的運(yùn)算符是。(1級)A)<= B)= C)%D)&&.以下程序的輸出結(jié)果是.(1級)main()inta=-l,b=4,k;k=(4-+a<=0)&&!(b—<=0);printf(M%d%d%d”,k,a,b);}A)104 B)004 C)103 D)003.若已定義inta=25,b=14,c=19J以下三項(xiàng)運(yùn)算符(?:)所構(gòu)成的語句的執(zhí)行結(jié)果是〇(1級)a+4-<=25&&b-<=2&&c+4-?printf(H***a=%d,b=%d,c=%d\nM,a,b,c):printf(u###a=%d,b=%d,c=%d\n",a,b,c)A)(***a=25,b=14,c=19) B)(***a=26,b=13,c=19)C)(###a=25,b=14,c=19) D)(###a=26fb=139c=19)二、填空題.在C語言中,對于if語句,else子句與if子句的配對約定是。(0級).else與它前面最近的一個(gè)if配對.閱讀下面程序,寫出它的功能。(1級)#include<stdio.h>main(){intlabel;charc;printf(n\nPleaseenter1number:");c=getchar();while(c!=*\n,){if(c==7)label=l;c=getchar();)if(label==1)printf("\nnoat");elseprintf("\nint");}由鍵盤輸入ー個(gè)數(shù),打印出它的類型標(biāo)識符.以下兩條if語句可合并成一條if語句為〇(1級)if(a<=b)x=l;elsey=2;if(a>b)printf("****y=%d\n",y);elseprintf("####x=%d\n",x);答案:if(av=b){x=l;printff*****y=%d\nM,y);}else{y=2;printf("####x二%d\n”,x);).以下程序的功能是計(jì)算一元二次方程ax2+bx+c=0的根,補(bǔ)足程序中空缺的語句。(2級)#include<math.h>main()(floata,b,c,_abs,_derta,_doublea,partl,part2;printf("entera,b,c:H);scanf("%f%f%f,,&a,&b,&c);if((1) )a==0if((2) )printf("noanswerduetoinputerror\n"); b==0elseprintf("thesinglerootis%f\nu,-c/b);else{_derta=b*b-4*a*c;_doublea=2*a;partl=-b/(2*a);_abs=abs(_derta);part2=sqrt(_abs)/_doublea;if((3) )_derta<0printf(Hcomplexroot\nrealpart=%fimagepart二%f\n”,parti,part2);elseprintf("realroots\nroot1=%froot2=%f\n",part1+part2,part1-part2);}}.設(shè)有程序片段如下:switch(class){case,A,:printf(',GREAT!\nH);caseB:printf("GOOD!\n");caseC:printf(“0K!也");case,D,:printf(,,NO!\nM);default:printf("ERROR!\nK);)若class的值為C則輸出結(jié)果是〇(1級)OK!NO!ERROR!.以下程序段的運(yùn)行結(jié)果是。(1級)intx=1,y=0;switch(x){case1:switch(y){caseO:printf("x=ly=O\nn);break;case1:printf(,,y=l\n,,);break;}case2:printf("x=2\nM);)x=ly=0x=27,根據(jù)以下if語句寫出與其功能相同的switch語句(x的值在〇?100之間)。(1級)if語句:if(x<60)m=l;TOC\o"1-5"\h\zelseif(x<70) m=2;elseif(x<80) m=3;elseif(x<90) m=4;elseif(x<100) m=5;switch語句:switch(G))x/10(m=1;break;case0:case1:case2:case3:case4:case5:case6:m=2;break;case7:m=3;break;case8:m=4;break;m=5;case9:}.輸入3個(gè)實(shí)數(shù)a,b,c要求按從大到小的順序輸出三數(shù)。(01?02第二學(xué)期試題)main(){floata,b,c,t;scanf(t4%f,%f,%f;&a,&b,&c);if(a<b){t=a; (1ノb=t;} a=bif((2)) a<c(t=a;a=c;c=t;}if(b<c){ (3)b=c;c=t;) t=bprintf(u%f,%f,%f,,a,b,c);).輸入一個(gè)字符,如果是大寫字母,則把其變成小寫字母;如果是小寫字母,則變成大寫字母;其它字符不變。請?jiān)讴杻?nèi)填入缺省的內(nèi)容。(03試題)main(){charch;sea砥"%c”,&ch);if((1) ) ch=ch+32; ch>=,A&&ch<=tZ,elseif(ch>=,a,&&ch<=tz,)( (2) ):ch=ch-2printf("%c\n”,ch); }.以下程序的運(yùn)行結(jié)果是:。(03試題)main(){inta=2,b=3,c;c=a;if(a>b)c=1;elseif(a==b)c=O;elsec=-1;printf(4t%d\nM,c);)-1.以下程序的運(yùn)行結(jié)果是:0(04~05第二學(xué)期試題)main(){intx;x=5;if(++x>5)printfCtx=%d,\x);elseprintf(**x=%d,,,x—); }x=6.在C語言中提供的條件運(yùn)算符”?:"的功能是.(1級)根據(jù)條件判定值,從兩種選擇對象中,選取ー個(gè)作為整個(gè)運(yùn)算的結(jié)果.條件表達(dá)式a?b:c,其中a,b,c是三個(gè)運(yùn)算分量.當(dāng)運(yùn)算分量a的值為真,則否則.(1級)整個(gè)條件表達(dá)式的結(jié)果就取自運(yùn)算分量b的結(jié)果,整個(gè)條件表達(dá)式的結(jié)果就取自運(yùn)算分量c的結(jié)果.在C語言中的邏輯運(yùn)算符的優(yōu)先級是ユ高于&&高于II.(1級)main(){inta,b,c;a=b=c=l;a十=b;b+=c;c+=a;printf("(l)%d\n,\a>b?a:b);printf(°(2)%d\n*,,a>c?a—:c++);(a>=b>=c)?printf(,'AA',);printf(MCCM);printf(°\na=%d,b=%d,c=%d\n'\a,b,c);)運(yùn)行結(jié)果為23CCa=2,b=2,c=4(1級).用C語言描述下列命題(1級)(l)a小于b或小于cavbllavc,(2)a和b都大于ca>b&&a>c(3)a或b中有一個(gè)小于ca<cllb<c(4)a是奇數(shù)a%2=l 0.main(){intx=l,y=l,z=l;y=y+z;x=x+y;printf(u%d,\x<y?y:x);printf(u%d,\x<y?x4-+:y++);printf(n%dn,x);printf("%d”,y);)運(yùn)行結(jié)果為〇(1級)3,233.main(){intx,y,z;x=3;y=z=4;printf(,'%d,;(y=.=x)?l:O);printf(',%d,,,z>=y&&y>x);運(yùn)行結(jié)果為〇(1級)01.若x=3,y=2,z=l,求下列表達(dá)式的值(l)x<y?y:x(2)xvy?x++:y++(3)z+=xvy?x++:y++表達(dá)式的值分別是(1):(2) 2;(3)(1級).表示條件:10<100或x<0的C語言表達(dá)式是,x>10&&x<100llx<0 。(1級).分析下列程序main()(printf("%d",l<4&&4<7);printf("%d",l<4&&7<4);printf("%d",(2<5));printf("%d",!(l<3)ll(2<5));printf("%d",!(4<=6)&&(3<=7));)程序的輸出結(jié)果是10110 。(I級)三、編程題.編寫ー個(gè)程序,要求有鍵盤輸入三個(gè)數(shù),計(jì)算以這三個(gè)數(shù)為邊長的三角形的面積。(1級).輸入圓的的半徑r和一個(gè)整型數(shù)k,當(dāng)k=l時(shí),計(jì)算圓的面積:但k=2時(shí),計(jì)算圓的周長,當(dāng)k=3時(shí),既要求求圓的周長也要求岀圓的面積。編程實(shí)現(xiàn)以上功能。(1級).編寫程序,判斷某一年是否是閏年。(1級).有一函數(shù),其函數(shù)關(guān)系如ド,試編程求對應(yīng)于每ー自變量的函數(shù)值。(03試題)べx2 (x<0)y=y-°-5x+10 (0<x<10)ヽX-y/x(x>10).編-程序,對于給定的一個(gè)百分制成績,輸出相應(yīng)的五分制成績。設(shè):90分以上為,ベ;8〇?89分為B;7〇?79分為‘C';6〇?69分為,D,;60分以下為田’。(往屆試題).試編程完成如下功能:輸入ー個(gè)不多于4位的整數(shù),求出它是幾位數(shù),并逆序輸出各位數(shù)字。(往屆試題)
第五章循環(huán)結(jié)構(gòu)程序設(shè)計(jì)ー、選擇題while循環(huán)語句中,while后ー對圓括號中表達(dá)式的值決定了循環(huán)體是否進(jìn)行,因此,進(jìn)入while循環(huán)后,一定有能使此表達(dá)式的值變?yōu)榈牟僮?否則,循環(huán)將會(huì)無限制地進(jìn)行下去。(0級)TOC\o"1-5"\h\zA)0 B)1 C)成立 D)2.在do-while循環(huán)中,循環(huán)由do開始,用while結(jié)束:必須注意的是:在while表達(dá)式后面的不能丟,它表示do-while語句的結(jié)束。(0級)A)0 B)1 C)s D),.for語句中的表達(dá)式可以部分或全部省略,但兩個(gè)不可省略。但當(dāng)三個(gè)表達(dá)式均省略后,因缺少條件判斷,循環(huán)會(huì)無限制地執(zhí)行下去,形成死循環(huán)。(0級)C): D),A)0 C): D),4.程序段如下intk=-20;while(k=0)k=k+1;則以下說法中正確的是。(1while(k=0)k=k+1;則以下說法中正確的是。(1級)A)while循環(huán)執(zhí)行20次〇循環(huán)體語句ー次也不執(zhí)行.程序段如下intk=l;while(!k==0){k=k+1;printf("%d\n",k);}說法正確的是。(1級)A)while循環(huán)執(zhí)行2次C)循環(huán)體語句ー次也不執(zhí)行.以下for循環(huán)是。(1級)for(a=0,b=0;(b!=123)&&(a<=4);a++)A)無限循環(huán)B)循環(huán)次數(shù)不定.在下列程序中,while循環(huán)的循環(huán)次數(shù)是main(){inti=0;while(i<10){if(i<l)continue;if(i==5)break;i++;B)循環(huán)是無限循環(huán)D)循環(huán)體語句執(zhí)行ー次B)循環(huán)是無限循環(huán)D)循環(huán)體語句執(zhí)行ー次C)執(zhí)行4次D)執(zhí)行5次(1級)A)1B)10 C)6D)死循環(huán)、不能確定次數(shù)8.程序段如下intk=0;while(k++<=2)printf(M%d\n*\k);則執(zhí)行結(jié)果是 。(1級)A)1 B)2C)0D)無結(jié)果2313429.程序段如下intk=0;whiie(k++<=2);則執(zhí)行結(jié)果是!ast=_A)2printf(,'last=%d\n,,,k); 〇(1級)B)3C)4D)無結(jié)果10.執(zhí)行下面的程序后,a的值為。(1級)main(){inta,b;for(a=l,b=l;a<=100;a++){if(b>=20)break;if(b%3==l){b+=3;continue;)b-=5;))A)7 B)8 C)9 D)10.以下程序的輸出結(jié)果。(1級)main()(intx=3;do{printf(”%3d”,x?=2);}while(—x);A)1B)303C)1-2D)死循環(huán)A)1B)303C)1-2D)死循環(huán).定義如下變量:intn=10;則下列循環(huán)的輸出結(jié)果是。(1級)while(n>7){n-;printf("%d\n",n);A)10 B)9C)10D)99 8988 7877613.以下程序的輸出結(jié)果 main(){intn=0;while(n+-K=l)printfC%d\t'f,n);printf("%d\n",n);)_。(!級)A)123 B)012C)112D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 28429-2025電氣化鐵路電纜1 500 V及以下直流牽引電力電纜及附件
- 重慶市大渡口區(qū)2025-2026學(xué)年九年級(上)期末化學(xué)試卷(含答案)
- 四川省內(nèi)江市2025-2026學(xué)年高二上學(xué)期期末檢測英語試卷(含答案)
- 化工企業(yè)領(lǐng)導(dǎo)培訓(xùn)課件
- 化工企業(yè)施工培訓(xùn)課件
- 飛機(jī)科普教學(xué)
- 2026年濟(jì)南高新區(qū)海川中學(xué)教師崗招聘備考考試題庫及答案解析
- 市場調(diào)查公司管理制度
- 贛州市人力資源有限公司現(xiàn)面向社會(huì)公開招聘派遣制員工1名備考考試題庫及答案解析
- 地面滲水施工方案(3篇)
- 氫能源汽車2026年維修培訓(xùn)
- 南京南京市建鄴區(qū)2025年9月政府購崗人員招聘筆試歷年參考題庫附帶答案詳解
- 2025年企業(yè)內(nèi)部培訓(xùn)課程體系
- 2026年工程材料企業(yè)物資采購人員考試大綱
- 2025年湖南公務(wù)員《行政職業(yè)能力測驗(yàn)》試題及答案
- 2024中國類風(fēng)濕關(guān)節(jié)炎診療指南課件
- 2025年地鐵車站物業(yè)管理合同協(xié)議
- 2025-2030腦機(jī)接口神經(jīng)信號解碼芯片功耗降低技術(shù)路線圖報(bào)告
- 2025公路安全韌性提升技術(shù)指南
- 藥廠入職安全培訓(xùn)課件
- 廣東省高州市全域土地綜合整治項(xiàng)目(一期)可行性研究報(bào)告
評論
0/150
提交評論