C語言各章節(jié)復習題1_第1頁
C語言各章節(jié)復習題1_第2頁
C語言各章節(jié)復習題1_第3頁
C語言各章節(jié)復習題1_第4頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

第一章C語言概述略第2章程序的靈魂ー一算法ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)以下敘述中正確的是A)C語言比其他語言髙級 B)C語言可以不用編譯就能被計算機識別執(zhí)行 〇C語言以接近英語國家的自然語言和數(shù)學語言作為語言的表達形式 D)C語言出現(xiàn)的最晩,具有其他語言的ー"切優(yōu)點正確答案:C以下敘述中正確的是A)構(gòu)成C程序的基本單位是函數(shù) B)可以在ー個函數(shù)中定義另ー個函數(shù) 〇main〇函數(shù)必須放在其他函數(shù)之前 D)所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定ユ聲明正確答案:A以下說法正確的是A)C語言程序總是從第一個的函數(shù)開始執(zhí)行B)在C語言程序中,要調(diào)用函數(shù)必須在main〇函數(shù)中定義C)C語言程序總是從main()函數(shù)開始執(zhí)行D)C語言程序中的main〇函數(shù)必須放在程序的開始部分正確答案:CC語言規(guī)定,在一個源程序中,main函數(shù)的位置A)必須在最開始 B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C)可以任意 D)必須在最后正確答案:C以下敘述不正確的是A)一個C源程序可由一個或多個函數(shù)組成 B)ー個C源程序必須包含ー個main函數(shù)〇C程序的基本組成單位是函數(shù) D)在C程序中,注釋說明只能位于一條語句的后面任意位置 正確答案:D下列敘述中正確的是A)C語言編譯時不檢查語法 B)C語言的子程序有過程和函數(shù)兩種C)C語言的函數(shù)可以嵌套定義 D)C語言的函數(shù)可以嵌套調(diào)用正確答案:D以下敘述正確的是A)在C程序中,每行中只能寫一條語句 B)若a是實型變量,C程序中允許賦值a=10,因此實型變量中允許存放整型數(shù)C)在C程序中,無論是整數(shù)還是實數(shù),都能被準確無誤地表示 D)在C程序中,%是只能用于整數(shù)運算的運算符正確答案:D以下說法錯誤的是A)一個算法應包含有限個步驟 B)在計算機上實現(xiàn)的算法是用來處理數(shù)據(jù)對象的C)算法中指定的操作,不能通過已經(jīng)實現(xiàn)的基本運算執(zhí)行有限次后實現(xiàn) D)算法的目的是為了求解正確答案:C算法是指為解決某個特定問題而采取的確定且有限的步驟,下面不屬于算法的五個特性的是A)有零個輸入或多個輸入 B)高效性有效性 C)有窮性 D)確定性正確答案:B下列關于C語言的說法不正確的是C語言既具有高級語言的一切功能,也具有低級語言的ー些功能C語言中的每一條執(zhí)行語句都必須用分號結(jié)束,分號不是C語言的一部分,是語句之間的分隔符號〇注釋可以出現(xiàn)在程序中任意合適的地方 D)命令行后面不能加分號,命令行不是C語言的語句正確答案:B以下說法錯誤的是A)髙級語言都是用接近人們習慣的自然語言和數(shù)學語言作為語言的表達形式B)計算機只能處理由。和1的代碼構(gòu)成的二進制指令或數(shù)據(jù)〇C語言源程序經(jīng)過C語言編譯程序編譯之后生成一個后綴為.EXE(c)的二進制文件D)每ー種高級語言都有它對應的編譯程序正確答案:CC語言中用于結(jié)構(gòu)化程序設計的3種基本結(jié)構(gòu)是A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu) B)if,switch,break C)for,while,do-while D)if,for,continue正確答案:A二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)用高級語言編寫的程序稱為【1】程序,它可以通過解釋程序翻譯一句執(zhí)行一句的方式執(zhí)行,也可以通過編譯程序一次翻譯產(chǎn)生目標程序,然后執(zhí)行。正確答案:源程序C語言程序的注釋可以出現(xiàn)在程序中的任何地方,一個注釋以【2】作為開始和結(jié)束。 正確答案:/**/第3章數(shù)據(jù)類型運算符與表達式ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)C語言中最簡單的數(shù)據(jù)類型包括A)整型、實型、邏輯型B)整型、實型、字符型C)整型、字符型、邏輯型D)字符型、實型、邏輯型C語言中的標識符只能由字母,數(shù)字和下劃線三種字符組成,且第一個字符A)必須為字母 B)必須為下劃線〇必須為字母或下劃線 D)可以是字母,數(shù)字和下劃線中任一字符下列可用于C語言用戶標識符的一組是A)void,define,OWORD B)a3_b3,」23,CarC)For,-abc,IFCaseD)2a,DO,sizeof下面四個選項中,均是不正確的8進制數(shù)或16進制數(shù)的選項是A)0160x8f018B)0abc0170xaC)010-0x110x16D)0al27ff-123下列數(shù)據(jù)中,不合法的C語言實型數(shù)據(jù)的是A)0.123B)123e3C)2.1e3.5D)789.0在16位C編譯系統(tǒng)上,若定義longa;,則能給a賦4000〇的正確語句是long后面要加L,%ldA)a=2OOOO+2OOOO;B)a=4000*10;C)a=30000+10000; D)a=4000L*10L;若有說明語句:charc='\72';則變量cA)包含1個字符B)包含2個字符 C)包含3個字符 D)說明不合法,c的值不確定有字符串如下,"\n\\\407asiヽ"\xabc”,則字符串的長度為A) 6 B) 7 C) 8 D) 9正確答案:DC語言中運算對象必須是整型的運算符是B)/ C)=D)<=AB)/ C)=D)<=正確答案:A若變量已正確定義并賦值,以下符合C語言語法的表達式是A)a:=b+l B)a=b=c+2 C)int18.5%3 D)a=a+7=c+b正確答案:B若變量a,i已正確定義,且i已正確賦值,合法的語句是TOC\o"1-5"\h\zA)a==1 B)++i; C)a=a++=5; D)a=int(i); 正確答案:B若有定義:inta=7;floatx=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是A)2.500000B)2.750000C)3.500000D)0.000000 正確答案:A若有運算符《,sizeof,へ&=,則它們按優(yōu)先級由高至低的正確排列次序是A)sizeof,&=,?,A B)sizeof.くくヘ&= C)A,?,sizeof,&=D)?,A,&=,sizeof 正確答案:B以下不正確的敘述是A)在C程序中,逗號運算符的優(yōu)先級最低 B)在C程序中,APH和aph是兩個不同的變量C)若a和b類型相同,在計算了賦值表達式a=b后b中的值將放入a中,而b中的值不變D)當從鍵盤輸入數(shù)據(jù)時,對于整型變量只能輸入整型數(shù)值,對于實型變量只能輸入實型數(shù)值正確答案:D已知inti,a;執(zhí)行語句i=(a=3,a++,--a,a+4,a+5,++a);后,變量i的值為TOC\o"1-5"\h\zA)2 B)3 04 D)5 正確答案:C設變量a是int型,f是float型,i是double型,則表達式10+'a,+i*f值的數(shù)據(jù)類型為A)intB)floatC)doubleD)不確定 正確答案:C在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是A)補碼B)反碼〇原碼D)ASCII碼 正確答案:D字符型數(shù)據(jù)在機器中是用ASCII碼表示的,字符‘5,和,ブ在機器中表示為1010001I和01110111 B)0100010I和01100011000110101和00110111 D)01100101和01100111 正確答案:C不能進行++和--運算的數(shù)據(jù)類型為A)指針B)整型C)長整型D)常量 正確答案:D設有intx=ll:則表達式(x++*l/3)的值是341112正確答案:A以下程序的輸出結(jié)果是main(){inta=21,b=ll;printf("%d\n",--a+b,--b+a);}30313233正確答案:A假設整型變量a,b,c的值均為5,則表達式a+++b+++c++的值為17161514正確答案:C已知inta=6;則執(zhí)行a+=a-=a*a;語句后,a的值為先進行a-=a*a的計算360-24-60正確答案:D設變量n為float類型,m為int類型,則以下能實現(xiàn)將n中的數(shù)值保留小數(shù)點后兩位,第三位進行四舍五入運算的表達式是A)n=(n*100+0.5)/100.0m=n*100+0.5,n=m/100.0n=n*100+0.5/100.0D)n=(n/100+0.5)*100.0正確答案:Bsizeof(float)是ー個雙精度型表達式ー個整型表達式〇ー種函數(shù)調(diào)用D)ー個不合法的表達式正確答案:B在C語言中,intchar和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)A)由用戶自己定義B)均為2個字節(jié)C)是任意的D)由所用機器的機器字長決定正確答案:D以下變量x,y,z均為double類型且已正確賦值,不能正確表示數(shù)學式子x+y+z的C語言表達式是x/y*zx*(1/(y*z))x/y*l/zx/y/z正確答案:A3.28下列關于復合語句和空語句的說法錯誤的是A)復合語句是由“{”開頭,由“}”結(jié)尾的B)復合語句在語法上視為一條語句〇復合語句內(nèi),可以有執(zhí)行語句,不可以有定義語句部分D)C程序中的所有語句都必須由一個分號作為結(jié)束正確答案:C下列關于字符串的說法中錯誤的是A)在C語言中,字符串是借助于字符型ー維數(shù)組來存放的,并規(guī)定以字符、〇,作為字符串結(jié)束標志B)、。,作為標志占用存儲空間,計入串的實際長度〇在表示字符串常量的時候不需要人為在其末尾加入‘、〇'D)在C語言中,字符串常量隱含處理成以へ0,結(jié)尾正確答案:B二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)以下程序的輸出結(jié)果是[1】。inta=1234;printf\n",a);正確答案:1234在計算機中,字符的比較是對它們的12】進行比較。正確答案:ASCI!碼在內(nèi)存中,存儲字符‘X,要占用1個字節(jié),存儲字符串"X',要占用【3】個字節(jié)。正確答案:2在C語言中(以16位PC機為例),ー個float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為4;ー個double型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【4】。正確答案:8以下程序段的輸出結(jié)果是【5】〇main(){inta=2,b—3,c=4;a*=16+(b++)-(++c);printf<"%d",a);1正確答案:28 16+3-5=14*2=28以下程序段的輸出結(jié)果是[6】。intx=17,y=26;printf("%d",y/=(x%=6));正確答案:5 x%=6=>x=x%6=5 y=y/5=5下列y的值是[7】。inty;y-sizeof(2.25*4);正確答案:8以下程序的輸出結(jié)果是[8】。main()(inti=010ハ進制的,j=10;pirntf("%d,%d\n",i,j);正確答案:8,10已知字母a的ASCII碼為十進制數(shù)97,且設ch為字符型變量,則表達式ch=,a屮8ン3,的值為【9】。正確答案:f a后移5位得f如下語句printf("%c\n",B+40);在執(zhí)行后的輸出結(jié)果是【10】〇正確答案:jB+'32'=bb+'8'=j定義inta=5,b=20;若執(zhí)行語句printf("%d\n",++a*--b/5_2);后,輸出的結(jié)果為【11】.正確答案:9第4章順序程序設計ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)若變量已正確說明為float型,要通過語句scanf(" ",&a,&b,&c);給a賦予10.0,b賦予22.0,c賦予33.0,下列不正確的輸入形式是A)10V回車>22V回車>33〈回車〉B)10.0,22.0,33.(X回車〉C)10.0〈回車>22.033.0<回車〉D)1022(回車>33〈回車〉正確答案:B現(xiàn)有以下程序段#includemain(){inta,b,c;scanf("a=%*d%d,b=%d%*d,c=%d',,&a,&b,&c);printf(Ma=%d,b=%d,c=%d\nM,a,b,c);)若輸出的結(jié)果為a=20,b=30,c=40,則以下能夠正確輸入數(shù)據(jù)的是A)a=10]20,b=20]30,c=40B)20,30,40C)a=20,b=30,c=40D)a=10]20,b=30]20,c=40[注]:“]''表示空格,表示回車正確答案:Dx,y,z被定義為int型變量,若從鍵盤給x,y,z輸入數(shù)據(jù),正確的輸入語句是A)INPUTx>y、z;scanf("%d%d%dn,&x,&y,&z);scanf("%d%d%d”,x,y,z);read(M%d%d%dn,&x,&y,&z);正確答案:B已有定義inta=?2;和輸出語句printf("%81x",a);以下正確的敘述是A)整型變量的輸出形式只有%d一種B)%x是格式符的ー種,它可以適用于任何ー種類型的數(shù)據(jù)C)%x是格式符的ー種,其變量的值按十六進制輸出,但%81x是錯誤的D)%81x不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度正確答案:D下列程序段的輸出結(jié)果是:inta=1234;floatb=123.456;doublec=12345.54321;printf(M-,%2.1f,%2.1f;a,b,c);A)無輸出B)12,123.5,12345.5C)1234,123.5,12345.5D)1234,123.4,1234.5正確答案:C執(zhí)行下列程序時輸入:123〈空格>456〈空格>789〈回車〉輸出結(jié)果是main(){chars[100];intc,i;scanf(,,%c0,&c);scanf("%d”,&i);scanf ;printf(n%c,%d,%s\n"?c,i,s);}A)123,456,789B)1,456,789C)1,23,456,789D)1,23,456正確答案:D若已定義:inta=25,b=14,c=19;以下三目運算符(?:)所構(gòu)成語句的執(zhí)行后a<=25&&b-<=2&&c?printf(n***a=%d,b=%d,c=%d\n",a,b,c):printf(n###a=%d,b=%d,c=%d\n%a,b,c);程序輸出的結(jié)果是A)***a=25,b=13,c=19B)***a=26,b=14,c=19C)###a=25tb=13,c=19D)###a=26,b=14,c=19正確答案:C請選出以下語句的輸出結(jié)果printf("%d\nn,strlen(M\t\H\065\xff\nH));5148D)輸出項不合法,無正常輸出正確答案:A下列程序的輸出結(jié)果是main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf(**%d\nH,d*y);)A)3B)3.2C)0D)3.07正確答案:C調(diào)用gets和puts函數(shù)時,必須包含的頭文件是stdio.hstdlib.hdefineD)以上都不對正確答案:A閱讀下面程序段#includeustdio.humain(){charc;(N?W)/2+7V;putchar(c);}輸出結(jié)果為A)MNOQ正確答案:A二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)4.12下列程序的輸出結(jié)果是16.0〇,請?zhí)羁铡ain(){inta=9,b=2;floatx=[1],y=l.l,z;z=a/2+b*x/y+l/2;printf("%5.2f\n",z);}正確答案:6.6在使用putchar和getchar函數(shù)處理字符時,必須在程序的開頭出現(xiàn)包含頭文件的命令行是【2】〇正確答案:#include下列程序的輸出結(jié)果是[3】,[4l〇#includemain(){floata=-1.3;b=1.3;printf(M%f,%f\fabs(a),fabs(b);}正確答案:1.300000正確答案:1.300000執(zhí)行程序時的輸入為123456789,則程序的運行結(jié)果為【5】〇#include"stdio.h”main(){inta,b;scanf('し%*2d",&a,&b);printf("%d\n",a-b);}正確答案:7第5章選擇結(jié)構(gòu)程序設計ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)在C程序中,判邏輯值時,用“非?!北硎具壿嬛怠罢妗?,又用“?!北硎具壿嬛怠凹佟?。在求邏輯值時,用()表示邏輯表達式值為“真”,又用()表示邏輯表達式值為“假”。10B)01C)非。非。D)11正確答案:A5.2已知intx=6,y=2,z;則執(zhí)行表達式z=x=x>y后,變量z的值為A)0145正確答案:B5.3能正確表示邏輯關系:“aヨ?;騛W?!钡腃語言表達式是A)a>=10ora<=0a>=0|a<=10a>=10&&a<=0D)a>=10la<=0正確答案:D5.4若變量c為char類型,能正確判斷出c為小寫字母的表達式是A)'a'<=c<='z'B)(c>=,aり||(c<='z')C)('a'<=c)and('z>=c)D)(c>=R)&&(c<-t!)正確答案:D設intx=l,y=l;表達式(!x||y--)的值是012-1正確答案:B有如下程序段inta=14,b=15,x;charc='A';x=(a&&b)&&(c〈B);執(zhí)行該程序段后,x的值為A)turefalse01正確答案:D以下程序的輸出結(jié)果是main(){inta=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n”,d);}10C)非〇的數(shù)D)-1正確答案:A設有:inta=l,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m二a>b)&&(n=c>d)后n的值是1234正確答案:B已知x,y,z均為整型變量,且值均為1,則執(zhí)行語句++x||++y&&++z;后,表達式x+y的值為1234正確答案:C表達式a<B||(C&D)中運算符優(yōu)先級最高的是A)||B)&C)<D)〇正確答案:D若運行時給變量x輸入12,則以下程序的運行結(jié)果是main(){intx,y;scanf("%d",&x);y=x>12?x+10:x-12;printf(M%d\nM,y);)0B)22C)12D)10正確答案:A5.12已知charch='C';則以下表達式的值是ch=(ch>='A'&&chv='Z')?(ch+32):ch;A)AaC)ZD)c正確答案:D若有條件表達式(exp)?a++:b-,則以下表達式中能完全等價于表達式(exp)的是A)(exp==0)B)(exp!=0)C)(exp==l)D)(exp!=l)正確答案:B有以下程序main(){inti=l,j=l,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n”,i,j,k);)執(zhí)行后輸出結(jié)果是1,1,22,2,12,2,22,2,3正確答案:C請閱讀以下程序:main(){inta=5,b=0,c=0;if(a=b+c)printf("***\n");elseprintf("$$$\n");)以上程序A)有語法錯不能通過編譯B)可以通過編譯但不能通過連接C)輸出?**D)輸出$$$正確答案:D若執(zhí)行下述程序時,若從鍵盤輸入6和8時,結(jié)果為main(){inta,b,s;scanf("%d%d\&a,&b);s=a;if(a<B)s=b;s*=s;printf(H%dM,s);}366448D)以上都不對正確答案:B有如下程序main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%f\n”,y);}該程序的輸出結(jié)果是0.0000000.2500000.500000D)1.000000正確答案:c以下4個選項中,不能看做一條語句的是A);a=5,b=2.5,c=3.6;if(a<5);if(b!=5)x=2;y=6;正確答案:D5.19若intk=8;則執(zhí)行下列程序后,變量k的正確結(jié)果是main(){intk=8;switch(k){case9:k+=l;case10:k+=l;case11:k+=1;break;default:k+=l;)printf(M%d\nH,k);}1211109正確答案:D5.20閱讀如下程序段include“sldio.h"main(){inta=45,b=40,c=50,d;d=a>30?b:c;switch(d){case30:printf("%d,”,a);case40:printf("%d,”,b);case50:printf("%d,”,c);default:printf("#");}}則輸出的結(jié)果是40,50,50,#40,#40,50,#正確答案:D5.21現(xiàn)有如下程序段,此程序段編譯有錯誤,則程序段的錯誤出在#includemain(){inta=30,b=40,c=50,d;d=a>30?b:c;switch(d){casea:printf("%d,”,a);caseb:printf("%d,”,b);casec:printf("%d,”,c);defau比printf("科);}}default:printfA#");這個語句d=a>30?b:c;這個語句casea:printf(H%d,M,a);caseb:printfC%dJ,b);casec:printfC%d,",c);這三個語句D)switch(d)這個語句正確答案:C二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)設y是int型,請寫出y為奇數(shù)的關系表達式【1】〇正確答案:(y%2)==l或(y%2)!=0設inta=5,b=6,表達式(++a==b--)?++a:--b的值是[2]〇正確答案:7將以下程序?qū)懗扇窟\算表達式是【3】〇if(a>b)max=a;elsemax=b;正確答案:max=(a>b)?a:b;以下程序輸出的結(jié)果是【4】〇main(){inta=5,b=4,c=3,d;d=(a>b>c);printf(M%d\n",d);)正確答案:0若從鍵盤輸入58,則以下程序輸出的結(jié)果是【5】〇main(){inta;scanf(”%d”,&a);if(a>50)printf("%d”,a);if(a>40)printf("%d”,a);if(a>30)printf("%d”,a);)正確答案:585858閱讀下面語句,則程序的執(zhí)行結(jié)果是【6】〇include飛idio.h"main(){inta=-l,b=l,k;if((++a<0)&&!(b--<=0))printf("%d,%d\n”,a,b);elseprintf(H%d,%d\nM,b,a);}正確答案:1,0閱讀下面程序,則在執(zhí)行時候的輸出為【7】〇#include"stdio.h"main(){intx=l,y=2,z=0;if(x=2)z=x,x=y,y=z;printf("%d,%d\n”,x,y);}正確答案:2,2以下程序的輸出結(jié)果是【8】〇main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(aelseif(ok2)x=10;elsex="l;printf("%d\n”,x);}正確答案:?1閱讀下面的程序,當程序在執(zhí)行時,如果輸入的是7V,則輸出結(jié)果為[9]〇include“stdio.h"main(){chara;a=getchar();switch(a){case65:printf("%c,,/A,);case66:printf(“%c",'B');default:printf("%s\n","other");}}正確答案:ABother第6章循環(huán)控制ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)對表達式for(表達式1;;表達式3)可理解為for(表達式1;。;表達式3)for(表達式1;1;表達式3)for(表達式1;表達式1;表達式3)for(表達式1;表達式3;表達式3)正確答案:B在下列選項中,沒有構(gòu)成死循環(huán)的是A)inti=100;while(1){i=i0+1;if(i>100)break;}for(;;);intk=10000;do{k++;}while(k>10000);ints=36;while(s)-s;正確答案:D下面有關for循環(huán)的正確描述是for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況for循環(huán)是先執(zhí)行循環(huán)體語句,后判斷表達式C)在for循環(huán)中,不能用break語句跳出循環(huán)體D)for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來正確答案:D若inti,j;,則for(i=j=0;i〈10&&j<8;i++,j+=3)控制的循環(huán)體執(zhí)行的次數(shù)是A)9B)8C)3D)2正確答案:C閱讀下列程序段,則程序的輸出結(jié)果是#includeustdio.humain(){inta=10,b=10,k;for(k=0;a>8;b=++k)printf(M%d,%d,H,a- -b);printf(“ヽn”);}A)10,10,10,0,B)10,9,9,0,C)10,10,9,1,D)9,9,9,1,考生答案:正確答案:B有一堆零件(100到200之間),如果分成4個零件ー組的若干組,則多2個零件;若分成7個零件ー組,則多3個零件:若分成9個零件ー組,則多5個零件。下面程序是求這堆零件總數(shù),請選擇填空。#includemain(){inti;for(i=100;i<200;i++)if((i-2)%4==0)if(!((i-3)%7))if()printf("%d”,i);)i%9=5i%9!=5(i-5)%9!=0D)(i-5)%9==0正確答案:D6.7下列程序的輸出結(jié)果是#include"stdio.h"main(){inti,a=0,b=0;for(i=l;i<10;i++){if(i%2==0){a++;continue;}b++;}printf("二%d,b二%d”,a,b);}a=4,b=4a=4,b=5a二5,b二4a=5,b=5正確答案:B6.8閱讀下列程序,則執(zhí)行結(jié)果是include“stdio.h"main(){inta二〇,b二〇,c二。,i;for(i二〇;iv4;i++)switch(i){case0:a二i++;case1:b二i++;case2:c二i++;case3:i++;}printf("%d,%d,%d,%d\n”,a,b,c,i);}A)0,1,3,4B)1,2,3,4C)0,1,2,5D)023,4正確答案:C6.9閱讀下列程序,程序的輸出結(jié)果是includenstdio.h"main()(intm,n;floatk;for(m=6;m>2;m--){k=0;for(n=m;n>l;n--)k=k+m*n;)printf(n%f\nn,k);)5.00000015.000000C)25.000000D)35.000000正確答案:B6.10下面程序的運行結(jié)果是#include"stdio.h"main(){intj,i,k=O;for(j=50;jv=60;j++){if(!(k))printf(“ヽn");for(i=2;i<J;I++)&NBSP;if(!(j%i))break;if(i>=j-l){printf("%d”,j);k++;}535959533595D)9535正確答案:A已知intt=0;while(t=l)(...)則以下敘述正確的是A)循環(huán)控制表達式的值為0B)循環(huán)控制表達式的值為1〇循環(huán)控制表達式不合法D)以上說法都不對正確答案:B設有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf("%d",s);則A)運行程序段后輸出〇B)運行程序段后輸出1〇程序段中的控制表達式是非法的D)程序段執(zhí)行無限次正確答案:B下列程序的輸出結(jié)果是#include"stdio.h"main(){inti=6;while(i--)printf("%d",--i);printf("\n");}531420C)654321D)死循環(huán)正確答案:B對下1,H兩個語句描述正確的是I.while(1)II.for(;;)A)都是無限循環(huán)B)I是無限循環(huán),II錯誤〇I循環(huán)一次,II錯誤D)以上答案都錯正確答案:A以下程序段的描述,正確的是x=-l;do{x=x*x;}while(!x);A)是死循環(huán)B)循環(huán)執(zhí)行兩次〇循環(huán)執(zhí)行ー次D)有語法錯誤正確答案:C若有如下語句intx=3;do{printf(M%d\nH,x-=2);}while(!(--x));則上面程序段A)輸出的是1B)輸出的是1和一2C)輸出的是3和〇D)是死循環(huán)正確答案:B下面程序的運行結(jié)果是#includemain(){inta=l,b=10;do{b?=a;a++;}while(b--<0);printf(na=%d,b=%d\nH,a,b);)A)a=3,b=l1B)a=2,b=8C)a=l,b=-lD)a=4,b=9正確答案:B若運行以下程序時,從鍵盤輸入ADescriptor(表示回車),則下面程序的運行結(jié)果是#includemain(){charc;intv0=l,vl=0,v2=0;do{switch(c=getchar()){caseraz:case'A':case'e':case'E':case'i':caseT:case’〇':case'O':case'u':case'U':vl+=1;default:v0+=1;v2+=1;}}while(c!='\n');printf(nvO=%d,v1=%d,v2=%d\nM,vO,v1,v2);}A)v0=7,vl=4,v2=7B)v0=8,vl=4,v2=8C)v0=ll,vl=4,v2=llD)v0=13,vl=4,v2=12正確答案:D下面程序的功能是把316表示為兩個加數(shù)的和,使兩個加數(shù)分別能被13和11整除,請選擇填空。#includemain(){inti=Oj,k;do{i++;k=316-13*i;}while();j=k/ll;printf("316=13*%d+ll*%d",i,j);)A)k/11B)kC)k/ll==OD)k==0正確答案:BC語言中while和do-while循環(huán)的主要區(qū)別是do-while的循環(huán)體至少無條件執(zhí)行一次while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴格do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)do-while的循環(huán)體不能是復合語句正確答案:A下列說法中錯誤的是A)只能在循環(huán)體內(nèi)使用break語句B)在循環(huán)體內(nèi)使用break語句可以使流程跳出本層循環(huán)體,從而提前結(jié)束本層循環(huán)C)在while和d〇…while循環(huán)中,continue語句并沒有使整個循環(huán)終止D)continue的作用是結(jié)束本次循環(huán),即跳過本次循環(huán)體中余下尚未執(zhí)行的語句,接著再一次進行循環(huán)判斷正確答案:A二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)設i,j,k均為int型變量,則執(zhí)行完下面的for語句后,k的值為【1】〇for(i=0,j=10;i<=j;i++,j--)k=i+j;正確答案:10下列程序的功能是輸入ー個整數(shù),判斷是否是素數(shù),若為素數(shù)輸出1,否則輸出0,請?zhí)羁铡ain(){inti,x,y=l;scanf("%d",&x);for(i=2;i<=x/2;i++)if[2]{y=0;break;}printf("%d\n",y);}正確答案:(x%i==0)以下程序的輸出結(jié)果是[3】。main(){inty=9;for(;y>0;y--)if(y%3==0){printf("%d”,??y);continue;}1正確答案:852閱讀下面程序段,則執(zhí)行后的輸出結(jié)果為【4】〇#include"stdio.h"main(){inta=l;for(;a<=15;)if(++a%5!=2)continue;elseprintf(n%d",a);printf(M\nM);)正確答案:2712閱讀下面語句,則執(zhí)行后的輸出結(jié)果為[5]#include"stdio.h"main(){chara,b;for(a='0',b='9';aprintf("%c%c",a,b);printf("\n");}正確答案:0918273645閱讀下面程序,則執(zhí)行后程序的結(jié)果為【6】include"stdio.h"main(){inta=0,b=0;while(a<15)a++;while(b++<15);printf("%d,%d\n",a,b);}正確答案:15,16第7章數(shù)組ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)若有說明inta[3][4];則a數(shù)組元素的非法引用是a[0][2*1]a[1][3]a[4-2][0]a[0][4]正確答案:D在C語言中,引用數(shù)組元素時,其數(shù)組下標的數(shù)據(jù)類型允許是A)整型常量B)整型表達式〇整型常量或整型表達式D)任何類型的表達式正確答案:C執(zhí)行下面的程序段后,變量k中的值為intk=3,s[2];s[0]=k;k=s[1]*10;A)不定值333010正確答案:A定義如下變量和數(shù)組:intk;inta[3][3]={9,8,7,6,5,4,3,2,1};則下面語句的輸出結(jié)果是for(k=0;k<3;k++)printf("%d",a[k][k]);753951963741正確答案:B下列程序執(zhí)行后的輸出結(jié)果是main(){chararr[2][4];strcpy(arrjyou");strcpy(arr[1]Jme");arr[0][3]printf(M%s\n';arr);)you&meyoumeerr正確答案:A設有數(shù)組定義:chararray[]ゴChina”;則數(shù)組array所占的空間為4個字節(jié)5個字節(jié)6個字節(jié)7個字節(jié)正確答案:C以下不正確的定義語句是doublex[5]={2.0,4.0,6.0,8.0,10.0};inty[5]={0,1,3,5,7,9);charcl[]={T,'2','3','4','5'};charc2ロ={'\xl0','\xa','\x8'};正確答案:B若有說明:intaロ[3]={1,2,3,4,5,6,7};則a數(shù)組第一維的大小是234D)無確定值正確答案:B對以下說明語句的正確理解是inta[10]={6,7,8,9,10);A)將5個初值依次賦給a[1]至a[5]B)將5個初值依次賦給a[0]至a[4]C)將5個初值依次賦給a[6]至a[10]D)因為數(shù)組長度與初值的個數(shù)不相同,所以此語句不正確正確答案:B若有說明:intaロ[4]={0,0};則下面不正確的敘述是A)數(shù)組a的每個元素都可得到初值〇B)二維數(shù)組a的第一維大小為1〇當初值的個數(shù)能被第二維的常量表達式的值除盡時,所得商數(shù)就是第一維的大小D)只有元素a[0][0]和a[〇][1]可得到初值,其余元素均得不到確定的初值正確答案:D有以下程序main(){chara[]={'a','b','c','d','e',R、〇’};inti,j;i=sizeof(a);j=strlen(a);printf("%d,%d\b",ij);1程序運行后的輸出結(jié)果是9,98,91,8D)9,8正確答案:D假定int類型變量占用兩個字節(jié),其有定義:intx口0]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是361020正確答案:D以下能對二維數(shù)組c進行正確的初始化的語句是intc[3]ロ={{3},{3},{4}};intc[][3]={{3},{3},{4});〇intc[3][2]={{3},{3},{4},{5});D)intc[][3]={(3},{},{3});正確答案:B在C語言中,ー維數(shù)組的定義方法為類型說明符數(shù)組名A)[常量表達式]B)[整型常量]C)[整型變量]D)[整型常量]或[整型表達式]正確答案:A若二維數(shù)組a有m歹リ,則計算任一元素a[i][j]在數(shù)組中相對位置的公式為(假設a[〇][〇]位于數(shù)組的第一個位置上)i*m+jj*m+Ii*m+j-li*m+j+l正確答案:A下面程序輸出的結(jié)果是main(){inti;inta[3][3]=[12,3,4,5,6,7,8,9};for(i=0;i<3;i++)printfC,%d",a[2-i][i]);1597530357D)591正確答案:B7.17以下不能對二維數(shù)組a進行正確初始化的語句是inta[2][3]={0};inta[][3]={{1,2},{〇}};〇inta[2][3]={{1,2},{3,4},{5,6));D)inta[][3]={1,2,3,4,5,6);正確答案:C閱讀下面程序,則程序段的功能是#include"stdio.h"main(){intcロ={23,l,56,234,7,0,34),i,j,t;for(i=l;i<7;i++){t=c[i];j=i-l;while(j>=0&&t>c[j]){c[j+1]=c[j];j-;)c[j+1]=t;)for(i=0;i<7;i++)printf("%d",c[i]);putchar('\n');)A)對數(shù)組元素的升序排列B)對數(shù)組元素的降序排列〇對數(shù)組元素的倒序排列D)對數(shù)組元素的隨機排列正確答案:B下列選項中錯誤的說明語句是chara[]={'t',’〇’,'y',’〇’,'u','、〇’};chara[]={"toyou\0");chara[]="toyou\0";chara[]='toyou\O';正確答案:D下述對C語言字符數(shù)組的描述中錯誤的是A)字符數(shù)組的下標從〇開始B)字符數(shù)組中的字符串可以進行整體輸入/輸出C)可以在賦值語句中通過賦值運算符“ゴ’對字符數(shù)組整體賦值D)字符數(shù)組可以存放字符串正確答案:C閱讀下列程序,則在執(zhí)行后,程序的運行結(jié)果為#include"stdio.h"#include"string.h"main(){chara[30]="nicetomeetyou!'1;strcpy(a+strlen(a)/2,Hyoun);printf("%s\n",a);)nicetomeetyouyounicetomeetyouyounicetoyou正確答案:D現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0lk[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為A)7,8B)8,8C)7,10D)8,10正確答案:D有如下定義語句:intaa[][3]={12,23,34,4,5,6,78,89,45);,則45在數(shù)組aa中的行列坐標各為A)3,2B)3,1C)2,2D)2,1正確答案:C現(xiàn)在有如下程序include"stdio.h"main(){chars[80];inti,j;gets(s);for(i=j=O;s[i]!=ヘ〇,;i++)if(s[i]!=H)s[j]ハ〇';puts(s);)這個程序段的功能是刪除輸入的字符串中字符H,,則空線上應當添入的是s[j++]=s[i];j++;s[j]=s[i++];j++;s[j++]=s[i];s[j]=s[i];正確答案:C以下二維數(shù)組c的定義形式是intc[3]ロfloatc[3,4]doublec[3][4]floatc(3)(4)正確答案:C已知:intc[3][4];則對數(shù)組元素引用正確的是c[1][4]c[1.5][0]〇c[1+0][0]D)以上表達都錯誤正確答案:C若有以下語句,則正確的描述是charaロ="toyou";charb[]={ヤ‘,‘0’,'y',’0’,'u'};a數(shù)組和b數(shù)組的長度相同a數(shù)組長度小于b數(shù)組長度〇a數(shù)組長度大于b數(shù)組長度D)a數(shù)組等價于b數(shù)組正確答案:C已知:chara[15],b[15]={"Ilovechina"};則在程序中能將字符串Ilovechina賦給數(shù)組a的正確語句是A)a="Ilovechina";strcpy(b,a);a=b;strcpy(a,b);正確答案:D7.29已知:chara[20]="abc",b[20]="defghi";則執(zhí)行下列語句后的輸出結(jié)果為printf("%d",strlen(strcpy(a,b)));1165D)以上答案都不正確正確答案:B閱讀如下程序段,則程序在先后輸入love和china后,輸出結(jié)果是#include#includemain(){chara[30],b[30];intk;gets(a);gets(b);k=strcmp(a,b);if(k>0)puts(a);elseif(k<0)puts(b);}A)loveB)chinaC)lovechinaD)沒有輸出結(jié)果正確答案:A二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)下面程序的功能是輸出數(shù)組s中最大元素的下標,請?zhí)羁?。main(){intk,p,s[]={1,-9,7,2,-10,3);for(p=0,k=p;p<6;p++)if(s[p]>s[k])[1]printf("%d\n",k);}正確答案:k=p;以下程序可把輸入的十進制數(shù)以十六進制數(shù)的形式輸出,請?zhí)羁?。main(){charb[17]={“0123456789ABCDEド};intc[64],d,i=0,base=16;longn;printf(MEnteranumber:\nM);scanf(,'%ld',,&n);do{c[i]=[2];i++;n=n/base;}while(n!=0);printf("Transmitenewbase:\n");for(-i;i>=0;-i){d=c[i];printf(M%cn,b[3]);}printf(H\nM);)正確答案:n°se[d]以下程序的功能是:刪去ー維數(shù)組中所有相同的數(shù),使之只剩ー個。數(shù)組中的數(shù)已按由小到大的順序排列,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個數(shù)。例如,若一維數(shù)組中的數(shù)據(jù)是:2223445666677899101010刪除后,數(shù)組中的內(nèi)容應該是:2345678910。請?zhí)羁铡?include#defineN80intfun(inta[],intn){inti,j=l;for(i=l;i<N;I++)if(a[j-1][4]a[i])a[j++]=a[i];[5];)main(){inta[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10},i,n=19;printf("Theoriginaldata:\n");for(i=0;iprintf(M=",a[i]);n=fun(a,n);printf("\nThedataafterdeleted:\n");fbr(i=0;iprintf("=",a[i]);printf(H\n\nM);}正確答案:!=returnj下列程序的輸出的結(jié)果是[6】,[7]〇main(){inti,jrow,colum,m;staticintarray[3][3]={(100,200,300},{28,72,-30}{-850,2,6}};m=array[0][0];for(i二〇;iV3;i++)for(j=0;j<3;j++)if(array[i][j]<m){m=array[i][j];colum寸row=i;printf("%d,%d,%d\n",m,row,colum);)正確答案:-850,-2,0下面程序是求出數(shù)組arr的兩條對角線上元素之和,請?zhí)羁铡?include"stdio.h"main(){intarr[3][3]={2,3,4,8,3,2,7,9,8},a=0,b=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)if([8])a=a+arr[i][j];for(i=0;i<3;i++)for([9];j>=O;j-)if([10])b=b+arr[i][j];printf("%d,%d\n",a,b);}正確答案:i==jj=2i+j==2第8章函數(shù)ー、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上。)若已定義的函數(shù)有返回值,則以下關于該函數(shù)調(diào)用的敘述中錯誤的是A)函數(shù)調(diào)用可以作為獨立的語句存在B)函數(shù)調(diào)用可以作為ー個函數(shù)的實參〇函數(shù)調(diào)用可以出現(xiàn)在表達式中D)函數(shù)調(diào)用可以作為ー個函數(shù)的形參考生答案:正確答案:D在調(diào)用函數(shù)時,如果實參是簡單的變量,它與對應形參之間的數(shù)據(jù)傳遞方式是A)地址傳遞B)單向值傳遞C)由實參傳形參,再由形參傳實參D)傳遞方式由用戶指定考生答案:正確答案:B以下正確的說法是A)定義函數(shù)時,形參的類型說明可以放在函數(shù)體內(nèi)return后邊的值不能為表達式〇如果函數(shù)值的類型與返回值類型不一致,以函數(shù)值類型為準D)如果形參與實參類型不一致,以實參類型為準考生答案:正確答案:C以下正確的說法是A)用戶若需調(diào)用標準庫函數(shù),調(diào)用前必須重新定義B)用戶可以重新定義標準庫函數(shù),若如此,該函數(shù)將失去原有含義〇系統(tǒng)根本不允許用戶重新定義標準庫函數(shù)D)用戶若需調(diào)用標準庫函數(shù),調(diào)用前不必使用預編譯命令將該函數(shù)所在文件包括到用戶源文件中,系統(tǒng)自動調(diào)用考生答案:正確答案:B以下敘述正確的是A)函數(shù)可以嵌套定義但不能嵌套調(diào)用B)函數(shù)既可以嵌套調(diào)用也可以嵌套定義〇函數(shù)既不可以嵌套定義也不可以嵌套調(diào)用D)函數(shù)可以嵌套調(diào)用但不可以嵌套定義考生答案:正確答案:D下面對C語言的描述中,正確的是A)函數(shù)一定有返回值,否則無法使用函數(shù)B)C語言函數(shù)既可以嵌套定義又可以遞歸調(diào)用C)在C語言中,調(diào)用函數(shù)時,只能將實參的值傳遞給形參D)C語言程序中有調(diào)用關系的所有函數(shù)都必須放在同一源程序文件中考生答案:正確答案:C下列說法中錯誤的是A)靜態(tài)局部變量的初值是在編譯時賦予的,在程序執(zhí)行期間不再賦予初值B)若全局變量和某ー函數(shù)中的局部變量同名,則在該函數(shù)中,此全局變量被屏蔽〇靜態(tài)全局變量可以被其他的編輯單位所引用D)所有自動類局部變量的存儲單元都是在進入這些局部變量所在的函數(shù)體(或復合語句)時生成,退出其所在的函數(shù)體(或復合語句)時消失考生答案:正確答案:C以下程序有語法錯誤,有關錯誤原因的正確說法是main(){intG=5,k;voidprt_char();k=prt_char(G);A)語句voidprt_char();有錯,它是函數(shù)調(diào)用語句,不能用void說明B)變量名不能使用大寫字母〇函數(shù)說明和函數(shù)調(diào)用語句之間有矛盾D)函數(shù)名不能使用下劃線考生答案:正確答案:C以下正確的函數(shù)頭定義形式是doublefun(intx,inty)doublefun(intx;inty)doublefun(intx,inty);doublefun(intx,y);考生答案:正確答案:A以下所列的各函數(shù)首部中,正確的是voidplay(var:Integer,varb:Integer)voidplay(inta,b)voidplay(inta,intb)Subplay(aasinteger,basinteger)考生答案:正確答案:C不合法的main函數(shù)命令行參數(shù)表示形式是main(inta,char*c[])main(intarc,char**arv)main(intargc,char*argv)main(intargv,char*argc[])考生答案:正確答案:C下面函數(shù)調(diào)用語句含有實參的個數(shù)為func((expl,exp2),(exp3,exp4,exp5));1245考生答案:正確答案:B設有如下函數(shù)fun(floatx){printf(“ヽn%d”,x*x);)則函數(shù)的類型是A)與參數(shù)x的類型相同B)是voidC)是int型D)無法確定考生答案:正確答案:C有以下程序floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf("%3.0f\n",fun(tint)fun(a+c,b),a-c));)程序運行后的輸出結(jié)果是A)編譯出錯9219.0考生答案:正確答案:B以下程序中函數(shù)sort的功能是對a數(shù)組中的數(shù)據(jù)進行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;ifor(j=i+l;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i<10;i++)printf("%d,",aa[i]);printf("\n");)程序運行后的輸出結(jié)果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,考生答案:正確答案:C下列程序執(zhí)行后的輸出結(jié)果是voidfunc1(inti);voidfunc2(inti);charst[]="hello,friend!";voidfund(inti){printf("%c",st[i]);if(i<3){i+=2;func2(i);})voidfunc2(inti){printf("%c",st[i]);if(i<3){i+=2;fund(i);))main(){inti=0;func1(i);printf("\n");1hellohelhlohim考生答案:正確答案:C8.17以下函數(shù)返回a所指數(shù)組中最大值所在的下標值fun(int*a,intn){inti,j=O,p;p=j;for(i=j;iif(a[i]>a[p]);return(p);}在下劃線處應填入的內(nèi)容是i=pa[p]=a[i]C)P=jD)p=I考生答案:正確答案:D有以下程序intf(intn){if(n==l)return1;elsereturnf(n-1)+1;}main(){inti,j=O;for(i=l;i<3;i++)j+=f(i);printf("%d\n",j);)程序運行后的輸出結(jié)果是4321考生答案:正確答案:B有如下程序:longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%d\n",fib(3));)該程序的輸出結(jié)果是2468考生答案:正確答案:B下列函數(shù)的運行結(jié)果是main(){inti=2,p;intj,k;冃;k=++i;p=f(j,k);printf("%d”,p);)intf(inta,intb){intc;if(a>b)c=l;elseif(a==b)c=0;elsec=-l;return(c);)-112D)編譯出錯,無法運行考生答案:正確答案:A閱讀下列程序,當運行函數(shù)時,輸入asdafaaz67,則輸出為#include#include#includeintfun(char*str){inti,j=0;for(i=0;str[i]!='、〇';i++)if(str[i]!='')str[j++]=str[i];str[j]='\0';)main(){charstr[81];intn;clrscr();printf("Inputastring:り;gets(str);puts(str);fun(str);printf(M%s\n';str);)asdafaaz67asdafaaz67asdz67考生答案:正確答案:A以下程序的輸出結(jié)果是longfun(intn){longs;if(n==l||n==2)s=2;elses=n-fun(n-1);returns;)main(){printf(”%ld\n",fun(3));)1234考生答案:正確答案:A已有變量定義和函數(shù)調(diào)用語句:inta=25;print_value(&a);下面函數(shù)的正確輸出結(jié)果是voidprint_value(int*x){printf("%d\n”,++*x);)23242526考生答案:正確答案:D下面程序應能對兩個整型變量的值進行交換。以下正確的說法是main(){inta=10,b=20;printf("⑴a=%d,b=%d\nH,a,b);swap(&a,&b);printf("(2)a=%d,b=%d\n",a,b);swap(intp,intq){intt;t=p;p=q;q=t;)A)該程序完全正確B)該程序有錯,只要將語句swap(&a,&b);中的參數(shù)改為a,b即可〇該程序有錯,只要將swap〇函數(shù)中的形參p和q以及t均定義為指針(執(zhí)行語句不變)即可D)以上說法都不對考生答案:正確答案:D以下程序的輸出結(jié)果是intf(){staticinti=0;ints=l;s+=i;i++;returns;)main(){inti,a=0;for(i=0;i<5;i++)a+=f();printf("%d\n",a);)20242515考生答案:正確答案:D閱讀下面程序段,則執(zhí)行后輸出的結(jié)果是include“sldio.h"main(){charfun(char,int);chara='A';intb=13;a=fun(a,b);putchar(a);)charfun(chara,intb){chark;k=a+b;returnk;A)AB)MC)ND)L考生答案:正確答案:C編寫求兩個雙精度數(shù)之和的函數(shù),選項中正確的是A)doubleadd(doublea,doubleb){doubles;s=a+b;returns;}B)doubleadd(doublea,b){doubles;s=a+b;return(s);)doubleadd(doubleadoubleb){doubles;s=a+b;returns;)doubleadd(a,b){doublea,b,s;s=a+b;return(s);)考生答案:正確答案:A現(xiàn)有如下程序#includeHstdio.hMintfun(intx){printf(”x=%d\n”,++x);)main(){fun(12+5);)則程序的輸出結(jié)果是12131718考生答案:正確答案:D現(xiàn)有如下程序段#include"stdio.h"intaa(intx,inty);main(){inta=24,b=16,c;c=aa(a,b);printf(**%d\nM,c);intaa(intx,inty){intw;while(y){w=x%y;x=y;y=w;)returnx;)則程序段的輸出結(jié)果是8765考生答案:正確答案:A下列程序的輸出結(jié)果是#includeHstdio.hM#defineN3#defineM3voidfun(inta[M][N]){printf("%d\n”,*(a[1]+2));)main(){inta[M][N];intij;for(i=0;ifor(j=O;ja[i][j]=i+j-(i-j);fun(a);)3456考生答案:正確答案:B閱讀下面程序,則執(zhí)行后的結(jié)果為includenstdio.h"main(){fun3(funl(),fun2());funl(){intk=20;returnk;)fun2(){inta=15;returna;)fun3(inta,intb){intk;k=(a-b)*(a+b);printf(M%d\nM,k);)0184175D)編譯不通過考生答案:正確答案:C閱讀下面程序,則程序執(zhí)行后的結(jié)果為#includeHstdio.hMmain(){inta=4,b=6,c=7;doubled,fun(int,int,int);d=fun(a,b,c);printf("%lf\n”,d);)doublefun(inta,intb,intc){doubles;s=a%b*c;returns;}A)2727.00000028D)28.000000考生答案:正確答案:D現(xiàn)有如下程序,則程序的輸出結(jié)果為includenstdio.h"intf(inta,intb){intc;if(a>0&&a<10)c=(a+b)/2;elsec=a*b/2;returnc;main(){inta=8,b=20,c;c=f(a,b);printf(H%d\nM,c);)A)隨機數(shù)B)80028D)14考生答案:正確答案:D閱讀如下程序段,則程序段的執(zhí)行后的輸出結(jié)果為#include"stdio.h"main(){charc;inti;charcount();intp(char);for(i=0;i<30;i++)c=count();p(c);)charcount(){charstr='A';str+=1;return(str);}p(charc){putchar(c);putchar('\n');)ABab考生答案:正確答案:B8.35閱讀程序,則執(zhí)行后的結(jié)果為#include"stdio.h"main(){inti,m,n;for(i=0;i<3;i++){m=testl();n=test2();)printf("%d,%d\n",m,n);testl(){intx=0;x++;returnx;)test2(){staticintx=0;x++;returnx;}1,11,33,13,3考生答案:正確答案:B二、填空題(請將每一個空的正確答案寫在答題卡相應序號后。)當調(diào)用函數(shù)時,實參是一個數(shù)組名,則向函數(shù)傳遞的是【1】。A考生答案:正確答案:數(shù)組的首地址函數(shù)fun的功能是:根據(jù)以下公式求p的值,結(jié)果由函數(shù)值返回。m與n為兩個正數(shù)且要求m>n。例如:m=12,n=8時,運行結(jié)果應該是495.000000。請在題目的空白處填寫適當?shù)某绦蛘Z句,將該程序補充完整。#include#includefloatfun(intm,intn){inti;doublep=1.0;for(i=l;i<=m;i++)[2];for(i=l;i<=n;i++)[3];for(i=l;i<=m-n;i++)p=p/i;returnp;)main(){clrscr();printf("p=%f\n",fun(12,8));)A考生答案:正確答案:p=p*i正確答案:p二p/i以下程序的輸出結(jié)果是[4]〇voidfun(){staticinta=0;a+=2;printf("%d”,a);{intcc;for(cc=l;cc<4;cc++)fun();printf ;)A考生答案:正確答案:2468.39以下程序運行結(jié)果是【5】〇longfib(intg){switch(g){case0:return0;:return1;)return(fib(g-1)+fib(g-2));}main(){longk;k=fib(5);printf(Hk=%(d\n)\k);)A考生答案:正確答案:k=5以下程序的輸出結(jié)果是【6】〇unsignedfun6(unsignednum){unsignedk=l;do{k*=num;num/=10;}while(num);returnk;}main(){unsignedn=26;printf("%d\n",fun6(n));)A考生答案:正確答案:12以下函數(shù)的功能是【7】〇floatav(a,n)floata[];int

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論