




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
ADDINCNKISM.UserStyle國家開放大學電大《C語言程序設計》網(wǎng)絡課形考網(wǎng)考作業(yè)及答案100%通過考試說明:2020年秋期電大把該網(wǎng)絡課納入到“國開平臺”進行考核,該課程共有4個形考任務,針對該門課程,本人匯總了該科所有的題,形成一個完整的標準題庫,并且以后會不斷更新,對考生的復習、作業(yè)和考試起著非常重要的作用,會給您節(jié)省大量的時間。做考題時,利用本文檔中的查找工具,把考題中的關鍵字輸?shù)讲檎夜ぞ叩牟檎覂?nèi)容框內(nèi),就可迅速查找到該題答案。本文庫還有其他網(wǎng)核及教學考一體化答案,敬請查看。?課程總成績=形成性考核×50%+終結性考試×50%形考任務1一、選擇題(共40分,每小題2分)題目1在每個C語言程序中都必須包含有這樣一個函數(shù),該函數(shù)的函數(shù)名為()。選擇一項:A.main恭喜你,答對啦!!B.MAINC.nameD.function題目2C語言源程序文件的缺省擴展名為()。選擇一項:A.cppB.exeC.objD.c題目3由C語言目標文件連接而成的可執(zhí)行文件的缺省擴展名為()。選擇一項:A.cppB.exeC.objD.c題目4程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應使用的分隔符為()。選擇一項:A.空格或逗號B.逗號或回車C.逗號或分號D.空格或回車題目5每個C語言程序文件的編譯錯誤被分為()。選擇一項:A.1類B.2類C.3類D.4類題目6不符合C語言規(guī)定的復合語句是()。選擇一項:A.{}B.{;}C.{x=0;}D.{y=10}題目7C語言程序中的基本功能模塊為()。選擇一項:A.表達式B.標識符C.語句D.函數(shù)題目8在一個函數(shù)定義中,函數(shù)頭包括的3個部分依次為函數(shù)類型、函數(shù)名和()。選擇一項:A.表達式B.語句C.參數(shù)表D.函數(shù)體題目9在一個程序文件中,若要使用#include命令包含一個用戶定義的頭文件,則此頭文件所使用的起止定界符為一對()。選擇一項:A.尖括號B.雙引號C.單引號D.花括號題目10在C語言程序中,多行注釋語句使用的開始標記符為()。選擇一項:A.//B./*C.*/D.**題目11在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%c”,則對應輸出的數(shù)據(jù)類型為()。選擇一項:A.charB.intC.floatD.double題目12在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%5d”,則規(guī)定對應輸出的數(shù)據(jù)占用的字符位置個數(shù)為()。選擇一項:A.5B.4C.3D.6題目13轉(zhuǎn)義字符'\\'表示的字符是()。選擇一項:A.單引號B.雙引號C.反斜線D.問號題目14枚舉類型中的每個枚舉常量的值都是一個()。選擇一項:A.整數(shù)B.浮點數(shù)C.字符D.邏輯值題目15運算符優(yōu)先級最高的是()。選擇一項:A.=B.*=C.&&D.!=題目16設x和y均為邏輯值,則x&&y為真的條件是()。選擇一項:A.它們均為真B.其中一個為真C.它們均為假D.其中一個為假題目17設有語句“inta=12;a+=a*a;”,則執(zhí)行結束后,a的值為()。選擇一項:A.12B.144C.156D.288題目18x>0&&x<=10的相反表達式為()。選擇一項:A.x<=0||x>10B.x<=0&&x>10C.x<=0||x<=10D.x>0&&x>10題目19字符串“a+b=12\n”的長度為()。選擇一項:A.6B.7C.8D.9題目20在下列的符號常量定義中,錯誤的定義語句格式為()。選擇一項:A.constintM1=10;B.constintM2=20;C.constintM310;D.constcharmark='3';二、判斷題(共60分,每小題2分。敘述正確則回答“是”,否則回答“否”)題目21C語言中的每條簡單語句以分號作為結束符。選擇一項:對錯題目22C語言中的每條復合語句以花括號作為結束符。選擇一項:對錯題目23在C語言程序中,在行尾使用注釋的開始標記符為一對單斜線字符。選擇一項:對錯題目24注釋內(nèi)容的開始所使用的標記符為/*,則注釋內(nèi)容的結束所使用的標記符為*/。選擇一項:對錯題目25在一個C語言程序文件中,若要包含一個頭文件,則使用以百分號開始的預處理命令。選擇一項:對錯題目26用于輸出表達式值的標準輸出函數(shù)是printf()。選擇一項:對錯題目27當不需要函數(shù)返回任何值時,則需要使用保留字void作為函數(shù)的返回值類型。選擇一項:對錯題目28每個C程序文件在編譯時可能出現(xiàn)有警告性錯誤,其對應的標識符為error。選擇一項:對錯題目29十進制數(shù)25表示成符合C語言規(guī)則的八進制數(shù)為31。選擇一項:對錯題目30十進制數(shù)25表示成符合C語言規(guī)則的十六進制數(shù)為0x19。選擇一項:對錯題目31在C語言中,轉(zhuǎn)義字符'\n'表示一個換行符。選擇一項:對錯題目32執(zhí)行“printf("%c",'F'-2);”語句后得到的輸出結果為H。選擇一項:對錯題目33已知字符'C'的ASCII碼為67,當執(zhí)行“intx='C'+5;”語句后x的值為72。選擇一項:對錯題目34假定一個枚舉類型的定義為“enumRB{ab,ac=3,ad,ae}x=ad;”,則x的值為2。選擇一項:對錯題目35float的類型長度為8。選擇一項:對錯題目36在C語言中,常數(shù)28和3.26具有相同的數(shù)據(jù)類型。選擇一項:對錯題目37若需要定義一個符號常量,并且使C語言能夠進行類型檢查,則應在定義語句的開始使用保留字const。選擇一項:對錯題目38使用const語句定義一個符號常量時,不必對它進行初始化。選擇一項:對錯題目39表達式45%13的值為3。選擇一項:對錯題目40假定x=5,則表達式2*x++的值為12。選擇一項:對錯題目41表達式(float)25/4的值為6。選擇一項:對錯題目42表達式x=x+1表示成增量表達式為++x。選擇一項:對錯題目43關系表達式(x!=0)的等價表達式為(x)。選擇一項:對錯題目44關系表達式x+y>5的相反表達式為x+y<=5。選擇一項:對錯題目45邏輯表達式(a>b||b==5)的相反表達式為(a>b&&b==5)。選擇一項:對錯題目46若x=5,y=10,則x>y邏輯值為真。選擇一項:對錯題目47假定x=5,則執(zhí)行“a=(x?10:20);”語句后a的值為10。選擇一項:對錯題目48帶有隨機函數(shù)的表達式rand()%20的值所在的區(qū)間范圍是0~19。選擇一項:對錯題目49假定x=5,則執(zhí)行“y=x++;”語句后,x的值為5。選擇一項:對錯題目50假定x=5,則執(zhí)行“y=++x;”語句后,y的值為6。選擇一項:對錯形考任務2一、選擇題(共20分,每小題2分)題目1當處理特定問題時的循環(huán)次數(shù)已知時,通常采用的語句是()。選擇一項:a.forb.whilec.do-whiled.switch題目2在switch語句的每個case塊中,假定都是以break語句結束的,則此switch語句容易被改寫成的語句是()。選擇一項:a.forb.ifc.dod.while題目3for語句能夠被改寫成的語句是()。選擇一項:a.復合b.ifc.switchd.while題目4下面循環(huán)語句執(zhí)行結束后輸出的i值為()。for(inti=0;i<n;i++)if(i>n/2){cout<<i<<endl;break;}選擇一項:a.n/2b.n/2+1c.n/2-1d.n-1題目5在下面循環(huán)語句中,內(nèi)層循環(huán)體S語句的執(zhí)行總次數(shù)為()。for(inti=0;i<n;i++)for(intj=i;j<n;j++)S;選擇一項:a.n2b.(n+1)/2c.n(n-1)/2d.n(n+1)/2題目6在下面的do循環(huán)語句中,其循環(huán)體被執(zhí)行的次數(shù)為()。inti=0;doi++;while(i*i<10);選擇一項:4b.3c.5d.2題目7在下面的一維數(shù)組定義中,有語法錯誤的選項是()。選擇一項:a.inta[]={1,2,3};b.inta[10]={0};c.inta[];d.inta[5];題目8在下面的二維數(shù)組定義中,語法正確的選項是()。選擇一項:a.inta[5][];b.inta[][5];c.inta[][3]={{1,3,5},{2}};d.inta[](10);題目9假定一個二維數(shù)組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[1][1]的值為()。選擇一項:a.2b.4c.6d.8題目10假定一個二維數(shù)組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為()。選擇一項:a.0b.4c.8d.6二、判斷題(共20分,每小題1分。敘述正確則回答“是”,否則回答“否”)題目11在執(zhí)行“typedefintDataType;”語句后,標識符DataType與保留字int具有完全相同的含義和作用。選擇一項:對錯題目12在switch語句中,每個case和冒號之間的表達式只能是常量。選擇一項:對錯題目13為了結束本層循環(huán)類語句或switch語句的執(zhí)行過程,在語句體中需要使用break語句。選擇一項:對錯題目14在程序中執(zhí)行到break語句時,將結束所在函數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)的位置。選擇一項:對錯題目15在程序執(zhí)行完成任一個函數(shù)調(diào)用后,將結束整個程序的執(zhí)行過程,返回到操作系統(tǒng)或C語言集成開發(fā)環(huán)境界面窗口。選擇一項:對錯題目16假定一維數(shù)組的定義為“char*a[8];”,則該數(shù)組所含元素的個數(shù)大于8。選擇一項:對錯題目17假定二維數(shù)組的定義為“inta[3][5];”,則該數(shù)組所占存儲空間的字節(jié)數(shù)為60。選擇一項:對錯題目18假定二維數(shù)組的定義為“chara[M][N];”,則該數(shù)組所含元素的個數(shù)為M+N。選擇一項:對錯題目19假定二維數(shù)組的定義為“doublea[M][N];”,則每個數(shù)組元素的行下標取值范圍在0~M-1之間。選擇一項:對錯題目20假定二維數(shù)組的定義為“doublea[M][N];”,則每個數(shù)組元素的列下標取值范圍在0~N之間。選擇一項:對錯題目21存儲一個空字符串需要占用0個字節(jié)的存儲空間。選擇一項:對錯題目22使用“typedefcharBB[10][50];”語句定義標識符BB為含有10行50列的二維字符數(shù)組類型。選擇一項:對錯題目23存儲字符'a'需要占用1個字節(jié)的存儲空間。選擇一項:對錯題目24空字符串的長度為1。選擇一項:對錯題目25字符串"a:\\xxk\\數(shù)據(jù)"的長度為13。選擇一項:對錯題目26為了存儲一個長度為n的字符串,所使用的字符數(shù)組的長度至少為n+1。選擇一項:對錯題目27strcmp函數(shù)用于進行兩個字符串之間的比較。選擇一項:對錯題目28strcpy函數(shù)用于把一個字符串拷貝到另一個字符數(shù)組空間中。選擇一項:對錯題目29一個二維字符數(shù)組a[10][20]能夠最多存儲9個字符串。選擇一項:對錯題目30一個二維字符數(shù)組a[10][20]能夠存儲的每個字符串的長度不超過20。選擇一項:對錯三、填空題:寫出下列每個程序運行后的輸出結果(共40分,每小題4分)題目31#include<stdio.h>voidmain(){intx=5;switch(2*x-3){case4:printf("%d",x);case7:printf("%d",2*x+1);case10:printf("%d",3*x-1);break;default:printf("%s","default\n");}}答:11?14題目32#include<stdio.h>voidmain(){inti,s=0;for(i=1;i<=5;i++)s+=i*i;printf("s=%d\n",s);}答:s=55題目33#include<stdio.h>voidmain(){inti,s1=0,s2=0;for(i=0;i<10;i++)if(i%2)s1+=i;elses2+=i;printf("%d%d\n",s1,s2);}答:2520題目34#include<stdio.h>voidmain(){intn=6,y=1;while(n)y*=n--;printf("y=%d\n",y);}答:y=720題目35#include<stdio.h>constintM=20;voidmain(){inti,c2,c3,c5;c2=c3=c5=0;for(i=1;i<=M;i++){if(i%2==0)c2++;if(i%3==0)c3++;if(i%5==0)c5++;}printf("%d%d%d\n",c2,c3,c5);}答:1064)題目36#include<stdio.h>voidmain(){inti,s;for(i=1,s=0;i<10;i++){if(i%3==0)continue;s+=i;}printf("%d\n",s);}答:27題目37#include<stdio.h>voidmain(){inta[8]={12,39,26,41,55,63,72,40};inti,i1=0,i2=0;for(i=0;i<8;i++)if(a[i]%2==1)i1++;elsei2++;printf("%d%d\n",i1,i2);}答:44題目38#include<stdio.h>inta[10]={4,5,6,15,20,13,12,7,8,9};voidmain(){inti,s[4]=0;for(i=0;i<10;i++){switch(a[i]%4){case0:s[0]+=a[i];break;case1:s[1]+=a[i];break;case2:s[2]+=a[i];break;default:s[3]+=a[i];break;}}for(i=0;i<4;i++)printf("%d",s[i]);}答:4427622題目39#include<stdio.h>voidmain(){chara[]="abcdbfbgacd";inti1=0,i2=0,i=0;while(a[i]){if(a[i]=='a')i1++;if(a[i]=='b')i2++;i++;}printf("%d%d%d\n",i1,i2,i);}答:2311題目40#include<stdio.h>voidmain(){inta[3][4]={{1,2,7,8},{5,6,10,6},{9,12,3,4}};intm=a[0][0];inti,j;for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>m)m=a[i][j];printf("%d\n",m);}答:12四、簡答題:根據(jù)下列每個題目要求編寫程序(共20分,每小題4分)題目41編寫一個函數(shù),函數(shù)頭格式為“doubleMean(doublea[M][N],intm,intn)”,要求返回二維數(shù)組a[m][n]中所有元素的平均值,假定在計算過程中采用變量v存放平均值。doubleMean(doublea[M][N],intm,intn){inti,j;doublev=0.0;for(i=0;i<m;i++)for(j=0;j<n;j++)v+=a[i][j];v=v/(m+n);returnv;}答:doubleMean(doublea[M][N],intm,intn){inti,j;doublev=0.0;for(i=0;i<m;i++)for(j=0;j<n;j++)v+=a[i][j];v/=m*n;returnv;}題目42編寫一個遞歸函數(shù)“intFF(inta[],intn)”,求出數(shù)組a中所有n個元素之積并返回。intFF(inta[],intn){if(n==1)returna[0];elsereturnFF(a,n-1)*a[n-1];}答:intFF(inta[],intn){if(n==1)returna[n-1];elsereturna[n-1]*FF(a,n-1);}題目43編寫一個主函數(shù),利用while循環(huán),求出并顯示滿足不等式的最小n值。#include<stdio.h>voidmain(){inti=0,s=0;while(s<=1000){i++;s+=i*i;}printf("滿足不等式的最小n值是:%d\n",i);}答:#include<stdio.h>voidmain(){inti=0;doubles=0;//或inti=1;doubles=1;while(s<5)s+=(double)1/++i;printf("n=%d\n",i);}題目44編寫一個主函數(shù),求出滿足不等式22+42+...+n2<1000的最大n值,假定分別用i和s作為取偶數(shù)值和累加值的變量,并限定使用do循環(huán)編程。#include<stdio.h>voidmain(){inti=0,s=0;do{i+=2;s+=i*i;}while(s<1000);printf("滿足不等式的最大n值是:%d\n",i-2);}答:#include<stdio.h>voidmain(){inti=0;//用i作為依次取值偶數(shù)的變量ints=0;//用s作為累加變量do{i+=2;s+=i*i;}while(s<1000);printf("n=%d\n",i-2);}題目45編寫一個主函數(shù),計算并輸出12+22+...+n2值,其中n值由鍵盤輸入。#include<stdio.h>voidmain(){inti,n,s=0;printf("請輸入一個整數(shù)n:");scanf("%d",&n);for(i=1;i<=n;i++)s+=i*i;printf("s=%d\n",s);}答:#include<stdio.h>voidmain(){inti;//用i作為計數(shù)(循環(huán))變量ints=0;//用s作為累加變量intn;printf("輸入一個自然數(shù):");scanf("%d",&n);for(i=1;i<=n;i++)s+=i*i;printf("s=%d\n",s);}形考任務3一、選擇題(共30分,每小題2分)題目1在下面的函數(shù)聲明語句中,存在著語法錯誤的是()。選擇一項:a.AA(inta,intb)b.AA(int,int)c.AA(inta;intb)d.AA(inta,int)題目2在下面的保留字中,不能作為函數(shù)的返回值類型的是()。選擇一項:a.voidb.intc.enumd.long題目3假定p是一個指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的地址比p所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為()。選擇一項:a.1b.2c.4d.8題目4假定a為一個數(shù)組名,在下面的表達式中,存在語法錯誤的是()。選擇一項:a.a[i]b.*a++c.*ad.*(a+1)題目5用calloc函數(shù)創(chuàng)建具有10個整型元素的一維數(shù)組的正確語句是()。選擇一項:a.int*p=calloc(10,2);b.int*p=calloc(10);c.int*p=calloc(10,4);d.int*p=malloc(10)題目6假定變量m定義為“intm=7;”,則下面正確的語句為()。選擇一項:a.intp=&m;b.int*p=&m;c.int&p=*m;d.int*p=m;題目7假定k是一個double類型的變量,則定義變量p的正確語句為()。選擇一項:a.doublep=&k;b.int*p=&k;c.double&p=*k;d.char*p="Thankyou!";題目8若有語句為“inta[10],x,*pa=a;”,要把數(shù)組a中下標為3的元素值賦給x,則不正確的語句為()。選擇一項:a.x=pa[3];b.x=*(a+3);c.x=a[3];d.x=*pa+3;題目9假定有語句為“intb[10];int*pb;”,則下面不正確的賦值語句為()。選擇一項:a.pb=b;b.pb=&b[0];c.pb=b+2;d.pb=b[5];題目10已知“int*p=malloc(100);”,要釋放p所指向的動態(tài)內(nèi)存,正確的語句為()。選擇一項:a.free(p);b.freep;c.free(*p);d.free[p];題目11在程序的一個文件中定義的函數(shù),若要在另一個文件中調(diào)用,則必須在這另一個文件中給出該函數(shù)的()。選擇一項:a.原型語句b.參數(shù)表c.函數(shù)名d.返回類型題目12假定一個函數(shù)定義為“staticintf1(intx,inty){returnx+y;}”,該函數(shù)名稱為()。選擇一項:a.staticb.intc.f1d.return題目13假定一個函數(shù)的原型語句為“intff(int*x);”,一個整型數(shù)組為a[10],則下面函數(shù)調(diào)用表達式不正確的是()。選擇一項:a.ff(a)b.ff(a[0])c.ff(a+3)d.ff(&a[0])題目14假定一個函數(shù)的數(shù)組參數(shù)說明為chara[],與之等價的指針參數(shù)說明為()。1B選擇一項:a.charab.char*ac.char&ad.char**a題目15假定一個函數(shù)的二維數(shù)組參數(shù)說明為charw[][N],與之等價的指針參數(shù)說明為()。選擇一項:a.char(*w)[N]b.char*w[N]c.char(*w)Nd.char**a二、判斷題(共30分,每小題2分。敘述正確則回答“是”,否則回答“否”)題目16在C語言中,一個函數(shù)由函數(shù)頭和函數(shù)體組成。選擇一項:對錯題目17在函數(shù)模塊之外定義的變量稱為全局變量,若沒有被初始化則系統(tǒng)隱含對它賦初值0。選擇一項:對錯題目18如果一個函數(shù)只允許同一程序文件中的函數(shù)調(diào)用,則不應在該函數(shù)定義的開始前加上保留字static。選擇一項:對錯題目19如果在一個函數(shù)體中又出現(xiàn)對自身函數(shù)的調(diào)用,此種函數(shù)調(diào)用被稱為遞歸調(diào)用。選擇一項:對錯題目20調(diào)用系統(tǒng)函數(shù)時,要先使用#include命令包含該系統(tǒng)函數(shù)的原型語句所在的系統(tǒng)頭文件。選擇一項:對錯題目21函數(shù)形參變量不屬于局部變量。選擇一項:對錯題目22假定p所指對象的值為25,p+1所指對象的值為46,則*p++的值為46。選擇一項:對錯題目23假定p所指對象的值為25,p+1所指對象的值為46,則*++p的值為25。選擇一項:對錯題目24假定p所指對象的值為25,p+1所指對象的值為46,則執(zhí)行*(p++)運算后,p所指對象的值為46。選擇一項:對錯題目25假定a是一個指針數(shù)組,則a+i所指對象的地址比a地址大4*i字節(jié)。選擇一項:對錯題目26若要把一個整型指針p轉(zhuǎn)換為字符指針,則采用的強制轉(zhuǎn)換表達式為(char*)p。選擇一項:對錯題目27假定一個數(shù)據(jù)對象為int*類型,則指向該對象的指針類型仍為int*類型。選擇一項:對錯題目28假定x為一個簡單變量,則&x表示x的地址。選擇一項:對錯題目29若p指向x,則*p與x的值不同。選擇一項:對錯題目30NULL是一個符號常量,通常作為空指針值,它代表的值為0。選擇一項:對錯三、寫出下列每個程序運行后的輸出結果(共20分,每小題4分)題目31#include<stdio.h>intWF(intx,inty){x=x+y;y=x+y;returnx+y;}voidmain(){intx=5,y=7;intz=WF(x,y);printf("z=%d\n",z);}答:z=31題目32#include<stdio.h>#include<string.h>voidfun(charss[]);voidmain(){chars[15]="0123456789";fun(s);printf("%s\n",s);}voidfun(charss[]){inti,n=strlen(ss);for(i=0;i<n/2;i++){charc=ss[i];ss[i]=ss[n-1-i];ss[n-1-i]=c;}}答:987543210題目33#include<stdio.h>intCount(inta[],intn,intx){inti,c=0;for(i=0;i<n;i++)if(a[i]>x)c++;returnc;}voidmain(){inta[8]={20,15,32,47,24,36,28,70};intb=Count(a,8,30);printf("b=%d\n",b);}答:B=4題目34#include<stdio.h>voidmain(){inta[8]={3,5,7,9,2,3,4,8};ints=0,*p;for(p=a;p<a+8;)s+=*p++;printf("s=%d\n",s);}答:s=41題目35#include<stdio.h>intLA(int*a,intn,intx){inti,s=0;for(i=0;i<n;i++)if(a[i]<x)s+=a[i];returns;}voidmain(){inta[8]={5,10,15,8,12,3,9,20};intb=LA(a,5,10);intc=LA(a+2,6,10);printf("%d%d\n",b,c);}答:1320四、寫出下列每個函數(shù)的功能(共20分,每小題4分)題目36doubleSF(doublex,intn){//n為正整數(shù)doublep=1,s=1;inti;for(i=1;i<=n;i++){p*=x;s+=p;}returns;}答:計算出1+x+x2+...+xn的值并返回。題目37intSG(intx){//x為大于等于2的整數(shù)inti=2;while(i*i<=x){if(x%i==0)break;i++;}if(i*i<=x)return0;elsereturn1;}答:判斷x是否為一個質(zhì)數(shù)(素數(shù)),若是則返回1,否則返回0。題目38intWB(inta[],intn,intx){for(inti=0;i<n;i++)if(a[i]==x)return1;return0;}答:從數(shù)組a[n]中順序查找值為x的元素,若查找成功則返回1,否則返回0。題目39intfun(intm,intn){intc=0;staticintb=2;if(m<b||n<b)returnm*n;elseif(m%b==0&&n%b==0){c=b;returnc*fun(m/b,n/b);}else{b++;returnfun(m,n);}}答:一個遞歸函數(shù)過程,求出兩個自然數(shù)m和n的最小公倍數(shù)。題目40intLK(doublea[],intn){doubles=0;inti,m=0;for(i=0;i<n;i++)s+=a[i];s/=n;for(i=0;i<n;i++)if(a[i]>=s)m++;returnm;}答:求出并返回數(shù)組a的n個元素中大于等于平均值的元素個數(shù)。形考任務4一、選擇題(共30分,每小題2分)題目1假定有“structBOOK{chartitle[40];floatprice;};structBOOKbook;”,則不正確的語句為()。選擇一項:a.structBOOK*x=malloc(book);b.structBOOKx={"C++Programming",27.0};c.structBOOK*x=malloc(sizeof(structBOOK));d.structBOOK*x=&book;題目2假定有“structBOOK{chartitle[40];floatprice;}book;”,則正確的語句為()。選擇一項:a.structBOOKx=&book;b.structBOOK*x=&book;c.structBOOKx=calloc(BOOK);d.structBOOK*x=BOOK;題目3在結構類型的定義中,不同數(shù)據(jù)成員的定義項之間采用的分隔符是()。選擇一項:a.句點b.冒號c.分號d.逗號題目4假定一個結構類型的定義為“structA{inta,b;doublec;};”,則該類型的長度為()。選擇一項:a.8b.10c.12d.16題目5假定一個結構類型的定義為“structD{inta;D*next;};”,則該類型的長度為()。選擇一項:a.4b.8c.12d.16反饋Youransweriscorrect.題目6假定要訪問一個結構指針變量x中的數(shù)據(jù)成員a,則表示方法為()。選擇一項:a.x.ab.x->ac.x(a)d.x{a}題目7與結構成員訪問表達式等價的表達式為()。選擇一項:a.x->nameb.&x->namec.(&x)->named.(*x)->name題目8假定一個鏈表中結點的結構類型為“structAA{intdata,structAA*next;};”,則next數(shù)據(jù)成員的類型為()。選擇一項:a.structAAb.structAA*c.AAd.int題目9假定一個鏈表的表頭指針為f,結點中包含有data和next域,則向該鏈表的表頭插入一個地址為p的結點時,應執(zhí)行的操作為()。選擇一項:a.p->next=fb.p->next=f和f=pc.f=p->nextd.f->next=p和f=p題目10標準輸入設備鍵盤的文件流標識符是()。選擇一項:a.stdinb.stdoutc.stderrd.stdio題目11表示文件結束符的符號常量為()。選擇一項:a.eofb.Eofc.EOFd.feof題目12C語言中打開一個數(shù)據(jù)文件的系統(tǒng)函數(shù)為()。選擇一項:a.fgetc()b.fputc()c.fclose()d.fopen()題目13從一個數(shù)據(jù)文件中讀入以換行符結束的一行字符串的系統(tǒng)函數(shù)為()。選擇一項:a.gets()b.fgets()c.getc()d.fgetc()題目14向一個二進制文件中寫入信息的函數(shù)fwrite()帶有的參數(shù)個數(shù)為()。選擇一項:a.1b.2c.3d.4題目15在C語言中,為只寫操作打開一個文本文件的方式為()。選擇一項:a."a"b."r+"c."r"d."w"二、判斷題(共40分,每小題2分。敘述正確則回答“是”,否則回答“否”)題目16在結構類型的定義中,其中的數(shù)據(jù)成員可以是本身類型的直接對象。選擇一項:對錯題目17在結構類型的定義中,允許出現(xiàn)結構類型不完整的超前定義。選擇一項:對錯題目18定義結構類型的變量時,不能夠同時進行初始化。選擇一項:對錯題目19使用一個結構類型時,必須一起使用關鍵字struct和類型標識符。選擇一項:對錯題目20假定一個結構類型的定義為“structA{inta,b;A*c;};”,則該類型的長度為12。選擇一項:對錯題目21假定一個結構類型的定義為“structB{inta[5];char*b;};”,則該類型的長度為20。選擇一項:對錯題目22執(zhí)行calloc(n,8)函數(shù)調(diào)用時,將動態(tài)分配得到8*n個字節(jié)的存儲空間。選擇一項:對錯題目23執(zhí)行malloc(sizeof(structBB))函數(shù)調(diào)用時,得到的動態(tài)存儲空間能夠保存具有structBB結構類型的一個對象。選擇一項:對錯題目24假定要訪問一個結構對象x中的由a指針成員所指向的對象,則表示方法為x.a。選擇一項:對錯題目25假定要訪問一個結構指針p所指對象中的b指針成員所指的對象,則表示方法為p->b。選擇一項:對錯題目26與結構成員訪問表達式(*fp).score等價的表達式是fp->score。選擇一項:對錯題目27在C語言中,對二進制文件的所有不同打開方式共有6種。選擇一項:對錯題目28C語言中的標準輸入和輸出設備文件都屬于字符文件。選擇一項:對錯題目29在一個磁盤數(shù)據(jù)文件的文件名中,文件主名和擴展名都是必須的,不可省略。選擇一項:對錯題目30在數(shù)據(jù)文件打開方式字符串中,字符r、w和a具有確定的含義,分別代表讀、寫和追加方式。選擇一項:對錯題目31一個磁盤數(shù)據(jù)文件的文件名由文件主名和擴展名所組成,其中間用圓點分開。選擇一項:對錯題目32C語言系統(tǒng)中提供一個用來描述文件屬性的類型標識符為FILE。選擇一項:對錯題目33每次只能向文本文件中寫入一個字符,不能一次寫入一個字符串。選擇一項:對錯題目34對二進制文件進行讀和寫操作將使用相同的系統(tǒng)函數(shù)。選擇一項:對錯題目35在C語言中,系統(tǒng)函數(shù)fseek()用來移動數(shù)據(jù)文件中的文件位置指針。選擇一項:對錯三、寫出下列每個程序運行后的輸出結果(共15分,每小題5分)題目36#include<stdio.h>structWorker{charname[15];//姓名intage;//年齡floatpay;//工資};voidmain(){structWorkerx={"wanghua",52,4300};structWorkery,*p;y=x;p=&x;printf("%s%d%6.2f\n",,y.age,p->pay);}答:wanghua
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB32/T 3980-2021實驗動物機構實驗動物生物安全管理規(guī)范
- DB32/T 3910-2020就業(yè)援助服務規(guī)范
- DB32/T 3781-2020遙感監(jiān)測小麥苗情及等級劃分
- DB32/T 3777-2020規(guī)?;i場豬圓環(huán)病毒病防控技術規(guī)范
- DB32/T 3757-2020新型冠狀病毒肺炎疫情防控學校消毒技術規(guī)范
- DB32/T 3514.7-2019電子政務外網(wǎng)建設規(guī)范第7部分:電子認證注冊服務機構建設
- DB32/T 1244-2020技術交易服務規(guī)范
- DB31/T 907-2015工商燃氣供應工程技術規(guī)程
- DB31/T 773-2019房車旅游服務區(qū)基本要求
- DB31/T 329.3-2021重點單位重要部位安全技術防范系統(tǒng)要求第3部分:金融機構
- 商標分割申請書
- 上海租賃合同
- (2012)149號文造價咨詢費計算表
- EndNote使用教程介紹課件
- 重癥肌無力 (神經(jīng)內(nèi)科)
- 醫(yī)院診斷證明書word模板
- 藥物分析與檢驗技術中職PPT完整全套教學課件
- 小兒急性顱內(nèi)壓增高護理
- 城市消防站建設標準XXXX
- 小學英語The-Giving-Tree 優(yōu)秀公開課課件
- 左宗棠課件完整版
評論
0/150
提交評論