c語言指針習題及答案54902_第1頁
c語言指針習題及答案54902_第2頁
c語言指針習題及答案54902_第3頁
c語言指針習題及答案54902_第4頁
c語言指針習題及答案54902_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

D)k=*ptrl*(*ptr2)DD)&a,&*p,pD)k=*ptrl*(*ptr2)DD)&a,&*p,pA)B)C)D)指針習題及答案一.選擇題變量的指針,其含義是指該變量的B°值B)地址C)名D)一個標志已有定義intk=2:int*ptrl,*ptr2;且ptrl和ptr2均已指向變量k,下面不能正確執(zhí)行的賦值語句是B°k=*ptrl+*ptr2B)ptr2=kC)ptrl=ptr2若有說明:int*p,m二5,n;以下程序段正確的是Dp=&n;B)p=&n;scanf(“%d=&p);scanf(“%dr*p);scaiif("%cT;&D);D)p=&n;*p=n;*p=m;已有變量定義和函數(shù)調(diào)用語句:inta=25;print_value(&a);F面函數(shù)的輸出結(jié)果是TOC\o"1-5"\h\zDovoidprint_value(iiit*x){pnntf(“%d\nn++*x);}23B)24C)25D)26若有說明:int*pl,切2,m二5,n;以下均是正確賦值語句的選項是。pl=&m;p2=&pl;B)pl=&m;p2=&n;*pl=*p2;C)pl=&m;p2=pl;D)pl=&m;*pl=*p2;若有語句:int*p,a二4;和p二&a:下面均代表地址的一組選項是久p盧&aB)&*a,&a,*pC)*&p,*p,&a下面判斷正確的是ochar*a="china”;等價于char*a;*a=”china";charstr[10]={"china”};等價于charstr[10];str[]={"china”;}char*s=nchman;等價于char*s;s=>>chuia>,;charc[4]=nabc,\d[4]="abc";等價于charc[4]=d[4]=”abc”;Co卜?面程序段中,for循環(huán)的執(zhí)行次數(shù)是卜?面程序段中,for循環(huán)的執(zhí)行次數(shù)是chai-*s=>>\ta\O18bc,>;for(;*s?=>\0>;s++)printf(tc*n);A)9B)7卜?面能正確進行字符串賦值操作的是_A)chais[5]={“ABCDE”};C)char*s;s=”ABCDE";F面程序段的運行結(jié)果是charyabcde”;s+=2;pnntf(“%d",s);A)cdeB)字符宅C)字符宅的地址D)不確定設(shè)pl和p2是指向同一個字符串的指針變量,c為字符變量,則以下不能正確執(zhí)行的賦值語句是B°c=*pl+*p2B)p2=cC)pl=p2D)c=*pl*(*p2)設(shè)有程序段:chars[]=”chma”;char*p;p=s;則下面敘述正確的是。s和p完全相同數(shù)組S中的內(nèi)容和指針變量p中的內(nèi)容相等D)5Cchars[5]={<A\>B,/C\5D,/E>};char*s;scanf("%sns);A)12.A)B)s數(shù)組長度和p所指向的字符串長度相等*卩與s[0]相等以下與庫函數(shù)strcpy(char*pl,char*p2)功能不相等的程序段是D。strcpyl(char*pl,char*p2){while((*pI++=*p2++)!=S(T);}strcpy2(chai*pl,chai*p2){wlule((*pl=*p2)!=,\0>){pl++;p2++}}strcpy3(chai*pl,chai*p2){while(*pl-H-=*p2++);}strcpy4(chai*pl,chai*p2){while(*p2)*pl++=*p2-H-;}下面程序段的運行結(jié)果是C°chaia[]-Uanguage^,*p;p=a;wliile(*p!=?uj{pmitf(“%c”,*p?32);p++;}LANGUAGEB)languageC)LANGD)langUAGE以下與庫函數(shù)strcmp(char*s,char*t)功能相等的程序段是C。A)strcmpl(char*s,chai-*t){for(;*s++=*t++;)if(*s==W)return0;return(*s-*t);}strcmp2(char*s、char*t){for(;*s++=*t++;)if(!*s)return0;return(*s-*t);}C)strcmp3(char*s,chai-*t){for(;*t==*s;){if(!*t)return0;t++;s++;}return(*s-*t);}D)strcmp4(char*s、char*t){for(;*s==*t;s++,t++)if(!*s)return0;return(*t-*s);}以下說明不正確的是D。A)chara[10]~;B)chara[10],*p=a;p^^hiiia^;char*a;a-^liiiia^;D)chara[10],*p;p=a="china”;設(shè)有說明語句:chara[]二"Itisminen;char*p二"Itismine";則以下不正確的敘述是Oa+1表示的是字符t的地址p指向另外的字符串時,字符串的長度不受限制

P變量中存放的地址值可以改變a中只能存放10個字符TOC\o"1-5"\h\z19?若已定義ch孔s[10];則在下面表達式中不表示s[l]的地址是一BA)s+1B)s++C)&s[0]+lD)&s[l]若有定義:inta[5],*p二a;則對a數(shù)組元素的正確引用是。A)*&a[5]B)a+2C)*(p+5)D)*(a+2)若有定義:inta[5],*p二a;則對a數(shù)組元素地址的正確引用是D。A)p+5B)*a+lC)&a+lD)&a[0]若有定義:inta[2][3];則對a數(shù)組的第i行第j列元素值的正確引用是A。A)*(*(a+i)+j)B)(a+i)[j]C)*(a+i+j)D)*(a+i)+j若有定義:inta⑵[3];則對a數(shù)組的第i行第j列元素地址的正確引用是—DA)*(a[i]+j)B)(a+i)C)*(a+j)D)a[i]+j若有程序段:inta[2][3],(*p)[3];p二a;則對a數(shù)組元素地址的正確引用是。A)*(p+2)B)p[2]C)p[l]+lD)(p+l)+225?若有程序段:inta[2][3],(*p)[3];pF;則對a數(shù)組元素的正確引用是CA)(p+l)[0]B)*(*(p+2)+l)C)*(p[l]+l)D)p[l]+2若有定義:inta[51;則a數(shù)組中首元素的地址可以表示為C°A)&aB)a+1C)aD)&a[I]若有定義:int(*p)[4];則標識符pC是一個指向整型變量的指針是一個指針數(shù)組名是一個指針,它指向一個含有四個整型元素的一維數(shù)組定義不合法以下與int*q[5];等價的定義語句是。A)mtq[5]B)iiit*qC)mt*(q[習)D)iiit(*q)[5]以下正確的說明語句是。int*b[]={1,3,5,7,9};inta[5],*num[5]={&a[0],&a[l],&a[2],&a[3],&a[4]};c)mta[]={1,3,5,73};int*num[5]={a[0],a[l],a[2],a[3],a[4]};mta[3][4],(*num)[4];num[l]=&a[l][3];若有定義:intb[4][6],*q[4];且0Wi<4,則不正確的賦值語句是DA)q[i]=b[i];B)p=b;C)p=b[i];D)q[i]=&b[0][0]32?若要對a進行自減運算,則a應(yīng)有卞面說明D°B)mtk;cliar*a[3]B)mtk;iiit*a=p;int*a=&k;int*a=b+l;iiit*a=p;int*a=&k;int*a=b+l;33?以卞選項中,對指針變量p的正確操作是BA)iiita[3],*p;

p=&a;inta[5],*p;P=aA)iiita[3],*p;

p=&a;inta[5],*p;P=a;mta[5];iiit*p=a=100;inta[5]iiit*pl/p2=a;*pl=*p2;若有定義:intx[10]={0,1,2,3,4,5,6,7,&9},*pl;則數(shù)值不為3的表達式是CA)x[3]B)pl=x+3廣pl++C)pl=x+2,*(pl++)D)pl=x+2廣卄pl下面程序段的輸出是C。inta[]={2,4,6,&10,12,14,16,18,20,22,24},*q[4],k;for(k=01;k<4;k++)q[k]=&a[k*3];printf(“%dW;q[習[0]);A)8B)16C)20D)輸出不合法TOC\o"1-5"\h\z若要對a進行自增運算,則a應(yīng)具有下面說明。A)mta[3][2];B)chai*a[]={T2”Jab”};C)char(*a)[3]D)intb[10],*a=b;若有定義inta[4][6];則能正確表示a數(shù)組中任一元素a[i][j](i,j均在有效范圍內(nèi))地址的表達式。A)&a[0][0]+6*i+jB)&a[0][0]+4*j+iC)&a[0][0]+4*i+jD)&a[0][0]+6*j+I下面程序的運行結(jié)果是。main(){mtx[5]={2,4,6.8,10},*p,**pp;P=x,pp=&p;prinrf("%d”,*(p++));pnntf(“%3d”,**pp);A)44B)24022D)46若有定義intx[4][3]={l,2,3,4,567,&9,10,ll,12};mt(*p)[3]=x;則能夠正確表示數(shù)組元素TOC\o"1-5"\h\zx[l][2]的表達式是。A)*((*p+l)[2])B)(*p+l)+2C)*(*(p+5))D)*(*(p+l)+2)若有說明:char*language□二{“FORTRANT'EASICVFASCAL'^JAVA”,”。"};則language[2]的值是B。A)一個字符B)一個地址C)一個字符串D)一個不定值設(shè)有定義:char*cc[2]二{“1234”,”5678”};則正確的敘述是。cc數(shù)組的兩個元素中各自存放了字符串”1234”和”5678”的首地址cc數(shù)組的兩個元素分別存放的是含有4個字符的一維字符數(shù)組的首地址cc是指針變量,它指向含有兩個數(shù)組元素的字符型一維數(shù)組cc元素的值分別維”1234”和"5678”TOC\o"1-5"\h\z已有定義int(*p)();指針p可以。A)代表函數(shù)的返回值B)指向函數(shù)的入口地址C)表示函數(shù)的類型D)表示函數(shù)返回值的類型已有函數(shù)max(a,b),為了讓函數(shù)指針變量p指向函數(shù)max,正確的賦值方法是A°A)p=max;B)p=max(a,b);C)*p=max;D)*p=niax(a,b);若有函數(shù)max(a,b),并且已使函數(shù)指針變量p指向函數(shù)max,當調(diào)用該函數(shù)時,正確的調(diào)用方法是C或p(a.b)oA)(*p)max(a,b)B)*pmax(a,b);C)(*p)(a,b);D)*p(a,b);以下正確的敘述是C。C語言允許main函數(shù)帶形參,且形參個數(shù)和形參名均可由用戶指定C語言允許main函數(shù)帶形參,形參名只能是argc和噸v當main函數(shù)帶有形參時,傳給形參的值只能從命令行中得到D)若有說明:intmain(intargc,chai**argv),則argc的值必須衣于1程序閱讀題1?寫出下面程序的運行結(jié)果。5fiinc(char*s,chara,intn){mtj;*s=a;j=n;while(*s<s[j])j--;returnj;}main(){charc[6];iiiti;for(i=l;i<=5;i++)*(c+l)=W+i+l;printf(<<%d\n,\func(c/E\5));}寫出下面程序的運行結(jié)果。6hm(char*s){char*p=s;while(*p)p卄;return(p-s);}main(){char*a="abcdef》;printf(<<%d\if\fun(a));}寫出卜面程序的運行結(jié)果。abcdefglkjihsub(chartljntt2){chaich;wlule(tl<t2){ch=*(a+tl);*(a+tl)=*(a+t2);*(a+t2)=ch;tl++;t2—;}}main(){chais[12];inti;for(1=0;i<12;i++)s[i]=N+i+32;sub(s,7,ll);for(i=0;i<12;i++)priiitf("%c”,s[i]);pnntf(W);}976531當運行以下程序時,寫出輸入6/的程序運行結(jié)果。976531sub(char*a,charb){while;while(*(a-l)<b)*(a--)=*(aT);*(a—)=b;}main(){chars[]=^9753F\c;c=getchai();sub(s,c);puts(s);}寫出下面程序的運行結(jié)果。JavadBaseCLanguagePascalmain(){char*a[]={t<PascaF7,CLanguage,V^dBase,77avan};char(**p)[];intj;P=a+3;fbr(j=3;j>=0;j~)pdntf("%s\iin*(p--));}程序填空題卜?面函數(shù)的功能是從輸入的十個字符串中找出最長的那個串,請?zhí)?2)空使程序完整。voidfiin(charstr[10][81],chai-**sp){mti;*sp=[1str[O]];for(i=l;i<10;i++)if(strlen(*sp)<stilen(str[i]))[2*sp=suTf|];}2?卞面函數(shù)的功能是將一個整數(shù)字符串轉(zhuǎn)換為一個整數(shù),例如:”-123家轉(zhuǎn)換為1234,請?zhí)?3)空使程序完整。iiitchnum(char*p){intnum=O.

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論