第四版C語言試驗(yàn)報(bào)告9指針_第1頁
第四版C語言試驗(yàn)報(bào)告9指針_第2頁
第四版C語言試驗(yàn)報(bào)告9指針_第3頁
第四版C語言試驗(yàn)報(bào)告9指針_第4頁
第四版C語言試驗(yàn)報(bào)告9指針_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

仲愷農(nóng)業(yè)工程學(xué)院實(shí)驗(yàn)報(bào)告紙計(jì)算機(jī)科學(xué)與工程(院)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)計(jì)111班1組C語言程序設(shè)計(jì)課學(xué)號(hào)201110214113姓名廖兆偉 實(shí)驗(yàn)日期2012-3-29 教師評定實(shí)驗(yàn)9指針(一).實(shí)驗(yàn)?zāi)康模?)掌握指針的間接訪問的概念,會(huì)定義和使用指針變量。(2)能正確使用數(shù)組的指針和指向數(shù)組的指針變量。(3)能正確使用字符串的指針和指向字符串的指針變量。.實(shí)驗(yàn)內(nèi)容編程序并上機(jī)調(diào)試運(yùn)行以下程序(都要求用指針處理。(1)輸入3個(gè)整數(shù),按由小到大的順序輸出,然后將程序改為:輸入3個(gè)字符串,按由小到大順序輸出(本題是教材第8章習(xí)題8.1和習(xí)題8.2)。①先編寫一個(gè)程序,以處理3個(gè)整數(shù),按由小到大的順序輸出。運(yùn)行此程序,分析結(jié)果。②把程序改為能處理輸入3個(gè)字符串,按由小到大的順序輸出。運(yùn)行此程序,分析結(jié)果。請輸入3行字符二Istudyverylia.i'd.ClanguasreisveryinterestingHexs學(xué)professFor-排序結(jié)果肘:Cla.nguag-eis:veryinterestincjHeisap1*oFess£oi'_Istudyveryliai'd.③比較以上兩個(gè)程序,分析處理整數(shù)與處理字符串有什么不同?例如:怎樣得到指向整數(shù)(或字符串)的指針怎樣比較兩個(gè)整數(shù)(或字符串)的大小怎樣交換兩個(gè)整數(shù)(或字符串)程序設(shè)計(jì):#include<stdio.h>intmain(){voidswap(int*p1,int*p2);intn1,n2,n3;int*p1,*p2,*p3;printf("請輸入3個(gè)數(shù)n1,n2,n3:");scanf("%d,%d,%d",&n1,&n2,&n3);p1=&n1;p2=&n2;p3=&n3;if(n1>n2)swap(p1,p2);if(n1>n3)swap(p1,p3);if(n2>n3)swap(p2,p3);printf("排序結(jié)果為:%d,%d,%d\n",n1,n2,n3);return0;voidswap(int*p1,int*p2){intp;p=*p1;*p1=*p2;*p2=p;)(2)將一個(gè)3x3的整型二維數(shù)組轉(zhuǎn)置,用一函數(shù)實(shí)現(xiàn)之(本題是教材第8章習(xí)題8.9)在主函數(shù)中用scanf函數(shù)輸入以下數(shù)組元素:13579 11131519將數(shù)組第1行第1列元素的地址作為函數(shù)實(shí)參,在執(zhí)行函數(shù)的過程中實(shí)現(xiàn)行列互換,函數(shù)調(diào)用結(jié)束后在主函數(shù)中輸出已轉(zhuǎn)置的二維數(shù)組。請思考:①指向二維數(shù)組的指針,指向某一行的指針、指向某一元素的指針各應(yīng)該怎樣表示。育輸入——個(gè)3X3教多且=L35?9:L:LL3傳量數(shù)組為=L7X33rX5工 =L9②怎樣表示i行j列元素及其地址。程序設(shè)計(jì)#include<stdio.h>intmain(){voidmove(int*pointer);inta[3][3],*p,i,j;printf("請輸入一個(gè)3x3數(shù)組:\n");for(i=0;i<3;i++)scanf("%d%d%d",&a[i][0],&a[i][1],&a[i][2]);p=&a[0][0];move(p);printf("轉(zhuǎn)置數(shù)組為:\n");for(i=0;i<3;i++)printf("%d%d%d\n",a[i][0],a[i][1],a[i][2]);return0;)voidmove(int*pointer){inti,j,t;for(i=0;i<3;i++)for(j=i;j<3;j++){t=*(pointer+3*i+j);*(pointer+3*i+j)=*(pointer+3*j+i);*(pointer+3*j+i)=t;))(3)將n個(gè)數(shù)按輸入時(shí)順序的逆序排列,用函數(shù)實(shí)現(xiàn)(本題是教材第8章習(xí)題8.13)。①在調(diào)用函數(shù)時(shí)用數(shù)組名作為函數(shù)實(shí)參。②函數(shù)實(shí)參改為用指向數(shù)組首元素的指針,形參不變。③分析以上兩者的異同。(4)寫一函數(shù),求一個(gè)字符串的長度。在main函數(shù)中輸入字符串,并輸出其長度(本題是教材第8章習(xí)題8.6)。分別在程序中按以下兩種情況處理。①函數(shù)形參用指針變量。②函數(shù)形參用數(shù)組名。作分析比較,掌握其規(guī)律。請輸入一個(gè)字符串工China該字符串長度為S.Presswnukeytocontinue程序設(shè)計(jì):#include<stdio.h>intmain(){intlength(char*p);intlen;charstr[20];printf("請輸入一個(gè)字符串:\n");scanf("%s",str);len=length(str);printf("該字符串長度為%d

溫馨提示

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

最新文檔

評論

0/150

提交評論