版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
《C++指針》習題學號姓名一、選擇題1、有定義如下:inta[5],*p;則下列描述錯誤的是A.表達式p=p+1是合法的B.表達式a=a+1是合法的C.表達式p-a是合法的D.表達式a+2是合法的2、函數(shù)定義為Fun(int&i),變量定義n=100,則下面調(diào)用該函數(shù)正確的是CFun(20)B.Fun(20+n)C.Fun(n)D.Fun(&n)3、若有說明intI,j=2,*p=&i;則能完成i=j賦值功能的語句是A.i=*p;B.*p=*&j;C.i=&j;D.i=**p;4、設(shè)已有定義char*st="howareyou";下列程序中正確的是chara[11],*p;strcpy(p=a+1,&st[4]);chara[11];strcpy(++a,st);chara[11];strcpy(a,st);chara[],*p;strcpy(p=a[1],st+2);5、設(shè)有數(shù)組intarray[3][4],下列引用數(shù)組元素的方法中錯誤的是A.array[i][j]B.*(*(array+i)+j)C.*(array[i]+j)D.*(array+i*4+j)6、有定義ints[4]⑸,(*ps”5];ps=s;則對數(shù)組s中元素引用的正確的是__CA.ps+1B.*(ps+3)C.ps[0][2]D.*(ps+1)+37、設(shè)有說明intb[4][4],以下不能等價表示元素b[3]⑶的是:BA.*&b[3][3]B.(*(*(b+3))+3)C.*(b[3]+3)D.*(*(b+3)+3)8、若有說明"char*s[]={"234","5678","9012","3456","7890"};",則表達式*s[1]>*s[3]比較的是A."1234"和"9012"B.'5'和'3'C.T和9D."5678"和"3456"9、設(shè)語句"char*s[]={"Student","Teacher","Father","Mother"},*ps=s[2];"執(zhí)行語句"cout<<*s[1]<<','<<ps<<','<<*ps<<'\n';",則輸出結(jié)果是_AA.T,Father,FB.Teacher,F,FatherC.Teacher,Father,FatherD.語法錯無輸出10、設(shè)有以下說明語句:charsl[20]="hello",s2[20]="china";constchar*ptr=s1;以下語句中不符合C++語法規(guī)則的語句是DA.strcpy(s2,ptr);B.ptr=s2;C.ptr=ptr+4;D.*ptr=*s2;11、設(shè)s和t分別為指向兩個長度相同的字符數(shù)組的指針,則循環(huán)語句while();可以正確實現(xiàn)字符串t到s的完整復制功能。A.*s=*t&&*t!=OB.s++=t++&&*t!=0C.*s++=*t++D.*(++s)=*(++t)12、設(shè)有說明:chars1[10],*s2=s1;則以下正確的語句是A.s1[]=”computer”B.s1[10]=”computer”C.s2=”computer”D.*s2=”computer”13、設(shè)有說明:inta[][4]={1,2,3,4,5,6,7,8,9,10},*p=*(a+1);以下可得數(shù)值為9的表達式是BA.p+=3,*p++B.p+=4,*(p++)C.p+=4,*++pD.p+=4,++*p14、設(shè)有說明:inta[4][4]={1,2,3,4,5,6,7,8,9,10},*p=a[1],(*q)[4]=a;則以下不能訪問數(shù)值為7的數(shù)組元素的表達式是_AA.*(a+1)+2B.p[2]C.*(a[1]+2)D.q[1][2]二、填空題1、在如下定義中floata[]={100,200,300};float*p[]={&a[0],&a[1],&a[2]};語句cout?*p[2]的輸出是3002、若有說明語句char*name="newspaper";則coutvvname+2的輸出是wspaper,cout<<*(name+3)的輸出是。3、inta[5]={100,200,300,400,500},*p1=&a[0];則表達式(*p1)++的值是100。4、有如下定義中char*str[]={“Followme”,“BASIC”,“GreatWall”,“Department”}中輸出”BASIC”字符串的語句是:cout<<str[1]5、執(zhí)行以下語句:inta[5]={25,14,27,18},*p=a;(*p)++;則*p的值為26,再執(zhí)行語句:*p++;貝V*p的值為6、設(shè)有說明語句chars[]="123\t456\00089",*p=s;執(zhí)行以下兩個語句:coutvv*(p+5)vv'\n';coutvv(p+5)vv'\n';則輸出為5和56。7、設(shè)有如下函數(shù)定義。如果在主函數(shù)中有語句coutvvf(“goodbye!”);則輸出9intf(char*s){char*p=s;while(*p++);return(p—s);}8、執(zhí)行以下程序后,y的值是10intmain(){inta[4]={2,4,6};inty=0,*p=a;for(;*p++;)if(*p)y+=*p;cout<<y<<endl;}9、三、程序閱讀題1、寫出如下程序的運行結(jié)果。chars[]="abcdefgh",*p=s;p+=3;cout<<strlen(strcpy(p,"ABCD"))<<endl;//4cout<<s<<endl;//abcABCD
2、寫出如下程序的運行結(jié)果。char*p="abcdefgh",*r;long*q=(long*)p;q++;r=(char*)q;cout<<r<<endl;//efgh3、寫出如下程序的運行結(jié)果。voidsub(intx,inty,int*z){*z=y-x;}intmain(){inta,b,c;sub(10,5,&a);sub(7,a,&b);//-5-12-7sub(a,b,&c);cout<<a<<'\t'<<b<<'\t'<<c<<endl;return0;//-5-12-7}4、寫出如下程序的運行結(jié)果。voidss(char*s,chart){while(*s){if(*s==t)*s=t-'a'+'A';s++;}}intmain(){charstr1[100]="abcddfefdbd",c='d';ss(str1,c);cout<<str1<<endl;//abcDDfefDbDreturn0;}5、voidswap(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p;cout<<*p1<<'\t'<<*p2<<endl;}intmain(void){inta=5,b=9;swap(&a,&b);cout<<a<<'\t'<<b<<endl;return0;}程序第一行輸出95,第二行輸出596、voidexchange(int*x,int*y){inttemp;temp=*x;*x=*y;*y=temp;}voidmain(void){intdata[8]={15,12,20,0,8,-5,17,1};for(inti=0;i<=7;i++){for(intj=i;j<=7;j++){if(data[i]>data[j])exchange(&data[i],&data[j]);}cout<<data[i]<<endl;}}函數(shù)exchange的作用是:交換指針變量指向的數(shù),&data[i]表示的是:data[i]的地址,程序的輸出結(jié)果是:-5018121517207、寫出如下程序的輸出結(jié)果voidinvert(char*a,intx,inty){chart,*p,*q;p=a+x;q=a+y;while(p<q){t=*p;*p=*q;*q=t;p++;q--;}}intmain(){chardt[13]="GoodBookNice";inti=0,n=1;while(i<8){invert(dt,i,i+5);coutvv"第"<<n++vv"次計算:"<<endl;for(intj=i;j<=i+5;j++)cout<<dt[j]<<',';cout<<endl;i+=6;}coutvv"共執(zhí)行了"vvivv"次計算。"<<endl;return0;}第1次計算:o,B,d,o,o,G,第2次計算:e,c,i,N,k,o,共執(zhí)行了12次計算8、寫出如下程序的運行結(jié)果。charch[2][5]={"6934","8254"};char*p[2];inti,j,s=0;for(i=0;iv2;i++)p[i]=ch[i];for(i=0;iv2;i++)for(j=0;p[i][j]>'0'&&p[i][j]v='9';j+=2)s+=10*(p[i][j]-'0');coutvvs;//2209、寫出如下程序的運行結(jié)果。intsum(intp[],int*w,intn){inti;ints=0,m=0;for(i=0;ivn;i++){s+=p[i];if(p[i]>m){m=p[i];*w=i;}}returns;}intmain(){intaa[3][3]={2,4,8,7,5,3,2,6,9};introw[3],col[3]={0,0,0};
for(inti=0;i<3;i++){row[i]=sum(aa[i],col+i,3);cout<<"row("<<i<<")="<<row[i]<<endl;}for(i=1;i<3;i++){coutvv"第"vvivv"行位置:"vvcol[i]vvendl;}return0;}row(0)=14row(1)=15row(2)=17第1行位置:0第2行位置:210、寫出如下程序的運行結(jié)果。doublefl(doublex){returnx+x;}doublef2(double(*f)(doublex),inta){intx;doublesum=0;for(x=a;x<=a+1;x++)sum+=f(x)*f(x);returnsum;}intmain().,.,如果去掉A行的continuedoublesum;for(inti=1;i<5;i++){sum=f2(fl,i);cout<<sum<<endl;}}205210016411、以下程序運行后,輸出是332語句,則輸出343char*s="121";intk=0,a=0,b=0;do{k++;if(k%2==0){a+=s[k]-'0';continue;}//Aif(s[k]){b+=s[k]-'0';a+=s[k]-'0';}}while(s[k]);cout<<k<<'\t'<<a<<'\t'<<b<<'\n';四、程序填空題1、下面程序的功能是:主函數(shù)定義了一個整型數(shù)組data,從鍵盤上輸入一個數(shù)x,調(diào)用函數(shù)fsum()斷該數(shù)x是否在數(shù)組data中。如果x在數(shù)組中,則得到x在data中第一次出現(xiàn)時的下標值p,同時求出下標從0到P之間所有元素之和,函數(shù)返回x的下標值p;否則,x不在數(shù)組中,函數(shù)fsum()返回-1,主函數(shù)提示相應信息。主函數(shù)輸出計算結(jié)果。請完善程序。#include<iostream>usingnamespacestd;intfs(int*a,intn,intx,int&sum){sum=0;for(inti=0;i<n;i++){sum=sum+a[i];if(x==a[i])returni;}return-1;}intmain(){intdata[]={12,31,16,28,7,29,35,18,40};intx,s,index;coutvv"請輸入要找的數(shù):";cin>>x;index=fs();if()coutvvxvv"不在數(shù)組中"<<endl;else{coutvvxvv"是數(shù)組中下標為"vvindexvv"的元素。";coutvv"數(shù)組中前"vvindexvv"項之和為:"vvsvvendl;}return0;2、下面程序的功能是:從輸入的一行字符串中求出最長英文單詞長度及最長單詞個數(shù),并輸出長度和個數(shù),單詞之間只能用一個或多個空格隔開。如輸入字符串”amastudent"時,最長單詞的長度為7,個數(shù)為1。而輸入字符串"wordbodybooktry”時,最長單詞的長度為4,個數(shù)為3,即有三個單詞均為最長單詞。#include<>intlenofLongest(char*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)業(yè)生態(tài)公園綠化景觀施工監(jiān)理合同4篇
- 2025年度冷鏈食品加工基地1#生產(chǎn)線冷鏈食品冷鏈配送服務合同4篇
- 二零二五版美術(shù)館東館館舍租賃消防安全管理合同3篇
- 二零二五年度模特形象代言人合同
- 二零二五年度互聯(lián)網(wǎng)數(shù)據(jù)中心運維人員聘用合同范本4篇
- 二零二五年度安置房買賣合同集錦:安置房維修基金管理規(guī)范3篇
- 二零二五年度應急救援駕駛員聘用合同4篇
- 二零二五年度儲煤場租賃及煤炭倉儲設(shè)施租賃與維護合同4篇
- 案例1-西南航空公司的核心競爭力
- 二零二五版農(nóng)業(yè)種植項目科技培訓與人才培養(yǎng)合同4篇
- (完整版)高考英語詞匯3500詞(精校版)
- 我的家鄉(xiāng)瓊海
- (2025)專業(yè)技術(shù)人員繼續(xù)教育公需課題庫(附含答案)
- 《互聯(lián)網(wǎng)現(xiàn)狀和發(fā)展》課件
- 【MOOC】計算機組成原理-電子科技大學 中國大學慕課MOOC答案
- 2024年上海健康醫(yī)學院單招職業(yè)適應性測試題庫及答案解析
- 2024年湖北省武漢市中考語文適應性試卷
- 2024-2025學年廣東省大灣區(qū)40校高二上學期聯(lián)考英語試題(含解析)
- 非新生兒破傷風診療規(guī)范(2024年版)解讀
- 2024-2030年電炒鍋項目融資商業(yè)計劃書
- EDIFIER漫步者S880使用說明書
評論
0/150
提交評論