圖解C編程智慧樹知到期末考試答案2024年_第1頁
圖解C編程智慧樹知到期末考試答案2024年_第2頁
圖解C編程智慧樹知到期末考試答案2024年_第3頁
圖解C編程智慧樹知到期末考試答案2024年_第4頁
圖解C編程智慧樹知到期末考試答案2024年_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

圖解C編程智慧樹知到期末考試答案2024年圖解C編程在for循環(huán)中,不能用break語句跳出循環(huán)體。

A:對B:錯答案:對在函數(shù)的調(diào)用過程中,如果函數(shù)funA調(diào)用了函數(shù)funB,函數(shù)funB又調(diào)用了函數(shù)funA,則稱為函數(shù)的循環(huán)調(diào)用。

A:對B:錯答案:錯在C語言源程序中,一個變量代表內(nèi)存中的一個存儲單元。

A:錯B:對答案:對在定義一維數(shù)組時可以只給一部分元素賦初值。

A:錯B:對答案:對在C語言的賦值表達(dá)式中,賦值號左邊必須是一個變量。

A:對B:錯答案:對函數(shù)的形參都屬于全局變量。

A:對B:錯答案:錯用C語言實現(xiàn)的算法必須要有輸入輸出操作。

A:對B:錯答案:錯C語言中的文件又被稱為流式文件。

A:對B:錯答案:對C語言只能處理文本文件。

A:錯B:對答案:錯在C語言中,&運算符作為單目運算符時表示的是取地址運算。

A:錯B:對答案:對花括號“{”和“}”只能作為函數(shù)體的定界符。

A:對B:錯答案:錯C語言源程序的基本單位是語句。

A:正確B:錯誤答案:錯誤在C語言中,二維數(shù)組元素在內(nèi)存中的存放是按照若干行、若干列的形式存放的。

A:對B:錯答案:錯賦值表達(dá)式c=b=a=5是錯誤的。

A:錯B:對答案:錯單目運算符++的運算對象可以是char型變量、int型變量和float型變量。

A:正確B:錯誤答案:正確兩個字符串所包含的字符個數(shù)相同時,才能比較字符串。

A:錯誤B:正確答案:錯誤C語言的編譯預(yù)處理就是對源程序進(jìn)行初步的語法檢查。

A:錯B:對答案:錯循環(huán)結(jié)構(gòu)在滿足條件時反復(fù)執(zhí)行循環(huán)體。

A:錯B:對答案:對sizeof(float)是一個單精度型表達(dá)式。

A:對B:錯答案:錯有兩個字符數(shù)組a、b,正確的輸入格式為()。

A:scanf("%s%s”,&a,&b);B:gets(a,b);C:gets(“a”),gets(“b”);D:scanf("%s%s”,a,b);答案:gets(a,設(shè)int*ptr,x,array[5]={5,4,3,2,1};ptr=array;則能使x的值為3的語句是()

A:x=*(array+3);B:array+=2;x=*array;C:x=array[3];D:x=*(ptr+2)答案:x=*(ptr+2)設(shè)int*p,a[10];p=a;則下列等式錯誤的是()。

A:a[2]==*(p+2)B:p++==a++;C:*p==a[0];D:p==&a[0];答案:p++==a++;()不是C語言提供的關(guān)鍵字。

A:caseB:printC:defaultD:continue答案:print關(guān)于以下一段程序的理解錯誤的是()。FILE*fp;if((fp=fopen("D:\\test.txt","w"))==NULL){printf("Cannotopenthefile!\n");exit(0);}

A:fopen函數(shù)打開文件失敗后的返回值為NULLB:if語句表示調(diào)用fopen函數(shù)以只讀的形式打開D盤根目錄下的文件test.txtC:通過調(diào)用fopen函數(shù),使文件指針fp指向文件test.txt在內(nèi)存中的緩沖區(qū)D:FILE*fp;表示定義一個文件指針fp答案:if語句表示調(diào)用fopen函數(shù)以只讀的形式打開D盤根目錄下的文件test.txt下列程序的運行結(jié)果是()。intmain(){intx=2,y=-1,z=2;if(yelsez+=1;printf("%d\n",z);return0;}

A:3B:2C:0D:1答案:0以下程序的輸出為()#defineM(x,y,z)x/y+zvoidmain(){inta=1,b=2,c=3;printf("%d\n",M(a+b,b+c,c+a));}

A:5B:8C:4D:9答案:9C語言提供的關(guān)鍵字是()。

A:breakB:procedureC:beginD:append答案:break假設(shè)有如下定義:char*s[2]={"Ilove","china"};則以下說法正確的是():

A:s數(shù)組的兩個元素分別存放了字符'I'和'c'B:s數(shù)組元素的值分別是"Ilove"和"china"C:s是指針變量,它指向含有兩個數(shù)組元素的字符型一維數(shù)組D:s數(shù)組的兩個元素分別存放的是兩個字符串的首地址答案:s數(shù)組的兩個元素分別存放的是兩個字符串的首地址語句if(a>b)k=0;elsek=1;

(其中a,b,k為int)等價于(

)。

A:k=a>b;B:k=(a>b)?0:1;C:其他均不是D:k=(a>b)?1:0;答案:k=a設(shè)x和y均為int型變量,則語句x+=y;y=x-y;x-=y;的功能是()。

A:交換x和y的值B:把x和y按從小到大排列C:把x和y按從大到小排列D:無確定結(jié)果答案:交換x和y的值設(shè)已知一個文件中存放若干學(xué)生記錄,其數(shù)據(jù)結(jié)構(gòu)如下:structst{charnum[10];intage;floats[5];}定義一個數(shù)組:structsta[10];假定文件已正確打開,則不能正確從文件中讀出10個學(xué)生數(shù)據(jù)到數(shù)組中的是()。

A:for(i=0;iB:for(i=0;iC:fread(a,sizeof(structst),10,fp);D:for(i=0;i答案:for(i=0;iC語言中,每個語句和數(shù)據(jù)定義是用()結(jié)束的。

A:句號B:逗號C:雙引號D:分號答案:分號在C語言中,以下不能正確進(jìn)行賦值、賦初值的語句(組)是()

A:char*s="china";B:chars[6];s="china";C:chars[5]={'c','h','i','n','a'};D:chars[6]="china";答案:a設(shè)有定義doublea[10],*s=a;,以下能夠代表數(shù)組元素a[3]的是()

A:*(s+3)B:*s[3]C:*s+3D:(*s)[3]答案:*(s+3)設(shè)有代碼段:inta[4]={2,3,4},i;i=a[0]*a[1]+a[2]*a[3];則執(zhí)行結(jié)束后變量i的值為()

A:6B:不確定C:10D:4答案:6當(dāng)變量i=3時,表達(dá)式++i,i++的值分別是()。

A:4,3B:4,4C:3,4D:3,3答案:4,3當(dāng)說明一個結(jié)構(gòu)體變量時系統(tǒng)分配給它的內(nèi)存是()。

A:各成員所需內(nèi)存量的總和B:結(jié)構(gòu)中最后一個成員所需內(nèi)存量C:結(jié)構(gòu)中第一個成員所需內(nèi)存量D:成員中占內(nèi)存量最大者所需的容量答案:各成員所需內(nèi)存量的總和設(shè)有以下程序片段:inta[10],*p;p=a;則p+5表示()。

A:元素a[5]的值B:元素a[5]的地址C:元素a[6]的地址D:元素a[6]的值答案:元素a[5]的地址設(shè)有如下定義,則st1中x成員的正確引用是()structstru{intx;Floaty;}st1,*p;p=

A:p->xB:p->st1.xC:*p.xD:(*p).st1.x答案:(*p).x設(shè)有下列語句structdate{intyear,month,day;}today;假設(shè)一個int型數(shù)據(jù)用2個字節(jié)存儲,則表達(dá)式sizeof(structdate)的值為()

A:8B:3C:1D:6答案:6設(shè)有程序段如下:intk=5;while(k=0)k=k-1;則下面描述中正確的是()。

A:循環(huán)是無限循環(huán)B:循環(huán)體語句執(zhí)行一次C:while循環(huán)執(zhí)行5次D:循環(huán)體語句一次也不執(zhí)行答案:循環(huán)體語句一次也不執(zhí)行下列說法不正確的是()。

A:形式參數(shù)是局部變量。B:在一個函數(shù)的內(nèi)部,可以在復(fù)合語句中定義變量。C:不同的函數(shù)中,可以使用相同名字的變量。D:主函數(shù)main中定義的變量在整個文件或者程序中都有效答案:a運行下面程序時,若從鍵盤輸入"5"(表示回車),則程序的輸出結(jié)果是()。#includevoidmain(){inta;scanf("%d",&a);if(a++>5)printf("%d\n",a);elseprintf("%d\n",a--);}

A:4B:6C:7D:5答案:6如果inta=3,b=4;則條件表達(dá)式a

A:1B:0C:4D:3答案:3閱讀以下程序:intmain(){FILE*fp;charch;if((fp=fopen("D:\\test.txt","w"))==NULL){printf("Cannotopenthefile!\n");exit(0);}ch=getchar();while(ch!='#'){fputc(ch,fp);ch=getchar();}fclose(fp);return0;}關(guān)于上述程序的分析錯誤的是()。

A:ch=getchar();在程序中出現(xiàn)了2次,可以刪除其中一處B:程序使用到fopen,fputc,fclose三個處理test.txt文本文件的函數(shù)C:程序功能是從鍵盤輸入一串以#作為結(jié)束的字符,將該字符串保存到text.txt文本中D:ch是內(nèi)存中的一個變量,通過調(diào)用getchar函數(shù)從鍵盤緩沖區(qū)獲取數(shù)據(jù),賦值給ch答案:ch=getchar();在程序中出現(xiàn)了2次,可以刪除其中一處已有定義:inta[10]={1,2,3},*p;,則不合法的賦值語句是()。

A:p=&a[9];B:p=a[9];C:p=a+1;D:p=a;答案:p=a[9];在C語言函數(shù)的定義和引用中,以下描述正確的是()

A:數(shù)組名不能作為形式參數(shù)B:可以有也可以沒有形式參數(shù)C:函數(shù)的定義和調(diào)用可以嵌套D:不同函數(shù)中,不能使用重名的形式參數(shù)答案:可以有也可以沒有形式參數(shù)函數(shù)fseek(pFile,0L,SEEK_CUR)中的SEEK_CUR代表的起始點是(

)。

A:文件當(dāng)前位置B:文件末尾C:其他都不對D:文件開始答案:文件當(dāng)前位置下列程序段執(zhí)行后s值為()。#includeintmain(){inti=5,s=0;do{if(i%2==0)s+=i;}while(--i);printf("%d",s);return0;}

A:6B:其他均不是C:9D:15答案:6設(shè)有以下定義語句,則能給數(shù)組x中下標(biāo)為8的元素讀入數(shù)據(jù)的正確語句是()

doublex[20],*p=x;

A:scanf("%lf",p+8);B:scanf("%f",&p[8]);C:scanf("%lf",*(x+8));D:scanf("%f",&x[8]);答案:AI參考:正確選項是D:scanf("%f",&x[8]);\n\n解釋如下:\n\n題目中給出了一個數(shù)組x,大小為20個double類型元素。p是指向數(shù)組x的指針。因此,我們可以將p視為一個數(shù)組指針,通過指針可以訪問數(shù)組中的元素。\n\n選項A中的scanf語句是錯誤的,因為它試圖讀取一個數(shù)組指針+8個元素的值,這在C語言中是不合法的。\n\n選項B中的scanf語句試圖讀取p[8]這個元素的值,但由于p是指向數(shù)組x的指針,p[8]實際上是指向數(shù)組之外的非法內(nèi)存位置,因此會導(dǎo)致未定義的行為。\n\n選項C中的scanf語句試圖讀取*(x+8)這個元素的值,但在這種情況下,由于數(shù)組名在C語言中是指向數(shù)組第一個元素的指針,所以*(x+8)實際上是指向數(shù)組之外的非法內(nèi)存位置,同樣會導(dǎo)致未定義的行為。\n\n只有選項D中的scanf語句是正確的,因為它試圖讀取數(shù)組x中下標(biāo)為8的元素的值。&x[8]表示的是數(shù)組x中下標(biāo)為8的元素的地址,scanf函數(shù)可以讀取該地址處的值。因此,選項D是正確的。'以下哪一個是判斷字符型變量ch為小寫字母的表達(dá)式()。

答案:"AI參考:選項C是正確的。表達(dá)式應(yīng)該是`ch>=a&&ch<=z`。這個表達(dá)式表示判斷字符型變量ch是否在字母表的小寫字母范圍內(nèi),即a到z之間。如果ch的值在這個范圍內(nèi),那么它就是小寫字母。"下列語句正確的是()

A:charstring[]="china";B:charstring[];string="china";C:charstring1[],string2[];string2={"china"};strcpy(string1,string2);D:charstring1[5],string2[]={"china"};string1=string2;答案:AI參考:正確選項是:D:charstring1[5],string2[]={"china"};string1=string2;\n\n解釋:\n\nA選項中,字符串字面量應(yīng)該被包含在引號內(nèi),所以應(yīng)該是charstring[]="china";。\n\nB選項中,應(yīng)該先聲明變量,然后再賦值,所以應(yīng)該是charstring[];string="china";。\n\nC選項中,兩個字符串?dāng)?shù)組的聲明之間應(yīng)該用逗號隔開,并且字符串字面量應(yīng)該被包含在引號內(nèi),所以應(yīng)該是charstring1[],string2[]={"china"};。\n\nD選項是正確的,它聲明了兩個字符數(shù)組變量string1和string2,并使用等號將它們進(jìn)行了賦值。其中string2是一個字符串字面量,它被存儲在string2的數(shù)組中。因此,string1被賦值為string2的值。注意,這里使用了strcpy函數(shù)來復(fù)制string2的內(nèi)容到string1中。\n\n因此,正確選項為D:charstring1[5],string2[]={"china"};string1=string2;。'以下函數(shù)正確的是()。

A:intfun(intx,inty){intz;z=x+y;returnz;}B:C)fun(intx,inty){doublez;z=x+y;returnz;}C:intfun(intx,y){intz;returnz;}D:doublefun(intx,inty){intx,y;doublez;z=x+y;returnz;}答案:AI參考:正確選項是【B】\n\n函數(shù)定義中應(yīng)該包括返回類型和函數(shù)名,同時參數(shù)類型也需要和返回類型匹配。在選項B中,函數(shù)返回類型為double,并且使用了double類型的變量z來存儲結(jié)果,所以是正確的。其他選項中存在以下問題:\n\n*選項A中,返回類型為int,但是返回值為double,不符合題目要求。\n*選項C中,函數(shù)定義缺少參數(shù)類型和變量x、y的定義,不符合題目要求。\n*選項D中,函數(shù)返回類型為double,但是參數(shù)類型為int,不符合題目要求。'已知有以下聲明語句,則以下對結(jié)構(gòu)體變量cmp中成員No的引用方式正確的是()

structcompany{

intNo;

charName[50];

}comp,*ptr;

ptr=?

A:ptr->cmp.NoB:*ptr.NoC:ptr-

溫馨提示

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

最新文檔

評論

0/150

提交評論