C語言實(shí)驗(yàn)八指針程序設(shè)計(jì)答案_第1頁
C語言實(shí)驗(yàn)八指針程序設(shè)計(jì)答案_第2頁
C語言實(shí)驗(yàn)八指針程序設(shè)計(jì)答案_第3頁
C語言實(shí)驗(yàn)八指針程序設(shè)計(jì)答案_第4頁
C語言實(shí)驗(yàn)八指針程序設(shè)計(jì)答案_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)驗(yàn)八指針的應(yīng)用一、實(shí)驗(yàn)?zāi)康?掌握指針變量的定義和引用。2掌握指針與變量的程序設(shè)計(jì)方法3掌握指針與數(shù)組的程序設(shè)計(jì)方法4掌握指針與字符串的程序設(shè)計(jì)方法5掌握指針與函數(shù)的程序設(shè)計(jì)方法二、實(shí)驗(yàn)內(nèi)容1目的訪問變量的地址。題目內(nèi)容已知,chara;intx;floatp,q;而且a=A;乂=125用=10.25月=18.75;編寫程序顯示變量a,x,p,q的值及其地址。輸入無輸出變量a,x,p,q的值及其地址提示使用運(yùn)算符&,地址輸出采用口格式(因?yàn)閮?nèi)存地址是無符號的整數(shù))。#includevoidmain()chara;intx;floatp,q;a=A;x=125;p=10.25;q=18.75;p

2、rintf(%cisstoredataddr%u.n,a,&a);printf(%disstoredataddr%u.n,x,&x);printf(%fisstoredataddr%u.n,p,&p);printf(%fisstoredataddr%u.n,q,&q);Aisstoredataddr1245052.125isstoredataddr1245048.10.250000isstoredataddr1245044.18.750000isstoredataddr1245040.Pressanykeytocontinue2目的通過指針訪問變量。題目內(nèi)容已知,intx,y;int*ptr;

3、而且x=10;ptr=&x;y=*ptr;,運(yùn)行下歹1程序,使用運(yùn)算符*來訪問指針?biāo)傅闹?。輸入無輸出x,&x、*&x,&x、*ptr,ptr、y,&*ptr、ptr,&ptr、y,&y。提示地址輸出采用口格式#includevoidmain()intx,y;int*ptr;x=10;ptr=&x;y=*ptr;printf(%disstoredataddr%u.n,x,&x);printf(%disstoredataddr%u.n,*&x,&x);printf(%disstoredataddr%u.n,*ptr,ptr);printf(%disstoredataddr%u.n,y,&*ptr

4、);printf(%disstoredataddr%u.n,ptr,&ptr);printf(%disstoredataddr%u.n,y,&y);*ptr=25;printf(nNowx=%dn,x);3目的練習(xí)指針表達(dá)式。題目內(nèi)容已知,intx,y,a,b;int*ptr1,*ptr2;而且x=12;y=4;ptr=&x;ptr2=&y;,編寫程序,當(dāng)執(zhí)行表達(dá)式:a=*ptr1*ptr2-6以及:b=(4*(-*ptr2)/(*ptr1)+10;后,各變量的值分別為多少?輸入無輸出各變量的值。提示地址輸出采用口格式#includevoidmain()intx,y,a,b;int*ptr1,

5、*ptr2;x=12;y=4;ptr1=&x;ptr2=&y;a=*ptr1*ptr2-6;b=(4*(-*ptr2)/(*ptr1)+10;printf(%disstoredataddr%u.n,x,&x);printf(%disstoredataddr%u.n,y,&y);printf(%disstoredataddr%u.n,*ptr1,ptr1);printf(%disstoredataddr%u.n,*ptr2,ptr2);printf(a=%dn,a);printf(b=%dn,b);使用指針來計(jì)4目的指針與數(shù)組使用指針來計(jì)題目內(nèi)容已知,int*p,sum,i;intx5=5,9,

6、6,3,7;,編寫程序算數(shù)組中所有元素的總和。輸入無輸出ElementValueAddressx051245024x191245028x261245032x331245036x471245040sum=30提示關(guān)鍵語句:sum=sum+*p;以及p+;#includevoidmain()int*p,sum=0,i;intx5=5,9,6,3,7;p=x;printf(ElementValueAddressnn);for(i=0;i5;i+)printf(x%d%d%un,i,*p,p);printf(x%d%d%un,i,*p,p);sum=sum+*p;p+;printf(sum=%dn,s

7、um);5目的指針與數(shù)組題目內(nèi)容編寫一個函數(shù),用于對作為參數(shù)的數(shù)組中的元素求平均值,函數(shù)以指針方式進(jìn)行處理。平均值為函數(shù)的返回值。輸入10個實(shí)數(shù)輸出平均值提示函數(shù)原型floataverage(intx,intn);關(guān)鍵語句:float*p;p=x;for(i=0;in;i+,p+)sum=sum+*p;#includevoidmain()floataverage(floatx,intn);inti;floata10,ave;printf(Enter10numbers:);for(i=0;i10;i+)scanf(%f,&ai);ave=average(a,10);printf(ave=%fn,

8、ave);floataverage(floatx,intn)floatave1,sum=0.0;inti;float*p;p=x;for(i=0;in;i+,p+)sum=sum+*p;ave1=sum/n;returnave1;6目的指針與字符串題目內(nèi)容已知,charname20=DELHIk;intlength;char*cptr=name;,編寫程序,使用指針來確定字符串的長度。輸入無輸出字符串的長度提示關(guān)鍵語句:while(*cptr!=0)cptr+;length=cptr-name;先將指針定位于字符串開始處,利用循環(huán)結(jié)構(gòu)將指針移動到字符串尾部,length=cptr-name;即

9、為字符串長度。#includevoidmain()charname20=DELHIk;intlength;char*cptr=name;printf(%sn,name);while(*cptr!=0)printf(%c%un,*cptr,cptr);cptr+;length=cptr-name;printf(length=%dn,length);7目的指針與函數(shù)題目內(nèi)容使用指針作函數(shù)參數(shù),編寫用于交換兩個參數(shù)值的函數(shù)。調(diào)用該函數(shù)用于對從鍵盤輸入的兩個整數(shù)進(jìn)行交換。輸入x=100,y=200輸出x=200,y=100提示用于交換兩個參數(shù)值的函數(shù)原型為:exchange(int*a,int*b);

10、#includevoidmain()voidexchange(int*a,int*b);intx,y;printf(Entertwointegers:);scanf(%d%d,&x,&y);printf(x=%dy=%dn,x,y);exchange(&x,&y);printf(x=%dy=%dn,x,y);voidexchange(int*a,int*b)intt;t=*a;*a=*b;*b=t;8目的函數(shù)返回指針題目內(nèi)容有函數(shù):int*larger(int*a,int*b)if(*a*b)returna;elsereturnb;和主函數(shù):#includevoidmain()int*larg

11、er(int*a,int*b);intx=10,y=20;int*p;p=larger(&x,&y);printf(%dn,*p);運(yùn)行程序,給出運(yùn)行結(jié)果,并說明此程序的功能。9目的指針綜合應(yīng)用題目內(nèi)容假設(shè)已有函數(shù):voidswap(int*p1,int*p2)inttemp;temp=*p1;*p1=*p2;*p2=temp;編寫程序,輸入3個整數(shù),調(diào)用swap函數(shù),完成將3個整數(shù)按從小到大順序輸出的功能。輸入3個數(shù)輸出從小到大順序輸出提示關(guān)鍵語句:if(ab)swap(p1,p2);if(ac)swap(p1,p3);if(bc)swap(p2,p3);#includevoidmain()voidswap(int*p1,int*p2);inta,b,c;int*p1,*p2,*p3;printf(Enter3number

溫馨提示

  • 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

提交評論