C語(yǔ)言指針習(xí)題及答案65800_第1頁(yè)
C語(yǔ)言指針習(xí)題及答案65800_第2頁(yè)
C語(yǔ)言指針習(xí)題及答案65800_第3頁(yè)
C語(yǔ)言指針習(xí)題及答案65800_第4頁(yè)
C語(yǔ)言指針習(xí)題及答案65800_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、指針習(xí)題及答案一.選擇題1變量的指針,其含義是指該變量的BoA)值B)地址C)名D) 一個(gè)標(biāo)志2.已有定義int k=2; int *ptrl, *ptr2;且ptrl和ptr2均己指向變量k,下面不能正確執(zhí)行的賦值語(yǔ)句是BoA) k=*ptrl+*ptr2B) ptr2=kC) ptrl=ptr2D) k=*ptrl*(*ptr2)3若有說(shuō)明:int *p, m=5, n;以下程序段正確的是DA ) p=&n;B) p = &n;scanf(“d:&p);scanfCc%d5*p);C) scaiif(“cT,&n);D) p = &n;*p=n ;*p = m ;4.已有變量定義和函數(shù)調(diào)用

2、語(yǔ)句:int a=25;print_value(&a); F面函數(shù)的輸出結(jié)果是Dovoid print_value(mt *x) pimtfCchina,;B ) char str10=t;等價(jià)于 char stt10; stt =fCchinan;C) char *s=nchma,;等價(jià)于 char *s; s=china ;D) chai c4=”abc”,d4=abc”;等價(jià)于 char c4=d4=”abc;8. 下面程序段中,for循環(huán)的執(zhí)行次數(shù)是 Cchai- *s=%a018bc;for ( ; *s?=0; s+) printf(c) pl+; p2+ C) strcpy3(c

3、hai *pl,chai *p2) wliile (*pl-H-=*p2+) ; D) strcpy4(chai *pl,chai *p2) wliile (*p2) *pl+=*p2-H- ; 14. 下面程序段的運(yùn)行結(jié)果是Cchai a -Uanguage , *p ;p=a;while (*p!=,uj pmitf(“ c”,*p32); p+ ;A) LANGUAGEB) languageC) LANGD) langUAGE16. 以下與庫(kù)函數(shù)strcmp(char *s, char *t)功能相等的程序段是C。A ) strcmpl(char *s?chai- *t) for ( ;

4、 *s+=*t+;)if (*s= =,0?) return 0 ;return (*s-*t);B) strcmp2(char *s、char *t) for ( ; *s+=*t+;)if (!*s) return 0;return (*s-*t);C ) strcmp3(char *s?chai- *t) for(; *t= =*s;) if (!*t) return 0 ; t+ ; s+ ;return (*s-*t);D ) strcmp4(char 奴char *t) for ( ; *s=*t; s+91+)if (!*s) return 0;return (*t-*s);17

5、. 以下說(shuō)明不正確的是D。A) chai a10=”china ;B) char a10,*p=a; phiiia;C) char *a; a=”chiiKT ;D ) char a10,*p; p=a=china”;18. 設(shè)有說(shuō)明語(yǔ)句:char a二It is minen ;char *p二It is mine;則以下不正確的敘述是 OA) a+1表示的是字符t的地址B) p指向另外的字符串時(shí),字符串的長(zhǎng)度不受限制c) p變量中存放的地址值可以改變D) a中只能存放10個(gè)字符19若已定義ch孔s10;則在下面表達(dá)式中不表示sl的地址是一BA) s+1B) s+C) &s0+lD) &sl2

6、0. 若有定義:int a5,*p二a;則對(duì)a數(shù)組元素的正確引用是 。A) *&a5B) a+2C) *(p+5)D) *(a+2)21. 若有定義:int a5,*p二a;則對(duì)a數(shù)組元素地址的正確引用是D。A) p+5B) *a+lC) &a+lD) &a022. 若有定義:int a23;則對(duì)a數(shù)組的第i行第j列元素值的正確引用是 A 。A) *(*(a+i)+j)B) (a+i)jC) *(a+i+j)D) *(a+i)+j23. 若有定義:int a3;則對(duì)a數(shù)組的第i行第j列元素地址的正確引用是DA) *(ai+j)B) (a+i)C) *(a+j)D) ai+j24. 若有程序段:

7、int a23, (*p)3; p二a;則對(duì)a數(shù)組元素地址的正確引用是。A) *(p+2)B) p2C) pl+lD) (p+l)+225若有程序段:int a2 3, (*p) 3; pp;則對(duì)a數(shù)組元素的正確引用是CA) (p+l)0B) *(*(p+2)+l)C) *(pl+l)D) pl+226. 若有定義:int a5;則a數(shù)組中首元素的地址可以表示為CA) &aB) a+1C) aD) &al27. 若有定義:int (切)4;則標(biāo)識(shí)符p CA) 是一個(gè)指向整型變量的指針B) 是一個(gè)指針數(shù)組名C) 是一個(gè)指針,它指向一個(gè)含有四個(gè)整型元素的一維數(shù)組D) 定義不合法28. 以下與int

8、 *q5;等價(jià)的定義語(yǔ)句是。A) iiit q5B) iiit *qC) iiit *(q習(xí))D) hit (*q)529. 以下正確的說(shuō)明語(yǔ)句是 。A) mt *b= 13,5,7,9;B) int a5,*num5=&a0,&al,&a2,&a3,&a4;c) mt a=l,3,5,7,9; int *num5=a0,al,a2,a3,a4;D) iiit a34,(*num)4; numl=&al3;30. 若有定義:int b4 6, *p, *q4;且0Wi4,則不正確的賦值語(yǔ)句是DA) qi=bi;B) p=b;C) p=bi;D) qi=&b0032若要對(duì)a進(jìn)行自減運(yùn)算,則a應(yīng)有

9、下面說(shuō)明 DA) mtp3;B) intk;C) cliai *a3int *a=b+l;D) inta5iiit *pl,*p2=a;iiit *a=p;int *a=&k;33. 以下選項(xiàng)中,對(duì)指針變量p的正確操作是 B 。A) iiit a3, *p;B) inta5, *p;C) iiit a5;p=&a;p=a;iiit *p=a=100;*pl=*p2;34. 若有定義:int x10 = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *pl;則數(shù)值不為3的表達(dá)式是CA) x3B) pl=x+3,*pl-H-C) pl=x+2,*(pl+)D) pl=x+2,*-H-

10、pl35. 下面程序段的輸出是Cjint a =2,4,6,8,10,12,14,16&20,22,24,*q4,k; for (k=01; k4; k+) qk=&ak*3; pnntf(“dn”,q30);A) 8B) 16C) 20D)輸出不合法36. 若要對(duì)a進(jìn)行自增運(yùn)算,則a應(yīng)具有下面說(shuō)明 。A) mt a32;B) char *a =“12”,”ab”;C) char (*a) 3D) intb10, *a=b;37. 若有定義int a4 6;則能正確表示a數(shù)組中任一元素ai j (i, j均在有效范圍內(nèi))地址的表達(dá)式 oA) &a00+6*i+jB) &a00+4*j+iC)

11、&a00+4*i+jD) &a00+6*j+I38. 下面程序的運(yùn)行結(jié)果是 。main () mt x5=2,4,6.8,10, *p, *pp ;p=x , pp = &p ;phntf(%d”,*(p+);pnnrf(“3d”,*pp);A) 4 4B) 2 40 2 2D) 4 639. 若有定義 intx43=l,2,3,4,5,6,7,&9,10,ll,12;mt(*p)3=x;則能夠正確表示數(shù)組元素xl2的表達(dá)式是 。A) *(*p+l)2)B) (*p+l)+2C)*(*(p+5)D) *(*(p+l)+2)40. 若有說(shuō)明:char language 二“FORTRANTEAS

12、ICTFASCAL/JAVARrC;則language 2的值是B。A) 一個(gè)字符B) 一個(gè)地址C) 一個(gè)字符串D) 一個(gè)不定值41. 設(shè)有定義:char *cc二“1234”,”5678”;則正確的敘述是 。A) cc數(shù)組的兩個(gè)元素中各自存放了字符串”1234”和”5678”的首地址B) cc數(shù)組的兩個(gè)元素分別存放的是含有4個(gè)字符的一維字符數(shù)組的首地址C) cc是指針變量,它指向含有兩個(gè)數(shù)組元素的字符型一維數(shù)組D) cc元素的值分別維”1234”和5678”42. 已有定義int (*p)();指針p可以 oA)代表函數(shù)的返回值B)指向函數(shù)的入口地址C)表示函數(shù)的類(lèi)型D)表示函數(shù)返回值的類(lèi)型

13、43. 已有函數(shù)max(a,b),為了讓函數(shù)指針變量p指向函數(shù)max,正確的賦值方法是 A A) p=max;B) p=max(a,b);C) *p=max;D) *p=max(a,b);44. 若有函數(shù)max(a,b),并且已使函數(shù)指針變量p指向函數(shù)max,當(dāng)調(diào)用該函數(shù)時(shí),正確的調(diào)用方法是C 或p(a,b)oA) (*p)max(a,b) B) *pmax(a,b);C) (*p)(a,b);D )*p(a,b);45. 以下正確的敘述是C。A) C語(yǔ)言允許main函數(shù)帶形參,且形參個(gè)數(shù)和形參名均可由用戶指定B) C語(yǔ)言允許main函數(shù)帶形參,形參名只能是argc和argvC) 當(dāng)main函

14、數(shù)帶有形參時(shí),傳給形參的值只能從命令行中得到D) 若有說(shuō)明:int main(int argc,chai *argv),則 argc 的值必須人于 1三. 程序閱讀題1寫(xiě)出下面程序的運(yùn)行結(jié)果。5fiinc(chaf *s,char n) mtj;*s=a;j=n;while (*ss|j)j; return j;main () char c6;iiit i ;for (1=1; i=5 ; i+) *(c+l)=W+i+l; pdntf(%dn=fiiic(c,E :5);2. 寫(xiě)出下面程序的運(yùn)行結(jié)果。6fiin (char *s) char *p=s;while (*p) p卄;

15、return (p-s);main () char *a=abcdef;3. 寫(xiě)出下面程序的運(yùn)行結(jié)果。abcdefglkjihsub(char *a,mt tljnt t2) chai ch;while (tlt2) ch = *(a+tl); *(a+tl)=*(a+t2) ; *(a+t2)=ch ; tl+ ; t2;main () chai s12;inti;for (1=0; i12 ; i+) si=N+i+32 ;sub(s,7,ll);for (i=0; i12 ; i+) prmtf (%c”,si);9765314. 當(dāng)運(yùn)行以下程序時(shí),寫(xiě)出輸入6/的程序運(yùn)行結(jié)果。sub(c

16、har *a,char b) wliile (*(a+)!=W);while (*(a-l)b)*(a-尸 *(aT);*(a)=b;main () chars尸”9753 l;c;c = getchai ();sub(s,c); puts(s);5. 寫(xiě)出下面程序的運(yùn)行結(jié)果。JavadBaseC LanguagePascalmain () char *a=t=0;j)pdntf(%siin*(p-);四. 程序填空題1. 卞面函數(shù)的功能是從輸入的十個(gè)字符串中找出最長(zhǎng)的那個(gè)串,請(qǐng)?zhí)?2)空使程序完整。void fiin(char str1081,chai- *sp) mt i;*sp = 1s

17、trO;for(i=l; i10; i+)if (strlen (*sp)strlen(stri) 2*sp=stri;2. 卜面函數(shù)的功能是將一個(gè)整數(shù)字符串轉(zhuǎn)換為一個(gè)整數(shù),例如:”-1234”轉(zhuǎn)換為1234,請(qǐng)?zhí)?3) 空使程序完整。mt clmum(chai- *p) int num=O.kJenj ;len = stiien(p);fbr(; ; p+) k= 2; j=(len);wliile ( ) k=k*10 ;num = num + k ;return (num);3. 卞面函數(shù)的功能使統(tǒng)計(jì)子串substr在母串str中出現(xiàn)的次數(shù),請(qǐng)?zhí)?3)空使程序完整。int count(char *str, chai *substi) int ij,k,num=O; ;1+),k=0; substrk= =stij; k+; j+) 】=W)for (i=0;【1 stTi!=Wfor ( 2 j=iif (substi- 3knum+ ; break;return (num);6下面函數(shù)的功能是將兩個(gè)字符串si和s2連接起來(lái),請(qǐng)?zhí)?2)空使程序完整。void coiij(char *sl,char *s2)wliile (*sl) 1s+;wliile (*s2) *sl= 2s2 ; sl+,s2-H-; *sl=0;五. 編程題1. 定義3個(gè)整數(shù)及整

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論