C語言程序設(shè)計(jì)測試題及答案2套_第1頁
C語言程序設(shè)計(jì)測試題及答案2套_第2頁
C語言程序設(shè)計(jì)測試題及答案2套_第3頁
C語言程序設(shè)計(jì)測試題及答案2套_第4頁
C語言程序設(shè)計(jì)測試題及答案2套_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計(jì)測試題及答案2套一、單項(xiàng)選擇第一章C語言概述一個(gè)C程序的執(zhí)行是從—A、本程序的MAIN函數(shù)開始,到MAIN函數(shù)結(jié)束。B、本程序文件的第一個(gè)函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束C、本程序的MAIN函數(shù)開始,到本程序的最后一個(gè)函數(shù)結(jié)束。D、本程序文件的第一個(gè)函數(shù)開始,到本程序的MAIN函數(shù)結(jié)束。(2)以下敘述正確的是一A、在C程序中,MAIN函數(shù)必須位于程序的最前面。B、C程序的每行中只能寫一條語句。C、C語言本身沒有輸入輸出語句。D、在對一個(gè)C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯(cuò)誤。C語言規(guī)定,在一個(gè)源程序中,MAIN主函數(shù)的位置是在:—A、必須在最前面。B、必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C、可以在任意位置。D、必須在最后面一個(gè)C程序是由:A、一個(gè)主程序和若干子程序組成B、函數(shù)組成C、若干過程組成D、若干子程序組成(5)以下敘述不正確的是:A、一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成B、一個(gè)C源程序必須包含一個(gè)MAIN函數(shù)C、C程序的基本組成單位是函數(shù)D、在C程序中,注釋說明只能位于一條語句的后面第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(1)若x,i,j,k都是int型變量,則計(jì)算下面表達(dá)式后,x的值為.x=(i=4,j=16,k=32)A、4B、16C、32D、52(2)下列四組選項(xiàng)中,均不是C語言鍵字的選項(xiàng)是一A、define,IF,typeB、getc,chanprintfC、include,scanf,caseE、if,struct,type(3)下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識符的選項(xiàng)是一A、A,P_0,doB、float,laO,_AC、b-a,goto,intD、_123,temp,INT(4)若有代數(shù)式3ae/bc,則正確的C語言表達(dá)式是一A、a/b/c*e*3B、3*a*e/bcC、3*a*e/b*cD、a*e/c/b*3(5)已知各變量的類型說明如下:intk,a,b;unsingedlongw=5;doublex=1.42;則以下不符合C語言語法的表達(dá)式是一A、x%(-3)B、w+=-2;C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)第三章簡單c程序設(shè)計(jì)(1)putchar函數(shù)可以向終端輸出一個(gè)A、整型變量表達(dá)式值B、實(shí)型變量值C、字符串D、字符或字符型變量值(2)若x,y均定義為血型,z定義為double型,以下合法的scanf函數(shù)調(diào)用語句是.A、scanf(ut%d%lx,%le,\&x,&y,&z);B、scanf(u%2d*%d%ir,&x,&y,&z);C、scanf(tt%x%*d%o,,,&x,&y,&z);D、scanf(u%x%o%6.2f\&x,&y,&z);⑶當(dāng)輸入數(shù)據(jù)的形式為:25,13,10<回車〉時(shí),以下程序的輸出結(jié)果為—main(){intx,y,z;scanf(u%d%d%d,,,&x,&y,&z);printf(“x+y+z=%d\n”,x+y+z);)A、x+y+z=48B、x+y+z=35C、x+z=35D、不確定值(4)以下能正確的定義整型變量a,b和c,并對它們賦初值為5的語句是一A、inta=b=c=5;B、inta,b,c=5;C、a=5,b=5,c=5;D、a=b=c=5;(5)若有以下定義,則正確的賦值語句是一inta,b;floatx;A、a=l,b=2;B、b++;C、a=b=5;D、b=int(x);第四章選擇結(jié)構(gòu)程序設(shè)計(jì)(1)能正確表示“當(dāng)x的值在[1,10]和[200,210]的范圍為真,否則為假”的表達(dá)式是A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210)B、(x>=l)||(x<=10)||(x.>=200)||(x<=210)C、(x>=l)&&(x<=10)||(x.>=200)&&(x<=210)D、(x>=l)||(x<=10)&&(x.>=200)||(x<=210)(2)以下程序的運(yùn)行結(jié)果是一#include“stdio.h"main(){inta,b,d=24l;a=d/100%9;b=(-l)&&(-l);A、6,1B、2,1C、6,0D、2,0(3)請閱讀以下程序:main(){inta=5,b=0,c=0;if(a+b+c)printfp***\nM);elseprintf("$$$\n”);以上程序—.A)有語法錯(cuò)誤不能通過編譯B)可以通過編譯但不能直接通過連接C)輸出***D)輸出$$$(4)以下程序的運(yùn)行結(jié)果是—omain(){intm=5;if(m++>5)printfi(t4%d\n,,,m);elseprintf(t4%d\n,\m );4567(5)為了避免在嵌套的條件語句中if-else中產(chǎn)生二義性,c語言規(guī)定:else子句總是與相配對。A)縮排位置相同的ifB)其之前最近的ifC)其之后最近的ifD)同一行上的if第五章循環(huán)控制(1)設(shè)有程序段intk=10while(k=0)k=k-l則下面描敘正確的是.A)while(k=0)k=k-l;B)循環(huán)是無限循環(huán)C)循環(huán)體語句一次也不執(zhí)行D)循環(huán)體語句執(zhí)行一次(2)下面程序段的運(yùn)行結(jié)果是。intn=0;while(n++<=2);primf("%d”,n);234D)有語法錯(cuò)C語言中while和do-while循環(huán)的主要區(qū)別是。do-while的循環(huán)體至少無條件執(zhí)行一次while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴(yán)格do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)(4)以下能正確計(jì)算1*2*3*...*10的程序段是odo{i=l;s=l;s=s*i;i++;}while(I<=10);do{i=l;s=0;s=s*i;i++;}while(I<=10);i=l;s=l;do{s=s*i;i++;}while(I<=10);i=l;s=0;do{s=s*i;i++;)while(I<=10);第六章數(shù)組(1)在c語言中,引用數(shù)組元素時(shí),其數(shù)組下標(biāo)的數(shù)據(jù)類型允許是A)整型常量B)整型表達(dá)式C)整型常量或整型表達(dá)式D)任何類型的表達(dá)式(2)以下能對二維數(shù)組a進(jìn)行正確初始化的語句是A)inta[2][]={{l,0,l},{5,2,3,});inta[][3]={{l,2,3},{4,5,6});C)加2][4]={1,2,3,},{4,5},{6});D)inta[][3]={{l,0,1},{},{1,1});)(3)若有說明:inta[3][4]={0};則下面正確的敘述是.A)只有元素a[0][0]可得到初值0B)此說明語句不正確C)數(shù)組a中各元素都可得到初值,但其值不一定為0D)數(shù)組a中每個(gè)元素均可得到初值0(4)下面程序(每行程序前面的數(shù)字表示行號)。main(){floata[10]={0};intifbr(i=0;iv3;i++) scanf("%d”,&a[i];for(i=1;i<10;i++)a[O]=a[O]+a{i};printf("%f\n”,a[O]);)A)沒有錯(cuò)誤B)第3行有錯(cuò)誤C)第5行有錯(cuò)誤D)第7行有錯(cuò)誤(5)若二維數(shù)組a有m列,則計(jì)算機(jī)一元素在數(shù)組中位置的公式為。(假設(shè)a(0|[0]位于數(shù)組的第一個(gè)位置上。)i*m+jj*m+ii*m+j-li*m+j+l第七章函數(shù)(1)以下正確的函數(shù)定義形式是OA)doublefun(intxtinty)doublefun(intx;inty)doublefun(intx,inty)doublefun(intx,y);(2)以下正確的函數(shù)形式是。doublefun(intxjnty){z=x+y;returnz;}fun(intx,y){intz;returnz;)C)fun(x,y){intx,y;doublez;z=x+y;returnz;}D)doublefun(intx,inty){doublez;z=x+y;returnz;)(3)C語言規(guī)定,簡單變量做實(shí)參時(shí),它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是A)地址傳遞B)單向值傳遞C)由實(shí)參傳給形參,再由形參傳回給實(shí)參D)傳遞方式(4)C語言允許函數(shù)值型缺省定義,此時(shí)該函數(shù)值隱含的類型是A)tloat型B)int型C)long型D)double型⑸下面函數(shù)調(diào)用語句含有實(shí)參的個(gè)數(shù)為ofunc((exp1Texp2),(exp3,exp4,exp5));A)1B)2C)4D)5第八章編譯預(yù)處理命令(1)請讀程序:#defineADD(x) x+xmain(){intm=Ln=2,k=3;intsum=ADD(m+n)*k;printf(usum=%d,,,sum);)上面程序的運(yùn)行結(jié)果是osum=9sum=10sum=12sum=18(2)以下程序的運(yùn)行結(jié)果是o#defineMIN(x,y)(x)<(y)?(x)+(y)main(){intI=10,j=15,k;k=10*MIN(I,j);prin設(shè)"%d\n”,k);)A)10B)15C)100D)150(3)在宏定義#definePl3.14159中,用宏名PI代替一個(gè)A)常量B)單精度數(shù)C)雙精度數(shù)D)字符串(4)若有宏定義如下:TOC\o"1-5"\h\z#define X 5#define Y X+l#define Z Y*x/2則執(zhí)行以下printf語句后,輸出結(jié)果是.inta;a=Y;printfC%d\n”,Z);printf(M%d\n,\—a);A)7 B)12 C)12 D)76 6 5 5(5)若有以下宏定義:#defineN2#defineY(n)((N+l)*n)則執(zhí)行語句z=2*(N+Y(5));后的結(jié)果是oA)語句有錯(cuò)誤z=34z=70z無定值第九章指針(1)以下程有錯(cuò)誤,錯(cuò)誤原因是main(){int*p,I;char*q,ch;p=&I;q=&ch;*p=40;*p=*q;p和q的類型不一致,不能執(zhí)行*P=*Q:語句P中存放的是地址值,因此不能執(zhí)行*P=40:語句Q沒有指向具體的存儲(chǔ)單元,所以*Q沒有實(shí)際意義Q雖然指向了具體的存儲(chǔ)單元,但該單元中沒有確定值,所以不能執(zhí)行*P=*Q;語句(2)已有定義intk=2;int*ptrl,*ptr2;且ptrl和ptr2均已指向變量K,下面不能正確執(zhí)行的賦值語句是.A)k=*ptrl+*ptr2; B)ptr2=K;C)ptrl=ptr2; D)k=*ptr1*(*ptr2);(3)變量的指針,其含義是指該變量的.A)值B)地址C)名D)一個(gè)標(biāo)志(4)若有語句int*point,a=4;和ponit二&a;下面均代表地址的一組選項(xiàng)是.A)a,point,*&aB)&*a,&a,*pointC)*&point,*point,&aD)&a,&*point,point(5)下面能正確進(jìn)行字符串賦值操作的是.chars[5]={t€ABCDEM);chars[5]={tA,;B\,C,,,D,,,E,};char*S;s=''ABCDE”;char*S;scanfi["%s'',s);(6)若有以下定義,則對A數(shù)組元素的正確引用是.A)*&a[5]B)*a+2C)*(P+5)D)*(a+2)(7)若有以下定義,則對a數(shù)組元素地址的正確引用是>p+5*a+l&a+l&a[0](8)若有定義:inta[2][3];則對a數(shù)組的第I行第J列(假設(shè)I,J已正確說明并賦值)元素值的正確引用為.A)*(*(a+I)+J)B)(a+I)U]C)*(a+I+j)D)*(a+I)+j(9)若有定義:inta[2][3];則對a數(shù)組的第i行第j列(假設(shè)i,j已正確說明并賦值)元素地址的正確引用為.A)*(a[i]+j)B)(a+i)C)*(a+j)a[i]+j(10)若有以下定義和語句,則對a數(shù)組元素地址的正確引用為.Inta[2][3],(*p)[3]P=a;A)*(p+2)p[2]p[l]+l(p+1)+2第十章結(jié)構(gòu)體與共用體(1)以下對結(jié)構(gòu)體類型變量的定義中不正確的是.A)#defineSTUDENTstructstudentSTUDENT{intnum;floatage;Jstdl;B)structstudent{intnum;floatage;}stdl;C)struct{intnum;floatage;}stdl;D)struct{intnum;floatage;(student;structstudentstd1;(2)設(shè)有以下語句structstu{inta;floatb;Jstutype;則下面敘述正確的是.A)struct是結(jié)構(gòu)體類型的關(guān)鍵字B)structstu是用戶定義的結(jié)構(gòu)體類型C)stutype是用戶定義的結(jié)構(gòu)體類型名D)a和b都是結(jié)構(gòu)體成員名(4)設(shè)有以下定義:structsk(intn;floatx;}data,*p;若要使p指向data中的n域,正確的賦值語句是p=&data.n;*p=data.n;p=(structsk*)<&data.n;p=(structsk*)data.n;(5)設(shè)有以下語句:structst{intn;structst*next;)staticstructsta[3]={5,&a[l],7,&a[2],9/\0,},*p;p=&a[O];則以下表達(dá)式的值為6的是.A)p++->nB)p->n++C)(*p).n++D)++p->n第十一章位運(yùn)算⑴以下運(yùn)算符中優(yōu)先級最低的是優(yōu)先級最高的是。A)&&B)&C)||D)I⑵若有運(yùn)算符《,sixeof「,&=則它們按優(yōu)先級按由高到低的正確排列次序是.A)sizeof,&=,?,AB)sizeof,<<,",&=C)A,?,sizeof,&=D)?,A,&=,sizeof⑶在C語言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是OA)AB)%C)!D)>(4)在C語言中,要求運(yùn)算數(shù)必須是整型或字符型的運(yùn)算符是。A)&&B)&C)!D)||(5)sozeof(float)是。A)一種函數(shù)調(diào)用B)一種不合法的表示形式C)一個(gè)整型表達(dá)式D)一個(gè)浮點(diǎn)表達(dá)式第十二章文件⑴系統(tǒng)的標(biāo)準(zhǔn)輸入文件是指。A)鍵盤B)顯示器C)軟盤D)硬盤(2)以下可作為函數(shù)fopen中第一個(gè)參數(shù)的正確格式是oc:user\text.txtc:\user\text.txt"c:\user\text.txt°c:\\user\text.txtH(3)若執(zhí)行fopen函數(shù)時(shí)發(fā)生錯(cuò)誤,則函數(shù)的返回值是.A)地址值B)0C)1D)E0F(4)若要用fopen函數(shù)打開一個(gè)新的二進(jìn)制文件,該文件要既能讀又能寫,則文件方式字符串應(yīng)是0“ab+”"wb+""rb+”Mab"(5)當(dāng)順利執(zhí)行了文件關(guān)閉操作時(shí),fclose函數(shù)的返回值是oA)-lB)TUREC)0D)1二、填空第一章C語言概述C源程序的基本單位是()一個(gè)C源程序至少應(yīng)包括一個(gè)()(3)在一個(gè)C源程序中,注釋部分兩側(cè)的分界符分別為()和()(4)在C語言中,輸入操作是由庫函數(shù)()完成的,輸出操作是由庫函數(shù)()完成的。第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(1)在C語言中(以16位機(jī)為例),一個(gè)char型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為(),一個(gè)int型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為().(2)在C語言中,實(shí)型變量分為兩種類型,它們是()和()。⑶若a是int型變量,則計(jì)算表達(dá)式a=25/3%3后,a的值為()。(4)C語言中的標(biāo)識符只能由三種字符組成,它們是(),()和()(5)表達(dá)式8/4*(int)2.5/(int)(1.25*3.7+2.3)值的數(shù)據(jù)類型為()。第三章簡單C程序設(shè)計(jì)(1)以下程序的輸出結(jié)果是()omain(){intx=l,y=2;printfi(ttx=%dy=%d*sum*=%d\n,,,x,y,x+y);prints10squaredis:%d\n\10*10);(2)以下程序的輸出結(jié)果是().#include<studo.h>main(){inta=325;doublex=3.1415926;printfTa=%+06dx=%+e\n,,,a,x,);(3)假設(shè)變量a和b均為整型,以下語句可以下借助任何變量把a(bǔ)、b中的值進(jìn)行交換。請?zhí)羁?。a+=( );b=a-( );a-=( );(4)設(shè)x,y和z都是int型變量,m為long型變量,則在16位微型機(jī)上執(zhí)行下面的賦值語句后,x值為(),y值為(),z值為()oy=(x=32767,x=-l);z=m=0xFFFF(5)若x為int型變量,則執(zhí)行以下語句后x的值是()x=7;x+=x-=x+x;第四章選擇結(jié)構(gòu)程序設(shè)計(jì)TOC\o"1-5"\h\z(1)當(dāng)a=3,b=2,c=l時(shí),表達(dá)式f=a>b>c的值是( )。(2)在C語言中表示邏輯“真”值用( )。(3)設(shè)x,y,z均為int型變量,請寫出描述“x或y中有一個(gè)小于z”的表達(dá)式( ).(4)當(dāng)m=2,n=l,a=l,b=2,c=3時(shí),執(zhí)行完d=(m=a!=b)&&(n=b>c)后;n的值為( ),m的值為()o(5)Winta=3,b=4,c=5;則表達(dá)式a||b+c&&b==c的值為( )。第五章循環(huán)控制(1)執(zhí)行下面程序段后,K值是()oK=l;n=263;Do{k*=n%10;n/=10}while(n);(2)下面程序段中循環(huán)體的執(zhí)行次數(shù)是()oA=10;B=0;Do{b+=2;a-=2+b;}while(a>=0);(3)下面程序段的運(yùn)行結(jié)果是()oX=2'Do{printf("*"); x-;)while(!x==0);(4)下面程序段的運(yùn)行結(jié)果是()o1=1;a=0;s=l;Do{a=a+s*i;s=-s;i++;}while(i<=10)Printf("a=%d,a");(5)雞兔共有30只,腳共有90個(gè),下面程序段是計(jì)算雞兔各有多少只,請?zhí)羁?。For(x=1;xv=29;x++){y=30-x;iR)printf(46%d,%d\n'x,y);第六章數(shù)組(1)在c語言中,二維數(shù)組的定義方式為:類型說明符 數(shù)組名()();(2)在C語言中, 二維數(shù)組元素在內(nèi)存中的存放順序是()o(3)若有定義:doublex[3][5];則x數(shù)組中行下標(biāo)的下限為(),列下標(biāo)的上限為()。(4)若二維數(shù)組a有m列,則計(jì)算機(jī)任一元素a口出]在數(shù)組中位置的公式為:().(假設(shè)a[0][0]位于數(shù)組的第一個(gè)位置上。)(5)若有定義:皿2[3][4]={{1,2},{0},{4,6,8,10}};則初始化后,a⑴⑵得到的初值是(),a[2][l]得到初值是().第七章函數(shù)(1)C語言規(guī)定,可執(zhí)行程序的開始執(zhí)行點(diǎn)是().(2)在C語言中,一個(gè)函數(shù)一般由兩個(gè)部分組成,它們是()和().(3)下面add函數(shù)的功能是求兩個(gè)參數(shù)的和,并將和值返回調(diào)用函數(shù)。函數(shù)中錯(cuò)誤的部分是();改正后為()?Voidadd(floata,floatb){floatc;c=a+b;returnc'(4)以下程序的運(yùn)行結(jié)果是()omain(){incrementO;increment();increment();increment();{intx=0;x+=l;printfT%d'',x);(5)以下Check函數(shù)的功能是對value中的值進(jìn)行四舍五人計(jì)算,若計(jì)算后的值與ponse值相等則顯示"WELLDONE!!",否則顯示計(jì)算后的值。已有函數(shù)調(diào)用語句Check(ponse,value);請?zhí)羁誚oidCheck(intponse,value){intval;val=();printf("計(jì)算后的值:%d”,val);\f( )printfC4\NwellDNOE!!!\n");elseprintf)M\nSorrythecorrectansweris%d\n,,,val);第八章編譯預(yù)處理命令(1)設(shè)有以下宏定義:#defineWIDTH80#defineLENGTHWIDTH+40則執(zhí)行賦值語句:v=LENGTH*20;(V為int型變量詬,v的值是( )。(2)設(shè)有以下宏定義:#defineWIDTH80#defineLENGTH(WIDTH+40)則執(zhí)行賦值語句:k=LENGTH*20;(K為int型變量)后,k的值是( )。(3)下面程序的運(yùn)行結(jié)果是()o#defineDOUBLE(r)r*rmain(){intx=l,y=2,t;t=DOBLE(x+y);printf(t4%d\n,,,t);(4)下面程序的運(yùn)行結(jié)果是( ).#defineMUL(z)(z)*(z)main()primfT%d\n'',MUL(1+2)+3);(5)下面程序的運(yùn)行結(jié)果是( ).#definePOWER(x)((x)*(x))main(){int1=1;while(I<=4)printfT%d\t'',POWER(I"));printW);第九章指針(1)下面程序段的運(yùn)行結(jié)果是()chars[80],*sp="HELLO!”;sp=strcpy(s,sp);s[O]='h,;puts(sp);(2)下面程序段的運(yùn)行結(jié)果是()char[a]=,,123456789,,,*p;int1=0;p=a;while(*p){iRI%2==0)p=+;p++;I++;puts(a);(3)若有以下語句和定義:inta[4]={0,l,2,3J,*p;P=&a[l];貝ij++(*p)的值是O(4)若有定義:inta[2][3]=[2,4,6,8,1012}M(&a[0][0]+282+l的值是(),*(a[l]+2)的值是()。第十章結(jié)構(gòu)體與共用體⑴以下程序用以輸出結(jié)構(gòu)體變量bt所占內(nèi)存單元的字節(jié)數(shù),請?jiān)?)內(nèi)填上適當(dāng)?shù)膬?nèi)容。Structps{doubleI;chararr[20];main(){structpsbt;ptintffbtsize:%d\n:,( ));(2)設(shè)有三人的姓名和年齡存在結(jié)構(gòu)數(shù)組中,以下程序輸出三人中年齡居中者的姓名和年齡,請?jiān)?)內(nèi)填上正確的內(nèi)容。Staticstructman{charname[20]intage;}person[]{"li—ming”,18,“wang—hua”,19,“zhang—ping”,20main(){inti,j,max,min;max二min=person[0].age;for(i=l;i<3;i++)if(person[i].age>max)( );elseif(person[i].age<min)( );for(i=0;i<3;i++)if(person[i].age!=max( )person[i].age!=min){printfi(fck%s%d\n,,,person[i].name,person[i].age);break;(3)若以定義:structnum{inta;intb;floatf;)n={l,3,5.0);structnum*pn=&n;則表達(dá)式pn->b/n.a*++pn->b的值是( ),表達(dá)式(*pn).a+pn->f的值是( )o(4)以下程序的功能是計(jì)算并打印復(fù)數(shù)的差。請?jiān)?)內(nèi)填入正確的內(nèi)容。Structcomp{floatre;floatim;structcomp*m(x,y)structcomp*x,*y;{();z=(structcomp*)malloc(sizeof(structcomp));z->re=x->re-y->re;z->im=x->im-y->im;retum(( ));main(){structcomp*t;structxompa,b;a.re=l;a.im=2;b.re=3; b.im=4;t=m(( ));printf(t<z.re=%f,z.im=%f\t->re,t->im);(5)以下程序的運(yùn)行結(jié)果是( )structks{inta;int*b;}s[4],*p;main()intn=l,i;printf(M\nM);for(i=0;i<4;i++){s[i].a=n;s[i].b=&s[i.a;n=n+2;p=&s[O];p++;printfT%d,%d\nM,(++p)>a,(p++)->a);第十一章位運(yùn)算(1)在C語言中,&運(yùn)算符作為單目運(yùn)算符時(shí)表示的是( )運(yùn)算;作為雙目運(yùn)算符時(shí)表示的是( )運(yùn)算。TOC\o"1-5"\h\z(2)與表達(dá)式a&=b等價(jià)的另一書寫形式是( )?(3)設(shè)有chara,b;若要通過a&b運(yùn)算屏蔽掉a中的其它位,只保留第2和第8位(右起為第1位),則b的二進(jìn)制數(shù)是( ).(4)測試char型變量a第六位是否為1的表達(dá)式是( )(設(shè)最右位是第一位)。(5)設(shè)二進(jìn)制數(shù)x的值是11001101,若想通過x&y運(yùn)算使x中的低4位不變,高4位清零,則y的二進(jìn)制數(shù)為( ).第十二章文件(1)在C程序中,文件可以用( )方式存取,也可以用( )方式存取。(2)在C程序中,數(shù)據(jù)可以用( )和( )兩種代碼形式存放。(3)在C程序中,文件的存取是以( )為單位的,這種文件被稱作( )文件。(4)函數(shù)調(diào)用語句:fgets(buf,n,fp);從fp指向的文件中讀入()個(gè)字符放到buf字符數(shù)組中。函數(shù)值為( ).(5)feof(fp)函數(shù)用來判斷文件是否結(jié)束,如果遇到文件結(jié)束,函數(shù)值為( ),否則為( ).三、判斷第一章C語言概述第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(1)C語言所提供的基本數(shù)據(jù)類型包括:整型、實(shí)型和字符型。(2)在C程序中,逗號運(yùn)算符的優(yōu)先級最低。(3)當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對整型變量只能輸入整型數(shù)據(jù),對實(shí)型變量只能輸入實(shí)型數(shù)據(jù)。(4)C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成。(5)在C語言中,char型的數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是原碼形式。第三章簡單C程序設(shè)計(jì)(1) 當(dāng)輸入一個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分應(yīng)規(guī)定小數(shù)點(diǎn)后的位數(shù),如scanf(“%4.2f,,&。。(2) 整型變量的輸出格式控制符只有%d一種。(3)putchar函數(shù)可以向終端輸出一個(gè)字符串。(4) pirntf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占5歹U,如果字符串長度大于5,則輸出按原字符長度從左向右全部輸出。(5) 輸入項(xiàng)可以是一個(gè)實(shí)型常量,如scanfT%f',2.3)。第四章選擇結(jié)構(gòu)程序設(shè)計(jì)(1) 邏輯運(yùn)算符兩側(cè)的運(yùn)算對象可以是任何基本類型的數(shù)據(jù)。(2)C語言中只提供了三種邏輯運(yùn)算符:&&,||,和!。(3)若a=6,b=4,c=3則表達(dá)式a&&b+c||b-c的值是0。(4) 關(guān)系運(yùn)算式的結(jié)果都是邏輯值。(5) 若a=l,b=2,則表達(dá)式a>b?a:b+l的值是3。第五章循環(huán)控制(1) 設(shè)有以下程序段:intx=0,s=0;while(!x!=0)s+=++x;printfT%d”,s);則運(yùn)行該程序段后輸出為:0(2) for循環(huán)只能應(yīng)用于循環(huán)次數(shù)已經(jīng)確定的情況。(3) goto語句只能用于退出多層循環(huán)。(4) switch語句中不能出現(xiàn)continue語句。(5)只能用continue語句終止本次循環(huán)。第六章數(shù)組兩個(gè)字符串中所包含的字符個(gè)數(shù)相同時(shí),才能比較字符串。字符數(shù)組可以存放字符串。(3) 不能用關(guān)系運(yùn)算符對字符數(shù)組中的字符串進(jìn)行比較。如果定義了一個(gè)指向數(shù)組的指針,則該指針可以相當(dāng)于數(shù)組名使用。(5) 如果沒有給一個(gè)整型數(shù)組的元素賦初值,則其元素的缺省初值全部為0。第七章函數(shù)(1)C語言中,用戶若需調(diào)用標(biāo)準(zhǔn)庫函數(shù),在調(diào)用前必須重新定義。(2)C語言中不允許用戶重新定義標(biāo)準(zhǔn)庫函數(shù)。(3) 在C程序中,函數(shù)的定義和調(diào)用都不允許嵌套。如果用數(shù)組名作為函數(shù)調(diào)用的實(shí)際參數(shù),則傳遞給形參的是數(shù)組的首地址。形式能參數(shù)也是一種局部變量。第八章編譯預(yù)處理命令預(yù)處理命令行都必須以#號開始。(2)宏替換不占用運(yùn)行時(shí)間,只占編譯時(shí)間。C程序在執(zhí)行過程中對預(yù)處理命令進(jìn)行處理。宏名必須用大寫字母表示。(5)在文件包含預(yù)處理命令的使用形式中,當(dāng)#include后的文件名用<>括起來時(shí),表示在當(dāng)前目錄搜索被包含文件。第九章指針(1)若有定義:int(*p)[4],則標(biāo)識符p表示的是一個(gè)指向整型變量的指針。(2)若有定義:int*p[4],則標(biāo)識符p表示的是一個(gè)指針數(shù)組名。(3)指針值就是地址值。(4)若有定義int(*p)(),指針p可以表示函數(shù)返回值的類型。(5)C語言允許main函數(shù)帶形參,但形參名只能是argv和arvc?第十章結(jié)構(gòu)體與共用體)當(dāng)定義一個(gè)結(jié)構(gòu)體變量時(shí),系統(tǒng)分配給它的內(nèi)存是各成員所需內(nèi)存量的總和。C語言中,結(jié)構(gòu)體變量在程序執(zhí)行期間只有部分成員駐留在內(nèi)存中。一個(gè)共用體類型定義中不能出現(xiàn)結(jié)構(gòu)體類型的成員。(4)用typedef只是將已存在的類型用一個(gè)新的標(biāo)識符來代表,而不能增加新類型。(5)用typedef可以定義各種類型名,但不能用來定義變量。第十一章位運(yùn)算第十二章文件(1)利用fseek函數(shù)可以實(shí)現(xiàn)文件的隨機(jī)讀寫的操作。(2) 函數(shù)rewind的作用是使位置指針重新返回文件的開頭。在C程序中,文件可以用隨機(jī)讀寫的方式存取,也可以用順序讀寫的方式存取。函數(shù)ftell(fp)的作用是得到流式文件中的當(dāng)前位置。(5)fgetc函數(shù)的作用是從指定文件讀入一個(gè)字符,該文件的打開方式必須是只讀的。四、程序設(shè)計(jì)第一章C語言概述第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式第三章簡單C程序設(shè)計(jì)第四章選擇結(jié)構(gòu)程序設(shè)計(jì)(1)編程實(shí)現(xiàn):輸入一個(gè)整數(shù),判斷它能否被子3,5,7整除,并輸出以下信息之一:1)能同時(shí)被3,5,7整除;2)能被其中兩數(shù)(要指出哪兩個(gè))整除:3)能被其中一個(gè)數(shù)(要指出哪一個(gè))整除;4)不能被3,5,7任一個(gè)整除。(2)用switch編程實(shí)現(xiàn):TOC\o"1-5"\h\zr -1 (x<0)y= J 0 (x=0)I 1 (x.O)第五章循環(huán)控制(1)每個(gè)蘋果0.8元,第一天買2個(gè)蘋果,第二天開始,每天買前一天的倍,直至購買的蘋果個(gè)數(shù)達(dá)到不超過100的最大值。編寫程序求每天平均花多少錢?(2)編寫程序,從鍵盤輸入6名學(xué)生的5門成績,分別統(tǒng)計(jì)出每個(gè)學(xué)生的平均成績。第六章數(shù)組(1)從鍵盤輸入若干整數(shù)(數(shù)據(jù)個(gè)數(shù)應(yīng)少于50),其值在。至4的范圍內(nèi),用一1作為輸入結(jié)束的標(biāo)志。統(tǒng)計(jì)每個(gè)整數(shù)的個(gè)數(shù)。試編程。(2)若有說明:int就2]網(wǎng)={{1,2,3},{4,5,6}};現(xiàn)要將2的行和列的元素互換后存到另一個(gè)二維數(shù)組b中。試編程。第七章函數(shù)⑴已有變量定義和函數(shù)調(diào)用語句inta,b;b=sum(a);函數(shù)sum()用以求 k,和數(shù)作為函數(shù)值返回。若a值為10,經(jīng)函數(shù)sum的計(jì)算后,b的值是55。請編寫sum函數(shù)。Sum(intn)(2)a是一個(gè)2*4的整型數(shù)組,且各元素均已賦值,函數(shù)max_value可求出其中的最大元素值max,并將此值返回主調(diào)函數(shù)。今有函數(shù)調(diào)用語句max=max_value(a);請編寫max_value函數(shù)。Max_value(intarr[][4])第八章編譯預(yù)處理命令(1)輸入兩個(gè)整數(shù),求它相除的余數(shù)。用帶參的宏來編程實(shí)現(xiàn)。(2)試用義一個(gè)帶參的宏swap(x,y),以實(shí)現(xiàn)兩個(gè)整數(shù)之間的交換,并利用它將一維數(shù)組a和b的值進(jìn)行交換。第九章指針(1)編一程序,將字符串computer賦給一個(gè)字符數(shù)組,然后從第一個(gè)字母開始間隔地輸出該串。請用指針完成。(2)設(shè)有一數(shù)列,包含10個(gè)數(shù),已按升序排好?,F(xiàn)要求編一程序,它能夠把從指定位置開始的N個(gè)數(shù)按逆序重新排列并輸出新的完整數(shù)列。進(jìn)行逆序處理時(shí)要赤使用指針方法。試編程。(例如:原數(shù)列為2,4,6,8,10,12,14,16,18,20,若要求把從第4個(gè)數(shù)開始的5個(gè)數(shù)按逆序重新排列,則得到新數(shù)列為2,4,6,16,14,12,10,8,18,20.)第十章結(jié)構(gòu)體與共用體(1)試?yán)弥赶蚪Y(jié)構(gòu)體的指針編制一程序,實(shí)現(xiàn)輸入三個(gè)學(xué)生的學(xué)號、數(shù)學(xué)期中和期末成績,然后計(jì)算其平均成績并輸出成績表。(2)請定義枚舉類型,用枚舉元素代表人民幣的面值。包括1,2,5分;1,2,5角;1,2,5,10,50,100元。第十一章位運(yùn)算(1)請編程序:從終端讀入16進(jìn)制無符號整數(shù)M,調(diào)用函數(shù)rightrot將M中的原始數(shù)據(jù)循環(huán)右移N位。并輸出移位前后的內(nèi)容。(2)請編寫函數(shù)getbits從一個(gè)16位的單元中取出以nl開始至n2結(jié)束的某幾位,起始位和結(jié)束位都從左向右計(jì)算。同時(shí)編寫主函數(shù)調(diào)用getbits進(jìn)行驗(yàn)證。第十二章文件(1)請編寫程序:從鍵盤輸入一個(gè)字符串,將其中的小寫字母全部轉(zhuǎn)換成大寫字母,輸出到磁盤文件“upper.txt”中保存。輸入的字符串以結(jié)束。然后再將文件upper.txt中的內(nèi)容讀出顯示在屏幕上。(2)設(shè)文件studentdat中存放著一年級學(xué)生的基本情況,這些情況由以下結(jié)構(gòu)體來描述:strucstudent{longintnum;/*學(xué)號*/charname[10]; /*姓名*/intage; /*年齡*/charsex; /*性別*/charspeciality[20];/*專業(yè)次/charaddr[40]; /*地址*/:青編寫程序,輸出學(xué)號在970101—971035之間的學(xué)生學(xué)號、姓名、年齡和性別。五、參考答案一、名詞解釋二、單項(xiàng)選擇題第一章C語言概述ACDCB第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式CACCA第三章簡單C程序設(shè)計(jì)DDDAB第四章選擇結(jié)構(gòu)程序設(shè)計(jì)CBDCB第五章循環(huán)控制(1)c⑵C⑶A⑷C(5)C第六章數(shù)組(1)C⑵B⑶DC⑸D第七章函數(shù)⑴A⑵D⑶BBB第八章編譯預(yù)處理(1)B⑵B⑶D(4)D⑸B第九章指針(1)D⑵B⑶BDCD⑺D(8)A⑼D(10)C第十章結(jié)構(gòu)體與共用體(1)D⑵C⑶D⑷C⑸D第十一章位運(yùn)算(1)<1>C <2>B⑵B⑶B(4)B(5)C第十二章文件(1)A⑵B⑶C(4)D⑸C三、填空題第一章C語言概述(1)函數(shù)(2)主函數(shù)(或:main函數(shù))TOC\o"1-5"\h\z<1>/* <2>*/<1>scanf<2>printf第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(1)<1>1 <2>2(2)<1>單精度型(或:float型)<2>雙精度型(或double型)(3)<1>10 <2>6(4)<1>字母<2>數(shù)字<3>下劃線⑸整型(或:int型)第三章簡單C程序設(shè)計(jì)(l)x=ly=2 *sum*=310Squaredis:100(2)a=+00325???x=+3.14159e+00(此處代表空格)⑶vl>b<2>b <3>b(4)<1>32766<2>-l <3>65535(5)-14第四章選擇結(jié)構(gòu)程序設(shè)計(jì)0(2)非0的數(shù)字x<z||y<z<1>0<2>1⑸1第五章循環(huán)控制⑴36⑵3**a=-52*i+4*y==90第六章數(shù)組<1>常量表達(dá)式<2>常量表達(dá)式(2)按行主順序存放<1>0 <2>4i*m+j+l<1>0 <2>6第七章函數(shù)(1)程序中的main。函數(shù)<1>函數(shù)說明部分<2>函數(shù)體<l>voidadd(floata,floatb) <2>floatadd(floata,floatb)111<1>(int)((value*10+5)/10) <2>ponse==val第八章編譯預(yù)處理8802400⑶5122 12第九章指針hELLO!*2*4*6*8*2<1>12<2>12第十章結(jié)構(gòu)體與共用體sizeof(structps)<1>max=person[i].age <2>min=person[i].age<3>&&⑶vl>12 <2>6.0<l>structcomp*z <2>z <3>&a,&b7,3第十一章位運(yùn)算(1)<1>取地址 <2>按位與(2)a=a&b(3)10000010(4)a&040或a&0x20或a&32(5)00001111第十二章文件(1)<1>順序(或隨機(jī)) <2>隨機(jī)(或順序)(2)<1>二進(jìn)制<2>ASCn(3)<1>字符 <2>流式(4)<l>n-l <2>buf的首地址(5)50*sizeof(structst)四、判斷第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(1)錯(cuò)(2)對(3)錯(cuò)(4)對(5)錯(cuò)第三章簡單C程序設(shè)計(jì)(1)錯(cuò)(2)錯(cuò)(3)錯(cuò)(4)對(5)錯(cuò)第四章(1)對(2)對(3)錯(cuò)(4)對(5)對第五章(1)錯(cuò)(2)錯(cuò)(3)錯(cuò)(4)錯(cuò)(5)對第六章數(shù)組(1)錯(cuò)(2)對(3)對(4)對(5)對第七章函數(shù)(1)錯(cuò)(2)錯(cuò)(3)錯(cuò)(4)對(5)對第八章編譯預(yù)處理命令(1)對(2)對(3)錯(cuò)(4)錯(cuò)(5)錯(cuò)第九章指針(1)錯(cuò)(2)對(3)對(4)錯(cuò)(5)錯(cuò)第十章結(jié)構(gòu)體與共用體(1)對(2)錯(cuò)(3)錯(cuò)(4)對(5)錯(cuò)第十三章文件(1)錯(cuò)(2)對(3)對(4)對(5)錯(cuò)五、編程題第一章C語言概述第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式第三章簡單C程序設(shè)計(jì)第四章選擇結(jié)構(gòu)程序設(shè)計(jì)main(){intx;scanfT%d”,&x);if((x%3==0)&&(x%5==0)&&(x%7==0))printfi[fc*%dcanbedividedby3,5,7\n'\x);elseif((x%3==0)&&(x%5==0))printf(t4%dcanbedividedby3,5\nM,x);elseif((x%3==0)&&(x%7==0))printf("%dcanbedividedby3,7\n”,x);elseif((x%5==0)&&(x%7==0))printf(t4%dcanbedividedby5,7\n”,x);elseif(x%3==0)printf(:%dcanbedividedby3\n,,,x);elseif(x%5==0)printft4%dcanbedividedby5\n”,x);elseif(x%7==0)printf(%dcanbedividedby7\n”,x);elseprintf(44%dcannotbedivided3,5,7\n”,x);main(){floatx;inty;printf("\ninputx:");switch(x<0){casel;y=-1;break;case0;switch(x==0){case1;y=0;break;default:y=1;pr血f("\ny=%d”,y);第五章循環(huán)控制#include<stdio.h>main(){iniday=0,buy=2;floatsum=0.0,ave;do{sum+=0.8*buy;day++;buy*=2;}while(buy<=100);ave=sum/day;printf({**%f,ave};#include<stdio.h>main(){inti,j;float(i=l;i<=6;i++){sum=O;for(j=l;j<=5;j+4-){scanR%f',&g);sum+=g;ave=sum\5;第六章數(shù)組(1)#defineM50main(){inta[M],c[5],i,n=0,x;printf("Enter0or1or2or3or4,toendwithscanfr%d】&x);while(x!=-1){if(x>=0&&x<=4)

{a[n]x;n++;}for(i=o;i<=5;i++)c[i]=0;for(i=0;i<n;I++)c[a[i]]++;printf("Theresultis:\n");for(i=;iv=4;i++)printfT%d:%d\iT,c[i]);printfCW");main(){inta[5][4]={3,6,2,1,3,9,02156,7,4,0,0,0,0};inti,j;for(i=0;I<4;I++)for(j=0;j<4;j++)a[4][j]+=a[i][j];printfCTheresultfor(i=0;i〈4;i++)printfT%3d;a[4][i]);第七章函數(shù)(1)sum(intn){inti,k=0;for(i=0;i<=n;i++)k+=i;returnk;⑵max(intarr[][4]){intIJ,max;max=arr[0][0];for(I=0;I<2;I++)for(j=o;j<4;j++)if(arr[i][j]>max)max=arr[i][j];return(max);第八章編譯預(yù)處理#defineMOD(a,b)(a%b)main(){inta,b;printf^44inputtwointegera,b:");scanfi(fc4%d,%d,,,&a,&b);printf^'amodbis:%d\n”,MOD(a,b));#defineswap(x,y){intt;t=x;x=y;y=t;}main(){inti,a[10],b[10];for(i=0;I<10;i++)scanf("%d”,&a[i]);for(i=0;i<10;i++)scanfC%d'',&b[i]);for(i=o;i<10;i++)swap(a[i],b[i]);for(i=0;i<10;i++)printfT%d”,a[i「);printfTW");for(i=0;i<10;i++)primfT%d”,b[i]);第九章指針#include“stdio.h"main(){staticcharx[]="computer”;char*p;for9p=x;p<x+7;p+=2)putchar(*p);printfSn");⑵#include<stdio.h>main(){intb[l0],position,mun,k,*ql,*q2,temp;printf(t4Input10sortedmunbers:\n,');for(k=0;k<10;k++)scanf("%d”,&b[k]);printff'Xnlnputtheposition:\n");scanf(4%d,,,&position);printff'Inputthenumberofdatathatbesortedagain:\n^^);scanf(M%d,\&num);printf(fctTheoldarraybis:\n");for9k=0;k<10;k++0printf("%4d”,b[k]);printf(i4\nM);ql=&b[position-1];q2=&b[position-2+num];for(;ql<&b[position-1]+/2;q++,q2??){temp=*ql;q1=*q2;*q2=temp;}printff'Thenewarraybis:\n");for(k=0;k<10;k++)primf("%4d”,b[k]);第十章結(jié)構(gòu)體與共用體structstuintnum;intmid;intend;intave;}s[3];main(){inti;structstu*p;for(p+s;p<s+3;p++){scanf(u%d%d%d%d,,,&(p->num),&p->mid),&9p->end});for(p=s;p<s+3;p++)printf("%d%d%d%d\n,\p->num,p->mid,p->end,p->ave);enummoney{fen1=1,fen2=2,fen5,jiao1=10,jiao2=20,jiao5=50,yuanl=100,yuan2=200,yuan5=500,yuan10=1000,yuan50=5000,yuan100=10000)第十一章位運(yùn)算(1)main()unsignedrightrot(unsigneda,intn);unsignedintm,b;intn;printffentermandn:");scanf(44%x, &n);printfi(ttm=%x,n=%d\n,\m,n);b=rightror(m,n);printf(ttb=%x\n,\b);unsignedrightror(unsigneda,intn)intrb;while(n90)rb=(a&l)?(16-l);a=a?1;a=a|rb;return(a);{unsignedx;intnl,n2;printf(“請輸入一個(gè)八進(jìn)制數(shù)x:");scanf("%o”,&x);printf(“請輸入起始位nl,結(jié)束位n2:");scanfC%d,%dM,&n1,&n2);printf("%o”,getbits(x,n1-1,n2));getbits(value,n1n2)unsignedvalue;intnl,n2;{unsignedz;z=(z?nl)&(z?(16-n2));z=z?(16-n2);return(z);I第十二章文件#include“stdio.h"main(){FILE*fp;charstr[100],filename[10];inti=0;if((fp=fopen(“upper.txt"Jw")尸=NULL){printff'cannotopenfileVn^);exit(O);)printfif'Enterastring:\n^,);gets(str);while!=’!'){if(str[i]>=,a,&&str[i]<=,z,)fpulc(sir[i],fp);i++;)fclose(fp);m=fbpen「upper.txt”,"r");fgets(str,strlen(str)+1,fp);printf("%s\n”,str);fclose(fp);)#inchide''stdio.h"structstudent{longintnum;charname[10];intage;charsex;charspeciality[201;charadder[40];FILE*fp;Main(){structstudentstd;m=fbpen("student.dat",‘Tb'');if(fp==NULL)printft^filenotfbund\n");else{while(!Feof(fp)){fread(&std,sizeof(structstudent),l,fp);if(std.num>=9970101&&std.num<=970135)printfi("%ld%s%d%c\nM,std.num,,std.age,std.sex);)fclose(fp);}}練習(xí)題41、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中所有元素的平均值)結(jié)果保留兩位小數(shù)。例如,當(dāng)一維數(shù)組a中的元素為:10,4,2,7,3,12,5,34,5,9程序的輸出應(yīng)為:Theaveris:9.10。例如,當(dāng)一維數(shù)組a中的元素為:1,4,2,7,3,12,5,34,5,9,程序的輸出應(yīng)為:Themaxis:34,posis:7。#include<conio.h>#include<stdio.h>intaver,s;floataverts;/************foundintaver,s;floataverts;/************found************/s=0;s=a[0];for(i=l;i<10;i++)s+=a[i];aver=s/i;inta[10]={10,4,2,73,12,5,34,5,9},i;if(max>a[i])i=pos;pos=i;#include<conio.h>#include<stdio.h>voidmain()printf(uTheaveris:%.2f\nM,aver);)2、在考生文件夾下,給定程序MODLC的功能是:求二維數(shù)組a中的最大值和最小值。例如,當(dāng)二維數(shù)組a中的元素為:TOC\o"1-5"\h\z4 4 3437 3 125 6 5程序的輸出應(yīng)為:Themaxis:37Theminis:3。voidmain()inta[l0]={1,4,2,7,3J2,5,34,5,9},i,max,pos;max=a[0];pos=0;for(i=l;i<10;i++)/************found************/max=a[i];/************found************/printf("Themaxis:%d,posis:%d\nu,max,pos);4、在考生文件夾下,給定程序MODLC的功能是:求二維數(shù)組a中的最小值。例如,當(dāng)二維數(shù)組a中的元素為:TOC\o"1-5"\h\z4 2 347 3 125 6 5程序的輸出應(yīng)為:Theminis:2。for(i=0;i<3;i++)for(i=0;i<3;i++)#include<conio.h>#include<stdio.h>voidmain()(inta[3][3]={4,4,34,37,3,12,5,6,5},i,j,max,min;max=min=a[0][0];for(i=0;i<3;i++)for(j=l;j<3;j++) for(j=0;j<3;j++){if(max<a[i][j])max=a[i]|j];/************^ound************/if(min<a[i][j])min=a[i]|j];)printf("Themaxis:%d\n",max);printf("Theminis:%d\nH,min);)3、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中的最大元素及其下標(biāo)。#include<conio.h>#include<stdio.h>voidmain()inta[3][3]={4,2,34,7,3,12,5,6,5},i,j,min;min=a[0][0];for(i=l;i<3;i++)for(j=0;j<3;j++)if(min>a[i][j])min==a[i]Ij];min=a[i][j];printf(nTheminis:%d\n\min);)5、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中所有元素的平均值。例如,當(dāng)一維數(shù)組a中的元素為:10,4,2,7,3,12,5,34,5,9程序的輸出應(yīng)為:Theaveris:9.10。#include<stdio.h>#include<stdio.h>#include<conio.h>#include<stdlib.h>#include<math.h>voidmain()#include<conio.h>#include<stdio.h>voidmain()inta[10]={l0,4,2,7,3,12,5,34,5,9},i;doubleaver,s;s=a[0];inti;/************fbund************//*********** /*********** nd****耳-for(i=0;i<10;i++)intn=0;intn;for(i=100;i<=200;i++)/************1ound************/if(i%3!=0&&i%7!=0)if(i%3!=0&&i%7!=0)s=s+a[i];aver=s/1;printfC'Theaveris:%,2f\nM,aver);)6,在考生文件夾下,給定程序MODI.C的功能是:輸入一個(gè)百分制成績,打印出五級記分成績??荚嚦煽冊?0分或90分以上為優(yōu)秀,80?89分為良好,70~79為中等,60?69為及格,低于60分為不及格。/************found************/if(i%3==0&&i%7==0){if(n%8==0)printf(,,\nH);printf(n%6d';i);n++;}printf(n\nNumbersare:%d\nH,n);#include<stdio.h>#include<stdio.h>#include<conio.h>#include<stdlib.h>#include<math.h>voidmain()8、在考生文件夾下,給定程序MODI.C的功能是:學(xué)習(xí)優(yōu)良獎(jiǎng)的條件如下:所考5門課的總成績在450分(含)以上;或者每門課都在88分(含)以上。輸入某學(xué)生5門課的考試成績,輸出是否夠?qū)W習(xí)優(yōu)良獎(jiǎng)的條件。intscore,t;printf(uPleaseenterascore:");do{scanf(”%d”,&score);)while(score<0||score>100);t=score/10;#include<stdio.h>main()switch(score)switch(t)intscore,sum=0;inti,n=0;fbr(i=l;i<=5;i++){scanf(,,%d,',&score);sum+=score;]************ [nd************/case10:casecasecase9:printf("優(yōu)秀!\n");break;8:printfcase10:casecasecase9:printf("優(yōu)秀!\n");break;8:printf("良好!\n");break;7:printf("中等!\n");break;if(score<=88)n++;}if(score>=88)n++;/************found******.******/if(sum>=450&&n==5)if(sum>=450||n==5)case6:printf("case6:printf("及格!\n");break;/*************found**************/else:printf("不及格!\n");printf(HThestudentisverygood!\nu);elseprintffThestudentisnotverygood!\nM);default:printf("不及格八n");9,在考生文件夾下,給定程序9,在考生文件夾下,給定程序MODI.C的功能是:7、在考生文件夾下,給定程序MODI.C的功能是:輸出100?200之間既不能被3整除也不能被7整除的整數(shù)并統(tǒng)計(jì)這些整數(shù)的個(gè)數(shù),要求每行輸出8個(gè)數(shù)。輸出200?300之間的所有素?cái)?shù),要求每行輸出8個(gè)素?cái)?shù)。#include<stdio.h>#include<math.h>

main()intm,j,n=O,k;for(m=200;m<=300;m++)#include<conio.h>#include<stdio.h>k=sqrt(m);for(j=2;j<=k;j++)if(m%j==O)continue;if(m%j==0)break;#include<math.h>

main()intm,j,n=O,k;for(m=200;m<=300;m++)#include<conio.h>#include<stdio.h>k=sqrt(m);for(j=2;j<=k;j++)if(m%j==O)continue;if(m%j==0)break;if(j>k){if(n%8==0)printf("\n");printf("%d,",j);printf("%d,",m)n++;main(){inta[10]={l,427,3,12,5,34,5,9},i,min,pos;/************found************/min=0;pos=0;for(i=l;i<10;i++)if(min>a[i])(min=a[i];min=a[0];例如,當(dāng)一維數(shù)組a中的元素為:1,4,273,12,5,3459,程序的輸出應(yīng)為:Theminis:1,posis:0。pos=a[i]; pos=i;} printfCTheminis:%d,posis:%d\n",min,pos);s=s+arr[i];s=sum(as=s+arr[i];s=sum(a910);10、在考生文件夾下,給定程序MODLC的功能是:求出a所指數(shù)組中最小數(shù)(規(guī)定最小數(shù)不在a[0]中),最小數(shù)和a[0]中的數(shù)對調(diào)。例如數(shù)組中原有的數(shù)為:7、10、12、0、3、6、9、H、5,8,輸出的結(jié)果為:0、10、12、7、3、6、9、11、5、8。#include<conio.h>#include<stdio.h>#defineN20main()(inta[N]={7,10,12,0,3,6,9,11,5,8},n=10,i,k,m,min,t;for(i=0;i<n;i++)printf(u%d\a[i]);printf(n\nn);min=a[0];m=0;for(k=0;k<n;k++)if(a[k]>min) if(a[k]<min)( min=a[k];m=k;)/************und************/t=a[0];a[m]=a[0];a[m]=t;for(i=0;i<n;i++)printf(H%d",a[i]);printf(M\nn);11、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中的最小元素及其下標(biāo)。[ t=a[0];a[0]=a[m];a[m]=t;13、在考生文件夾下,給定程序MODLC的功能是:12、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中值為偶數(shù)的元素之和。例如,當(dāng)一維數(shù)組a中的元素為:10,4,2,7,3,12,5,34,5,9,程序的輸出應(yīng)為:Theresultis:62。#include<conio.h>#include<stdio.h>sum(intarr[]jntn)inti,s;s=0;for(i=0;i<n;i++)if(arr[i]%2==0)/************found************/S=S+1;return(s);)voidmain()inta[10]={10,4,2,7,3,12,5,34,5,9/************j^jund*********,**/sum(a,2);printfC'Theresultis:%d\n”,s);求一維數(shù)組a中的最大元素及其下標(biāo)。例如,當(dāng)一維數(shù)組a中的元素為:1,4,2,7,3,12,5,34,5,9,程序的輸出應(yīng)為:Themaxis:34,posis:7。

#include<conio.h>#include<stdio.h>voidmain(){inta[10]={l,4,2,7,3J2,5,34,5,9},i,max,pos;max=a[0];pos=0;fbr(i=l;i<10;i++)if(max>a[i])max=a;pos=i;max=a[i];printfC'Themaxis:%d,posis:%d\nu,maxmax=a;pos=i;max=a[i];)#include<conio.h>#include<stdio.h>intmax;maxarr(intarr[]){intpos,i;/************fbund************/max=0; max=arr[0];pos=0;for(i=l;i<10;i++)if(max<arr[i])(max=arr[i];pos=i;}/************found************/return⑴; return(pos);14、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中值為奇數(shù)的元素之和。例如,當(dāng)一維數(shù)組a中的元素為:10,4,2,7,3,12,5,34,5,9,21,19程序的輸出應(yīng)為:Theresultis:69.main(){inta[l0]={34,4,2,7,3,12,5,8,5,9};printff'Themaxis:%d,posis:%d\nu,max,maxarr(a));}#include<conio.h>#include<stdio.h>intsum(intb[],intn)inti,s=0;for(i=0;i<n;i++)if(b[i]%2==1)/************found************/s=s+b[i];s=s+b[i]return(s);s=s+b[i];}main()(inta[12]={10,4,2,7,3,12,5,34,5,9,21,19},n;/************ nd*干**********/sum(a,2); sum(a,12);printf(nTheresultis:%d\n",n);15、在考生文件夾下,給定程序MODLC的功能是:求一維數(shù)組a中的最大元素及其下標(biāo)。例如,當(dāng)一維數(shù)組a中的元素為:34,4,273,12,5,859,程序的輸出應(yīng)為:Themaxis:34,posis:0。程序填空題(共15題)1、在考生文件夾下,給定程序FILL.C的功能是:求二分之一的圓面積,函數(shù)通過形參得到圓的半徑,函數(shù)返回二分之一的圓面積(注意:圓面積公式為:S=3.14159*r*r,在程序中定義的變量名要與公式的變量相同)。例如,輸入圓的半徑值:2.5,輸出為s=9.817469。

3、在考生文件夾下,給定程序FILL.C的功能是:統(tǒng)計(jì)整數(shù)n的各個(gè)位上出現(xiàn)數(shù)字1、2、3的次數(shù),并通過外部(全局)變量cl、c2、c3返回主函數(shù)。例如,當(dāng)n=123114350時(shí),結(jié)果應(yīng)該為:cl=3c2=lc3=2o#includc<stdio.h>#inciude<stdio.h>/************found************/doublefun(float 1 )doublefun(floatr)

intcl,c2,c3;voidfiin(longn)cl=c2=c3=0;while(n)return3.14159*r*r/2.0;)main()switch( 1 )floatx;printf(HEnterx:");case3:c3++;case1:cl++;break;/************^Qund************/case2:c2++: 2scanff^r.2 ):printf(Hs=%f\n\fun(x));scanf("%f',&x);)main()intn;floats;n=2;s=2.0;/************found************/inti;ints;s=l;

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論