版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
(完整)C語(yǔ)言程序設(shè)計(jì)試題題庫(kù)(完整)C語(yǔ)言程序設(shè)計(jì)試題題庫(kù)實(shí)用文檔(完整)C語(yǔ)言程序設(shè)計(jì)試題題庫(kù)第一章基礎(chǔ)知識(shí)一.填空1.每個(gè)C程序都必須有且僅有一個(gè)________函數(shù)。2。C語(yǔ)言程序開(kāi)發(fā)到執(zhí)行通常要經(jīng)過(guò)6個(gè)階段即編輯、預(yù)處理、________、鏈接、加載和執(zhí)行。3。軟件是程序,以及______、使用和維護(hù)所需要的所有文檔。4.國(guó)標(biāo)中規(guī)定:“計(jì)算機(jī)程序是按照具體要求產(chǎn)生的適合于計(jì)算機(jī)處理的_________”。5.程序設(shè)計(jì)語(yǔ)言按照書(shū)寫(xiě)形式,以及思維方式的不同一般分為低級(jí)語(yǔ)言和________兩大類(lèi)。6.C語(yǔ)言是由________組成的.7。C語(yǔ)言的函數(shù)可分為主函數(shù)main、標(biāo)準(zhǔn)庫(kù)函數(shù)和_________。8.一個(gè)函數(shù)是由兩部分組成的,即:________和函數(shù)體。9。。編譯是將C語(yǔ)言所編寫(xiě)的源程序________成機(jī)器代碼,也稱(chēng)為建立目標(biāo)代碼程序的過(guò)程。10.程序是由某種程序設(shè)計(jì)語(yǔ)言編制出來(lái),體現(xiàn)了編程者的控制思想和對(duì)計(jì)算機(jī)執(zhí)行操作的要求。不同的任務(wù)功能,就會(huì)需求不同的軟件程序,如:控制計(jì)算機(jī)本身軟硬件協(xié)調(diào)工作,并使其設(shè)備充分發(fā)揮效力,方便用戶(hù)使用的系統(tǒng)軟件程序,稱(chēng)為操作系統(tǒng);而為辦公自動(dòng)化(OA)、管理信息系統(tǒng)(MIS)、人工智能、電子商務(wù)、網(wǎng)絡(luò)互聯(lián)等等應(yīng)用而開(kāi)發(fā)的軟件程序,統(tǒng)稱(chēng)為_(kāi)________.11。機(jī)器語(yǔ)言是以__________形式表示的機(jī)器基本指令的集合,是計(jì)算機(jī)系統(tǒng)唯一不需要翻譯可以直接識(shí)別和執(zhí)行的程序設(shè)計(jì)語(yǔ)言。12。與機(jī)器語(yǔ)言相比,使用匯編語(yǔ)言來(lái)編寫(xiě)程序可以用_______來(lái)表示指令的操作碼和操作對(duì)象,也可以用標(biāo)號(hào)和符號(hào)來(lái)代替地址、常量和變量。13。在編譯程序之前,凡以____開(kāi)頭的代碼行都先由預(yù)處理程序預(yù)處理.14.C程序的執(zhí)行均是由執(zhí)行_________開(kāi)始。15。函數(shù)體即為包含在{}內(nèi)的部分.它分為_(kāi)_______和為完成功能任務(wù)由若干個(gè)C語(yǔ)句組成的執(zhí)行部分。16.C語(yǔ)言程序中一條簡(jiǎn)單語(yǔ)句是以________字符作為結(jié)束符的。17.C語(yǔ)言是結(jié)構(gòu)化、________的程序設(shè)計(jì)語(yǔ)言.18.由于計(jì)算機(jī)硬件不能直接識(shí)別高級(jí)語(yǔ)言中的語(yǔ)句,因此,必須經(jīng)過(guò)“_______程序",將用高級(jí)語(yǔ)言編寫(xiě)的程序翻譯成計(jì)算機(jī)硬件所能識(shí)別的機(jī)器語(yǔ)言程序方可執(zhí)行。19。用高級(jí)語(yǔ)言編寫(xiě)的程序需翻譯成計(jì)算機(jī)硬件所能識(shí)別的機(jī)器語(yǔ)言程序方可執(zhí)行。所以說(shuō),用高級(jí)語(yǔ)言進(jìn)行程序設(shè)計(jì),其編程效率高,方便易用,但_______沒(méi)有低級(jí)語(yǔ)言高。20.第一個(gè)系統(tǒng)體現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì)思想的教學(xué)工具語(yǔ)言是_______語(yǔ)言。解答:1.main()2.編譯3.開(kāi)發(fā)4。指令序列5。高級(jí)語(yǔ)言6.函數(shù)7.自定義函數(shù)8.函數(shù)首部9。翻譯10。應(yīng)用軟件11.二進(jìn)制代碼12.助記符13。#14.main函數(shù)15.聲明部分16.;(或分號(hào))17。模塊化18。翻譯19.執(zhí)行速度20.PASCAL二.閱讀程序?qū)懡Y(jié)果;三.補(bǔ)充程序;四.改錯(cuò)題;五.編程一;六.編程二;第二章常量、變量和表達(dá)式一。填空1.以16位計(jì)算機(jī)為例,若定義longinta;則變量a占______個(gè)字節(jié)的內(nèi)存空間。2。以16位計(jì)算機(jī)為例,若定義doublea;則變量a占______個(gè)字節(jié)的內(nèi)存空間。3.以16位計(jì)算機(jī)為例,若定義longdouble;則變量a占______個(gè)字節(jié)的內(nèi)存空間.4.在______位機(jī),int型占4個(gè)字節(jié).5。C語(yǔ)言的數(shù)據(jù)類(lèi)型有:基本數(shù)據(jù)類(lèi)型、構(gòu)造數(shù)據(jù)類(lèi)型、枚舉類(lèi)型、______、空類(lèi)型。6。在C語(yǔ)言中,基本數(shù)據(jù)類(lèi)型有:______。7。整型常量046轉(zhuǎn)換為十進(jìn)制數(shù)等于______.8.整型常量054轉(zhuǎn)換為十進(jìn)制數(shù)等于______。9.整型常量0x125轉(zhuǎn)換為十進(jìn)制數(shù)等于_____。10.整型常量0x7C轉(zhuǎn)換為十進(jìn)制數(shù)等于______。11。整型常量39轉(zhuǎn)換為八進(jìn)制等于______.12.實(shí)數(shù)473.468寫(xiě)成規(guī)范化指數(shù)形式,則應(yīng)為_(kāi)_____。13.實(shí)數(shù)0。0453寫(xiě)成規(guī)范化指數(shù)形式,則應(yīng)為_(kāi)____.14.將0x123轉(zhuǎn)換為二進(jìn)制等于______。15。字符'A’表示成十六進(jìn)制等于_____。16.在C語(yǔ)言中,稱(chēng)代表常量的標(biāo)識(shí)符為_(kāi)_____。17.C語(yǔ)言中是用編譯預(yù)處理命令______來(lái)定義符號(hào)常量18。在C語(yǔ)言中,以反斜杠符(\)開(kāi)頭,后跟字符的字符序列,稱(chēng)之為_(kāi)____,主要用來(lái)表示控制及不可見(jiàn)的字符或者一些圖形符號(hào)。19.語(yǔ)句printf(”\106”)執(zhí)行的結(jié)果輸出是______.20.語(yǔ)句printf(“b”)執(zhí)行的結(jié)果輸出是______。21。語(yǔ)句printf(“\\b”)執(zhí)行的結(jié)果輸出是______。22.語(yǔ)句printf("\102”)執(zhí)行的結(jié)果輸出是______。23.若有charch1;ch1=’a’+4;則語(yǔ)句printf(”%c",x)的輸出結(jié)果為_(kāi)_____。24。字符串常量“Hello,everyone!”占據(jù)的內(nèi)存空間為_(kāi)_____個(gè)字節(jié)25。字符串常量“Hello,Bob!”占據(jù)的內(nèi)存空間為_(kāi)_____個(gè)字節(jié)。26.十進(jìn)制整型常量由0~9個(gè)數(shù)據(jù)組成,但不能以______開(kāi)始,沒(méi)有小數(shù)部分27.十六進(jìn)制常量由0~9和______組成28.unsignedlong類(lèi)型常量通常以______為后綴29。實(shí)型常量通常有小數(shù)形式和______兩種表達(dá)方式30。C語(yǔ)言中是用編譯預(yù)處理命令______來(lái)包含其他源文件31。為了表示字符串的結(jié)束,系統(tǒng)自動(dòng)在字符串的最后加一個(gè)______,但不被輸出32.C語(yǔ)言中,其值可被改變的量稱(chēng)為變量,它具有三個(gè)基本要素:變量名、______和變量值。33。C語(yǔ)言規(guī)定,變量的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線組成,且不能以______開(kāi)頭。34。在16位機(jī)中,sizeof(“hello\n")等于______。35。在16位機(jī)中,printf(“\“hello\"”)等于_____。36。字符變量在內(nèi)存中占用______個(gè)字節(jié)的存儲(chǔ)空間。37.若有定義intx=27,y=6;則表達(dá)式x/y的值為_(kāi)_____。38。若有定義intx=47,y=8;則表達(dá)式x%y的值為_(kāi)_____。39。若有定義charch1=’A',ch2,ch3;執(zhí)行ch2=ch1++;ch3=++ch1;printf(”ch1=%c,ch2=%c”,ch1,ch2);則輸出為_(kāi)_____。40。若有定義charch1=’A’,ch2,ch3;執(zhí)行ch2=ch1++;ch3=++ch1;printf("ch2=%c,ch3=%c”,ch2,ch3);則輸出為_(kāi)_____。41.若有定義inti=5,j,k;執(zhí)行j=i--;k=—-i;printf(”i=%d,j=%d\n",i,j);則輸出為_(kāi)_____。42。表達(dá)式(int)(13.7+25。6)/4%5的值是______。43。表達(dá)式3。6—5/2+1。2+5%3的值是______。44。表達(dá)式54%10/2+4。0*(8/5)的值是______。45。若定義intx;doubleb=5.45;執(zhí)行x=b后,則x的值為_(kāi)_____。46。若定義inty;charc='A';執(zhí)行y=c后,則y的值為_(kāi)_____。47。若定義inta=8;floatb=2。5;則a/(int)(b)的值為_(kāi)_____.48.若a=5,則執(zhí)行a*=7—3語(yǔ)句后,a的值是______。49.若inta=1,b=0,c=4,d=2;則表達(dá)式(a>b?a:b)&&(c-d)的值為_(kāi)_____.50.已知a=0,表達(dá)式a=1?b=1:b=0;執(zhí)行后,b的值是_____。51。若定義intm=7,n=12;則表達(dá)式n%=m-m%5的值是______.52。若定義inta=8;floatb=4.5;執(zhí)行a*=a/=a-b后,a的值為_(kāi)_____。53。inta=2;!a++的值為_(kāi)____。54。inta=0;!++a的值為_(kāi)_____.55。inta=7;floatb=4.5;則printf(“%d”,a*=a/=a-b)的值為_(kāi)_____。56。intk=7;floata=2。5,b=4。7;則表達(dá)式a+k%3*(int)(a+b)%2/4的值為_(kāi)_____。57。#defineMM(a,b)(a-b)?a:binta=2,b=6;printf(“%d\n”,MM(a,b))的值為_(kāi)_____。58。在32位機(jī)中,inta=4,b=7;printf(“%0x”,a-b)的值為:______。59。intx,y,z;x=y=2;z=3;y=x++-1;printf(“%d,%d”,x,y)的值為:______。60。inti=2,j;printf(“%d",j=i<1)的值為:______.解答:1。4;2.4;3。10;4。32;5。指針類(lèi)型;6.int、float、double、char;7.38;8.44;9.293;10.124;11。047;12.4。734680e+002;13。4.530000e-002;14.100100011;15.\x41/41H;16。符號(hào)常量;17.#define;18.轉(zhuǎn)義字符常量;19.F;20.b;21.\b;22。B;23.e;24.16;25。11;26.0;27.A~F;28。U;29。指數(shù)形式;30。#include;31。“\0”;32。變量類(lèi)型;33.數(shù)字;34。7;35?!癶ello”;36.1;37。4;38.7;39。ch1=C,ch2=A;40。ch2=A,ch3=C;41。i=3,j=5;42。4;43。4。800000;44.6.000000;45.5;46。65;47。4;48.20;49。1;50。1;51.2;52.4;53.0;54。0;55。4;56.2.500000;57.2;58。fffffffd;59。3,1;60。0二.閱讀程序?qū)懡Y(jié)果;三。補(bǔ)充程序;四。改錯(cuò)題;五。編程一;六。編程二;第三章順序結(jié)構(gòu);一。填空1.C語(yǔ)言的語(yǔ)句可分為5類(lèi),它們是:控制語(yǔ)句、____________、函數(shù)語(yǔ)句、符合語(yǔ)句和空語(yǔ)句。2.常用于字符輸入的函數(shù)為:________________。3.常用于字符輸出的函數(shù)為:________________。4。常用于字符串輸入的函數(shù)為:________________。5.常用于字符串輸出的函數(shù)為:________________。6。格式輸入函數(shù)的一般形式為:________________。7.格式輸出函數(shù)的一般形式為:________________.8。printf和scanf是標(biāo)準(zhǔn)的庫(kù)函數(shù),它們的函數(shù)原型在頭文件________________中。9。有charch,則從鍵盤(pán)給ch賦值的格式輸入語(yǔ)句為:________________.10。如果要輸出字符串常量“HelloWord!”,則格式輸出語(yǔ)句為:________________。11。設(shè)有定義:longx=-123456L;,請(qǐng)寫(xiě)出能夠正確輸出變量x值的語(yǔ)句________________。12.若有inta,b;,想通過(guò)scanf("%d%d",&a,&b);輸入語(yǔ)句給a賦于1,給b賦于2,則從鍵盤(pán)輸入數(shù)據(jù)的形式是________________.13。若有inti,j;scanf(”i=%d,j=%d”;&i,&j);,要求給i賦10,給j賦20,則應(yīng)該從鍵盤(pán)輸入_______。14.已知i、j、k為int型變量,若從鍵盤(pán)輸入:1,2,3<回車(chē)>,使i的值為1、j的值為2、k的值為3,請(qǐng)寫(xiě)出正確的輸入語(yǔ)句________________.15.有intm,n,p;scanf("m=%dn=%dp=%d”,&m,&n,&p);printf("%d%d%d\n",m,n,p);若想從鍵盤(pán)上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是___________.16。有inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf(”\na=%d,b=%f,c=%f\n”,a,b,c);,若運(yùn)行時(shí)從鍵盤(pán)上輸入9876543210〈回車(chē)〉,則程序的輸出結(jié)果是_____________。17。有intm=0256,n=256;則printf("%o%o\n”,m,n);的輸出結(jié)果是__________________。18.有intx=102,y=012;,則printf(“%2d,%2d\n",x,y);的輸出結(jié)果是____________.19。有定義和語(yǔ)句:inta;charc=10;floatf=100.0;doublex;a=f/=c*=(x=6。5);則printf("%d%d%3.1f%3.1f\n”,a,c,f,x);的輸出結(jié)果是_____________________。20.若有定義和語(yǔ)句:intm=0xabc,n=0xabc;m-=n;則printf("%o\n”,m);的輸出結(jié)果是___。21。若有intm=32,n=032;,則printf("%d,%x\n”,m,n);執(zhí)行后輸出結(jié)果是______________。22.若有inta=1234;,則printf(”%2d\n",a);的輸出結(jié)果是_________________。23。若變量已正確說(shuō)明為float類(lèi)型,要通過(guò)語(yǔ)句scanf(“%f%f%f”,&a,&b,&c);給a賦于10。0,b賦予22。0,c賦予33.0,不正確的輸入形式是_____________________。 A)10〈回車(chē)〉22〈回車(chē)>33<回車(chē)>B)10。0,22.0,33.0〈回車(chē)〉 C)10.0〈回車(chē)〉22。033.0〈回車(chē)>D)1022〈回車(chē)>33<回車(chē)>24.若有intx=3,y=1;則printf("%d%d\n”,x++,y+2);的輸出結(jié)果是________________。25。若有定義和語(yǔ)句:doubled;floatf;longl;inti;i=f=l=d=20/3;則printf("%d%ld%f%f\n",i,l,f,d);的輸出結(jié)果是(小數(shù)點(diǎn)后只寫(xiě)一位)_____________________.26。以下說(shuō)法中正確的是_____________________.A)#define和printf都是C語(yǔ)句;B)#define是C語(yǔ)句,而printf不是;C)printf是C語(yǔ)句,但#define不是;D)#define和printf都不是C語(yǔ)句27。若有intk=17;,則printf(”%d,%o,%x\n",k,k,k);的輸出結(jié)果是________________。28.以下敘述中正確的是_____________________. A)輸入項(xiàng)可以是一個(gè)實(shí)型常量,如:scanf("%f",3.5); B)只有格式控制,沒(méi)有輸入項(xiàng),也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scakf(”a=%d,b=%d”); C)當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量地址,例如:scanf("%f”,&f);29.若有定義和語(yǔ)句:intu=010,v=0x10,w=10;則printf("%d,%d,%d\n”,u,v,w);輸出結(jié)果是_____________________。30。若有inta=1,b=4,c=2;floatx=10。5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*1.2/c+x;,則printf(”%f\n”,z);的輸出結(jié)果是_____________________。31.若有inta=2,c=5;,則printf("a=%%d,b=%%d\n”,a,c);的輸出結(jié)果是________________。32.有charc;intn=100;floatf=10;doublex;x=f*=n/=(c=50);則printf(”%d%f\n",n,x);的輸出結(jié)果是_____________________。33。有inti=0,j=0,k=0;scanf(”%d%*d%d",&i,&j,&k);printf(”%d%d%d\n”,i,j,k);若從鍵盤(pán)輸入:102030〈回車(chē)〉。輸出結(jié)果是_____________________。34。若有inta,b,c;a=25;b=025;c=0x25;,則printf("%d%d%d\n",a,b,c);的輸出結(jié)果是___________。35.有以下語(yǔ)句段 intn1=10,n2=20;printf(“________________”,n1,n2); 要求按以下格式輸出n1和n2的值,每個(gè)輸出行從第一列開(kāi)始,請(qǐng)?zhí)羁? n1=10n2=2036.若有語(yǔ)句inti=—19,j=i%4;則printf("%d\n",j);的輸出結(jié)果是_____________________。37.有inta=0;a+=(a=8);則printf(”%d\n",a);的輸出結(jié)果是_____________________。38。有inta=1,b=2;a=a+b;b=a-b;a=a—b;則printf(“%d,%d\n”,a,b);的輸出結(jié)果是__________。39.有unsignedshorta=65536;intb;,則printf(“%d\n",b=a);的輸出結(jié)果是________.40.語(yǔ)句printf("\10289\n”);的數(shù)據(jù)結(jié)果為:__________________.解答:1.表達(dá)式語(yǔ)句;2。getchar();3。putchar();4.gets();5。puts();6。scanf(“格式控制字符串”,地址表列);7。printf(“格式控制字符串",輸出表列);8。stdio。h;9。scanf(“%c”,&ch);10。printf(“%s”,HelloWord?。?;或者:printf(“HelloWord!”);11。printf(“x=%1d\n”,x);12.12;13。i=10,j=20;14。scanf(“%d,%d,%d”,&i,&j,&k);15。m=123n=456p=789;16。a=98,b=765.000000,c=4321.000000;17.256400;18。102,10;19.1651。56.5;20。0;21.32,1a;22。1234;23。B;24。33;25.666。06。0;26。D;27.17,21,11;28。C;29.8,16,10;30.13。700000;31.a=%d,b=%d;32.220.000000;33.10300;34.252137;35.n1=%d\nn2=%d;36.-3;37。16;38.2,1;39。0;40.B89;二。閱讀程序?qū)懡Y(jié)果;三.補(bǔ)充程序;四.改錯(cuò)題;五.編程一;六.編程二;第四章選擇結(jié)構(gòu)一。填空1。在if,while,case,do,else等關(guān)鍵字中,用于選擇結(jié)構(gòu)的有()。2。已知a=1;那么if(a=2)printf("%d",2);elseprintf("%d”,1);的輸出結(jié)果是().3。已知chara=’A';那么if(a〉65)printf("%s”,"bigger”);elseprintf(”%s”,”smaller”);的輸出結(jié)果是().4.表示“x≥y≥z”的C語(yǔ)言表達(dá)式是()。5.在C語(yǔ)言中,用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語(yǔ)句有()語(yǔ)句和()語(yǔ)句。6.判斷兩個(gè)浮點(diǎn)型變量x和y是否相等一般用:if(〈1e-6)….7。設(shè)有程序段:t=6;a=7;b=8;if(a=b)t=a;,這段程序執(zhí)行后,t的結(jié)果是()。8。設(shè)a=1,b=2,c=3,d=4,則表達(dá)式:a〉b?a:c>d?a:d的結(jié)果為()。9.表達(dá)式98&&8&&31&&(98—'a')的值為()。10。若inta=3;則表達(dá)式(a>2)&&!(’D’〉69)的值為()。解答:答案此處無(wú),我也不知道為什么,是不是不考我也無(wú)從知曉。二。閱讀程序?qū)懡Y(jié)果1。#include<stdio。h〉 voidmain() { intx,y,t; x=7;y=9;if(x〈y) {t=x;x=y;y=t;} printf(”%d,%d\n",x,y);}2.#include<stdio.h>voidmain() { intx=1,a=2,b=3;switch(x) { case1:a——;break; case2:b++;break; case3:a++;b++; } printf(”\na=%d,b=%d\n”,a,b); }3.#include<stdio。h〉voidmain() {charch1=’E’; if(ch1>=’A') ch1++;else ch1+=32;printf(”ch1=%c\n”,ch1); }4.#include〈stdio.h>voidmain() { intx,y,t; x=5;y=3; if(x〉y) {t=x;x=y;y=t;} printf("%d,%d\n",x,y); }5。#include〈stdio。h〉 intmain() { inta,b,c,m; printf("Enterthreeintegers:"); scanf("%d%d%d",&a,&b,&c); if(a〈=b) m=a; else m=b; if(c<m) m=c; printf("m=%d\n",m); return0;} 輸入:212223<回車(chē)>6.#include<stdio。h〉 intmain() { charch1=’a’,ch2=’B’,ch3=’E’; if(ch1〉ch2) if(ch2〉ch3)ch3++;else —-ch3; printf("ch3=%c\n”,ch3); return0; }7。#include<stdio.h〉 intmain() { floatx,y; scanf(”%f",&x); switch((int)x/10){ case0:y=1。0;printf("y=%f\n”,y);break; case1:y=2*x+1;printf("y=%f\n",y);break; case2:y=3*x*x+2;printf(”y=%f\n",y);break; default: printf(”Nodefinition。\n"); } return0;} 輸入:15。3〈回車(chē)>8。#include<stdio。h>intmain() { charch1='A’,ch2='B'; switch(ch1) { case’A’: switch(ch2){ case'B':printf("Good!\n");break; case'A’:printf("Better!\n");break; } case’B’:printf("Best!\n");break; } return0;}9.#include<stdio.h>voidmain(){floatscore;score=100; if(score〈60)printf(”E\n”); else switch((int)score/10) {case10: case9:printf("A\n”);case8:printf("B\n”);case7:printf(”C\n");break;case6:printf("D\n");break;default:printf("Error\n”); }}10。#include〈stdio.h〉voidmain(){inti=0,a=2;if(i==0)printf(“**”); else printf(“$$”); printf(“*”); }11。#include〈stdio。h〉voidmain() { intm=10,n=0,p=4,q=20; if(m) if(n) q=15—m;else q=25+m; elseif(p) q=q+p; printf(“q=%d\n”,q); }12。#include<stdio。h〉 voidmain() { inta=1,b=0;switch(a) { case1:switch(b) { case0:printf(”**0**”);break; case1:printf(”**1**");break;} case2:printf("**2**");break; }}13。#include<stdio。h〉 intmain() { inta=2,b=7,c=5; switch(a>0){ case1:switch(b〈0){ case1:printf("@”);break; case2:printf("!");break; } case0:switch(c==5){ case1:printf(”*");break; default:printf("#”);break; } default:printf(”&”);} printf(”\n"); return0;}14.#include<stdio。h〉 intmain() { inta=0,b=1,c=0,d=20;if(a)d=d-10;elseif(!b) if(!c)d=15;elsed=25;printf("d=%d\n",d); return0;}15.#include〈stdio。h〉 intmain() {inta=1;switch(a){ case0:printf(”**0**");break; case1:printf("**1**”);break; case2:printf(”**2**");break; } return0;}16。#include〈stdio。h> intmain() {intx,y; scanf("%d”,&x); y=x〉12?x+10:x-12;printf("%d\n",y); return0;}輸入:12〈回車(chē)〉17.#include<stdio。h〉 intmain() {floatx,y; charop; doubler; scanf("%c%f%f”,&op,&x,&y); switch(op) {case’+':r=x+y;break; case’—':r=x—y;break; case’*’:r=x*y;break; case’/':r=x/y;break; } printf("%。1f",r); return0;}輸入:3。5〈回車(chē)〉18。#include”stdio。h” voidmain() { inta=7;if(a>9||a<10)a=a/3;else a=a%3;printf(”a=%d",a); }19.#include<stdio.h> voidmain() { inta=20;switch(a%3){ case0:printf(”0"); case1:printf("1”); case2:printf("2"); default:printf(”3"); } printf("4”); }20。#include〈stdio.h〉 voidmain() { inta=2,b=5,c=8,t; if(a〈b){t=a;a=b;b=t;} if(b<c){t=b;b=c;c=t;} if(a〈b){t=a;a=b;b=t;} printf(”%d,%d\n",a++,——c); }解答:1。運(yùn)行結(jié)果:9,7;2。a=1,b=3;3。ch1=F;4。3,5;5.m=21;6.ch3=D;7.y=31.600000;8.Good!Best!;9.ABC;10。***;11。q=35;12.**0****2**;13.*&;14.d=20;15.**1**;16.0;17。0.6;18。a=2;19.234;20。8,1;三.補(bǔ)充程序1.根據(jù)輸入字符的ASCII碼來(lái)判別字符的類(lèi)別。由ASCII碼表可知ASCII值小于32的為控制字符.在“0”和“9”之間的為數(shù)字,在“A”和“Z”之間為大寫(xiě)字母,在“a"和“z”之間為小寫(xiě)字母,其余則為其它字符。 #include"stdio。h"#include”string。h” intmain() { charc; printf("inputacharacter:”); _____________________________________________if(c〈32)printf("Thisisacontrolcharacter\n"); elseif_____________________________________________ printf("Thisisadigit\n”); elseif_______________________________________ printf("Thisisacapitalletter\n"); elseif(c>='a'&&c<='z’) printf(”Thisisasmallletter\n”); ____________________________________________ printf("Thisisanothercharacter\n”); return0;}2.計(jì)算器程序。用戶(hù)輸入運(yùn)算數(shù)和四則運(yùn)算符,輸出計(jì)算結(jié)果.#include"stdio。h" intmain() { floata,b; ____________________________________________; printf("inputexpression:a+(—,*,/)b\n”); scanf(”%f%c%f",&a,&c,&b); switch(c) { case'+’:printf(”%f\n”,a+b);____________________________________________ case____________________________________________printf(”%f\n”,a—b);break; case'*':printf("%f\n”,a*b);break; case'/':____________________________________________;break; default:printf("inputerror\n"); } return0;}3.輸入三個(gè)整數(shù),輸出最大數(shù)和最小數(shù)(注:max總是記錄最大數(shù),而min總是記錄最小數(shù))。 #include”stdio。h" intmain(){ inta,b,c,max,min; printf("inputthreenumbers:”); scanf("%d%d%d”,&a,&b,&c); if(a>b) { _______________________________________ _______________________________________ } else {max=b;min=a;} ____________________________________________ max=c; if(min〉c) _____________________________________ printf(”max=%d\nmin=%d”,max,min); return0;}4.#include”stdio.h" intmain() { inta; printf(”inputintegernumber:"); scanf(”%d”,&a); _____________________________________________ { case1:printf(”Monday\n”);break; _____________________________________________printf(”Tuesday\n”);break; case3:printf("Wednesday\n");break; case4:printf("Thursday\n”);_____________________________________________ case5:printf("Friday\n”);break; case6:printf("Saturday\n");break; case7:printf("Sunday\n");break; _____________________________________________printf(”error\n”); } return0;}5。判斷a〉b、a<b、a=b或a≠b四種關(guān)系。 #include"stdio.h” intmain() { inta,b; printf(”pleaseinputa,b:"); scanf(”%d%d”,&a,&b); _____________________________________________printf("A=B\n"); _____________________________________________printf("A〉B\n”); _____________________________________________printf(”A<B\n”); _____________________________________________printf("A≠B\n"); return0;}6。根據(jù)以下函數(shù)關(guān)系,對(duì)輸入的每個(gè)x值,計(jì)算出相應(yīng)的y值. #include"stdio。h” intmain() { intx,c,m; floaty; scanf(“%d”,&x); _________________________________________c=—1;elsec=_____________________________________________; switch(c) { case–1:y=0;break; case0:y=x;break; case1:y=10;break; case2: case3:y=—0.5*x+20;_____________________________________________; default:y=-2; } if(c!=2)printf(“y=%f”,y); _____________________________________________ printf(“error!”); return0;}7.找出x,y,z三個(gè)數(shù)中的最小數(shù),并判斷該數(shù)是否等于b。 #include”stdio.h” intmain() { intx=4,y=5,z=8,b; intu,v; scanf(”%d”,&b); u=x〈y?_____________________________________________; v=u<z?_____________________________________________; if_____________________________________________printf(“最小數(shù)等于b!\n”); _____________________________________________printf(“最小數(shù)不等于b!\n”); return0;}8.輸入兩個(gè)運(yùn)算數(shù)x,y和一個(gè)運(yùn)算符號(hào)op,輸出該運(yùn)算結(jié)果的值,例如輸入3+5↙得到結(jié)果8。#include"stdio.h” intmain() { floatx,y,r; charop; scanf(”%f,%c,%f",&x,&op,&y); switch(op) { case'+’:r=x+y;_____________________________________________; _____________________________________________r=x-y;break; case’*’:_____________________________________________;break; _____________________________________________r=x/y;break; } printf("%f”,r); return0;}9。根據(jù)輸入字符的ASCII碼來(lái)判別字符的類(lèi)別。由ASCII碼表可知ASCII值小于32的為控制字符.在“0”和“9"之間的為數(shù)字,在“A”和“Z”之間為大寫(xiě)字母,在“a”和“z”之間為小寫(xiě)字母,其余則為其它字符。 #include"stdio。h” intmain() { charc; printf("inputacharacter:”); c=getchar(); _____________________________________________ printf("Thisisacontrolcharacter\n"); elseif(c>=’0’&&c〈='9') printf(”Thisisadigit\n”); _____________________________________________ printf(”Thisisacapitalletter\n”); _____________________________________________ printf("Thisisasmallletter\n"); _____________________________________________ printf("Thisisanothercharacter\n"); return0;}10。找出a,b,c三個(gè)數(shù)中的最大數(shù),并判斷該數(shù)是否等于x。 #include”stdio。h" intmain() { inta=8,b=4,c=12,x; intu,v; scanf(“%d”,&x); u=a<b?_____________________________________________; v=u<c?_____________________________________________; if_____________________________________________printf(“最大數(shù)等于x!\n”); _____________________________________________printf(“最大數(shù)不等于x!\n”); return0;}解答:1.c=getchar();(c>=’0'&&c<=’9');(c>=’A'&&c〈=’Z');else2.charc;break;’-’;printf("%f\n”,a/b);3。max=a;min=b;if(max<c);min=c;4.switch(a); case2;Break;default;5。if(a==b);elseif(a>b);elseif(a<b);else;6.if(x<0);c=x/10;break;else;7。x:y;u:z;(v==b);Else;8.break;case’—';r=x*y;case'/';9.if(c〈32);elseif(c〉='A’&&c<='Z’);elseif(c>='a'&&c<='z’);else;10.b:a;c:u;(v==x);Else;四.改錯(cuò)題(解答)五.編程一1.求分段函數(shù) 的值,輸入x值,輸出結(jié)果.2。從鍵盤(pán)上輸入一個(gè)數(shù)x,計(jì)算并輸出下列分段函數(shù)y的值. 〈strong〉</strong>3.某運(yùn)輸公司運(yùn)費(fèi)計(jì)算時(shí)根據(jù)運(yùn)輸距離打折計(jì)算,折扣的計(jì)算方法如下: (其中,discount表示折扣,S表示運(yùn)輸距離)。編寫(xiě)一完整程序,輸入運(yùn)輸距離,統(tǒng)計(jì)運(yùn)費(fèi)并輸出.每公里的運(yùn)費(fèi)通過(guò)符號(hào)常量定義2.5。4.編程輸入一元二次方程的三個(gè)系數(shù),求解一元二次方程的實(shí)根,無(wú)實(shí)根時(shí)不用求虛根,給出相應(yīng)提示信息即可。5.給定三條邊,判斷其是否能構(gòu)成三角形,若能構(gòu)成,判斷其是等腰三角形、等邊三角形、直角三角形還是普通三角形。6。從鍵盤(pán)輸入一個(gè)三角形的三條邊,判斷是否能組成三角形,若能組成三角形,則輸出它的面積.7。從鍵盤(pán)輸入一個(gè)百分制的學(xué)生成績(jī),輸出其對(duì)應(yīng)的分?jǐn)?shù)等級(jí),其中90~100為A,80~89為B,70~79為C,60~69為D,60以下為E.8.編寫(xiě)一個(gè)程序,從鍵盤(pán)輸入三個(gè)整數(shù)給a,b,c,然后交換它們中的數(shù),把a(bǔ)中原來(lái)的值給b,把b中原來(lái)的值給c,把c中原來(lái)的值給a。9。輸入一個(gè)字符,判斷其是否為英文字母,若是英文字母,則將其大小寫(xiě)進(jìn)行轉(zhuǎn)換,若不是英文字母,則不變。10.給定三個(gè)整數(shù)型x,y,z,輸出三個(gè)數(shù)中的最大值和最小值.解答:1。#include”stdio。h" #include"math.h" voidmain() { floatx,y; printf("inputx\n"); scanf(”%f”,&x); if(x<0)y=1;elseif(x〈=5)y=2*x; else y=sqrt(x); printf("x=%5。1fy=%8。3f\n",x,y); }2。#include"stdio.h” #include"math。h” voidmain() { floatx,y; printf("inputx\n"); scanf("%f”,&x); if(x>20||x>1&&x<10){ printf(”無(wú)定義\n"); return; } if(x<0)y=—x; elseif(x〈=1)y=sin(x)+x; elseif(x〉=10&&x<=20)y=x*x*x; printf(”x=%5。1fy=%8。3f\n”,x,y); }3。#include”stdio。h” #include"math.h" #defineprice2。5 voidmain() { floatdiscount,cost,s; printf(”inputdistance\n”); scanf("%f",&s); if(s〈250)discount=0;elseif(s〈800)discount=0。02;elseif(s<1500)discount=0.05;else discount=0.08;cost=s*(1-discount)*price; printf("distance=%5.1f;cost=%5.1f\n”,s,cost); }4./*功能:求一元二次方程的解.*/ #include”math.h” #include"stdio.h" main() {floata,b,c,disc,x1,x2;scanf(”%f,%f,%f",&a,&b,&c); disc=b*b-4*a*c; if(disc==0) printf("x1=x2=%7。2f\n”,—b/(2*a));/*輸出兩個(gè)相等的實(shí)根*/ elseif(disc>0){x1=(—b+sqrt(disc))/(2*a);/*求出兩個(gè)不相等的實(shí)根*/ x2=(-b-sqrt(disc))/(2*a); printf("x1=%7。2f,x2=%7.2f\n",x1,x2); } else printf("無(wú)實(shí)根\n"); }5。#include”stdio.h" voidmain() { floata,b,c; printf(”輸入三條邊:\n"); scanf("%f%f%f",&a,&b,&c); if(a+b>c&&a+c〉b&&b+c>a) {if(a==b&&b==c) printf(”等邊三角形\n”); elseif(a==b||b==c||c(diǎn)==a) printf("等腰三角形\n"); elseif(a*a==b*b+c*c||b*b==a*a+c*c||c*c==b*b+a*a) printf(”直角三角形\n”); } else printf(”不能構(gòu)成三角形\n”); }6。#include"stdio。h” #include”math。h” voidmain() { floata,b,c,s,area; printf("輸入三條邊:\n"); scanf(”%f%f%f”,&a,&b,&c); if(a+b>c&&a+c〉b&&b+c>a) {s=(a+b+c)/2;area=sqrt(s*(s—a)*(s—b)*(s—c)); printf("area=%7。2f\n”,area); } else printf("不能構(gòu)成三角形\n”); }7.#include<stdio。h〉 voidmain() { intscore; chard; printf(”Inputscore\n"); scanf("%d”,&score); if(score〉100||score<0){printf(”dataerror!\n"); return; } switch(score/10){case10:case9:d='A';break; case8:d='B’;break; case7:d='C’;break; case6:d=’D’;break; default:d=’E';break; } printf("score=%3ddengji=%c\n”,score,d); }8。#include〈stdio。h> voidmain() { inta,b,c,t; printf("Inputa,b,c\n"); scanf(”%d%d%d”,&a,&b,&c); t=a; a=b; b=c; c=t; printf("a=%d;b=%d;c=%d;\n",a,b,c); }9。#include〈stdio。h> voidmain() { charc1,c2;printf("Inputaletter:"); c1=getchar(); if(c1>=’a'&&c1〈=’z') c2=c1+'A'-’a'; elseif(c1〉=’A'&&c1<=’Z’) c2=c1+'a’—’A'; else c2=c1;printf(”原字符:%c轉(zhuǎn)換后為:%c\n",c1,c2); }10。#include〈stdio。h〉 voidmain() { inta,b,c,max,min; printf("Inputa,b,c\n"); scanf(”%d%d%d”,&a,&b,&c); max=a;min=a; if(b〉max)max=b; elseif(b〈min)min=b; if(c>max)max=c; elseif(c<min)min=c; printf("a=%d;b=%d;c=%d;\n”,a,b,c); printf(”max=%d;min=%d\n",max,min); }六.編程二(解答)第五章循環(huán)結(jié)構(gòu)一.填空1.C語(yǔ)言中提供了三種循環(huán)控制語(yǔ)句,它們是:()、do—while語(yǔ)句、()。2。break語(yǔ)句在C程序中只能出現(xiàn)在兩種場(chǎng)合:一是用于()語(yǔ)句中,二是用于()語(yǔ)句中。3。以下程序段中的語(yǔ)句printf(“***”)要執(zhí)行5次,請(qǐng)?jiān)诳瞻滋幪钊牒线m的數(shù). for(i=1;i<=();i=i+2)printf(“***");4.定義intk=10;執(zhí)行語(yǔ)句while(k〈20)k+=1;后,k的值為()。5.在循環(huán)控制結(jié)構(gòu)中break語(yǔ)句的作用是()。6。在循環(huán)控制結(jié)構(gòu)中continue語(yǔ)句的作用是:()。7.若已知inta[5][5];并在運(yùn)行過(guò)程中a數(shù)組已經(jīng)賦值;要打印次對(duì)角線元素,在空白處填入合適的值/表達(dá)式;for(i=0;i〈5;i++) for(j=();j>=0;j—-) printf(”%5d”,a[i][j]);8.執(zhí)行完語(yǔ)句sum=0;for(i=0;i<10;i++){if(i%5==0)sum+=i; sum=()。9。使用while語(yǔ)句中需要注意,為了防止“死循環(huán)”的發(fā)生,在循環(huán)體中一定要有()語(yǔ)句。10.do—while語(yǔ)句中,判斷循環(huán)條件在(),執(zhí)行循環(huán)體在()。(填“先”“后”)解答(無(wú))二.閱讀程序?qū)懡Y(jié)果1.#include<stdio.h> voidmain() { intnumber,digit; number=1234;while(number!=0) { digit=number%10; printf(”%d",digit); number=number/10; } }2。#include<stdio。h> #defineN5 voidmain() { inti; for(i=1;i<N;i++) printf(”%d\n”,i*i); }3.#include〈stdio。h〉 voidmain() { inti,s,x; s=0;x=15;for(i=1;i〈=5;i++) if(x%i==0)s=s+i; printf("i=%d,s=%d\n",i,s); }4.#include<stdio。h〉 voidmain() { intcounter=1;while(counter〈=5){ printf("%d\n”,counter); counter++; } }5.#include〈stdio。h> intmain() { inti,sum,m,a; sum=0;m=5;for(i=0;i〈=3;i++) { scanf("%d",&a); if(a〉m) sum+=a; } printf("sum=%d\n”,sum); return0;} 輸入:21083〈回車(chē)〉6.#include〈stdio。h> intmain() { inti,j,k; for(i=1;i<=4;i++) { for(j=1;j<5—i;j++) printf(""); for(k=1;k〈=i;k++) printf(”*”); printf("\n"); } return0;}7。#include〈stdio.h〉 intmain() { inti,j; i=1;while(i〈5){ for(j=1;j<2*i+1;j++) printf("%c”,'#'); printf("\n"); i++; } return0;}8。#include<stdio.h〉 intmain() { inti=10,m=0,n=0;do { if(i%2!=0)m=m+i; else n=n+i; i--; }while(i>=0); printf(”m=%d,n=%d\n",m,n); return0;}9.#include〈stdio.h> voidmain() { intsum=0,n; scanf(”%d",&n); while(n〈=5){ sum+=n; n++; } printf("sum=%d”,sum); }輸入:1<回車(chē)>10.#include<stdio.h> voidmain() { inti,j; for(i=2;i〉=0;i--) { for(j=1;j<=i;j++) printf("*"); for(j=0;j〈=2—i;j++) printf(”!”); printf("\n”); } }11.#include〈stdio。h〉 voidmain() { inta,b; for(a=1,b=1;a<=100;a++) { if(b〉20)break; if(b%4==1){ b=b+4;continue; } b=b—5;} printf("a=%d\n”,a); }12.#include<stdio。h> voidmain() { chark; inti; for(i=1;i〈3;i++) { scanf("%c”,&k); switch(k) { case'0’:printf(”another\n”); case’1’:printf("number\n"); } } }輸入:01<回車(chē)>13.#include〈stdio。h> intmain() { inti,s=0;for(i=1;i〈10;i++) { s+=i*i; if(s>10)break; } printf("i=%d,s=%d\n”,i,s); return0;}14。#include<stdio.h〉 voidmain() { charch; while((ch=getchar())!='\n') { if(ch〉=’A'&&ch<=’Z’) ch=ch+32;elseif(ch〉='a'&&ch〈=’z’) ch=ch-32;printf("%c”,ch); } }輸入:ABCdef〈回車(chē)〉15。#include<stdio。h> intmain() { inta,b; for(a=1,b=1;a<=100;a++) { if(b>=9)break; if(b%3==1){ b+=3; continue; } b—=5;} printf(”%d,%d\n”,a,b); return0;}16.#include<stdio。h〉 intmain() { inti=0,j=0;while(i〈10)i++; while(j++<10); printf("i=%d,j=%d\n”,i,j); return0;}17。#include"stdio。h” voidmain() { inti,j,t; for(i=1,j=10;i〈3;i++,j--) t=i+j; t++; printf("%d,%d”,j,t); }18。#include"stdio.h” voidmain() { inti=10,j; do { j=i%2;printf("%d",j); i--; }while(i>4); }19.#include"stdio。h” voidmain() { inti=7,j; while(i>2){ j=i%2;printf("%d",j); i--; } printf(”%d",i); }20.#include<stdio。h> voidmain() { inti,j,t=0;for(i=3;i〉0;i--) for(j=0;j〈4;j++) t+=j; printf(”t=%d",t); }解答:1.4321;2.1,4,9,16;3.i=6,s=9;4.1,2,3,4,5;5.sum=18;6。* ** *** ****7。####################8.m=25,n=30;9.sum=15;10。**! *!! ??!!11。a=6;12。another number number13。i=3,s=14;14。abcDEF;15.4,10;16.i=10,j=11;17。8,12;18。010101;19。101012;20。t=18三。補(bǔ)充程序1.輸出100以?xún)?nèi)能被3整除的數(shù) #include
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年教育機(jī)構(gòu)校長(zhǎng)聘用合同書(shū)3篇
- 2024版勞務(wù)派遣就業(yè)合同范本
- 二零二四南京個(gè)人租賃房屋租賃合同租賃物交付驗(yàn)收合同3篇
- 年度Β-內(nèi)酰胺類(lèi)抗菌藥物產(chǎn)業(yè)分析報(bào)告
- 年度高檔生物顯微鏡競(jìng)爭(zhēng)策略分析報(bào)告
- 年度大孔燒結(jié)空心磚競(jìng)爭(zhēng)策略分析報(bào)告
- 2025年西瓜種植與農(nóng)業(yè)科技園區(qū)建設(shè)合作合同范本3篇
- 金屬材料及工藝技術(shù)創(chuàng)新研究報(bào)告
- 2025年度淋浴房淋浴房頂安裝合同4篇
- 二零二四年危化品押運(yùn)員安全管理責(zé)任書(shū)與考核合同3篇
- 寒潮雨雪應(yīng)急預(yù)案范文(2篇)
- DB33T 2570-2023 營(yíng)商環(huán)境無(wú)感監(jiān)測(cè)規(guī)范 指標(biāo)體系
- 上海市2024年中考英語(yǔ)試題及答案
- 房屋市政工程生產(chǎn)安全重大事故隱患判定標(biāo)準(zhǔn)(2024版)宣傳海報(bào)
- 垃圾車(chē)駕駛員聘用合同
- 2025年道路運(yùn)輸企業(yè)客運(yùn)駕駛員安全教育培訓(xùn)計(jì)劃
- 南京工業(yè)大學(xué)浦江學(xué)院《線性代數(shù)(理工)》2022-2023學(xué)年第一學(xué)期期末試卷
- 2024版機(jī)床維護(hù)保養(yǎng)服務(wù)合同3篇
- 《論拒不執(zhí)行判決、裁定罪“執(zhí)行能力”之認(rèn)定》
- 工程融資分紅合同范例
- 2024國(guó)家安全員資格考試題庫(kù)加解析答案
評(píng)論
0/150
提交評(píng)論