程序設(shè)計(jì)實(shí)踐實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)指針進(jìn)階_第1頁
程序設(shè)計(jì)實(shí)踐實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)指針進(jìn)階_第2頁
程序設(shè)計(jì)實(shí)踐實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)指針進(jìn)階_第3頁
程序設(shè)計(jì)實(shí)踐實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)指針進(jìn)階_第4頁
程序設(shè)計(jì)實(shí)踐實(shí)驗(yàn)指導(dǎo)書實(shí)驗(yàn)指針進(jìn)階_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、河南工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告課程名稱:程序設(shè)計(jì)實(shí)踐 開課實(shí)驗(yàn)室:專業(yè)班級計(jì)科1506學(xué)號201516010605姓名王智宇實(shí)驗(yàn)項(xiàng)目名稱實(shí)驗(yàn)3:指針進(jìn)階實(shí)驗(yàn)日期2016-3-30成績評定教師簽名:日 期:一、 實(shí)驗(yàn)?zāi)康模?. 理解指針數(shù)組的概念,掌握指針數(shù)組的基本應(yīng)用和編程方法。2. 掌握單向鏈表的概念和建立方法。3. 掌握單向鏈表的基本操作。二、實(shí)驗(yàn)環(huán)境:1. 運(yùn)行Window XP/Windows 7/Windows 8等的操作系統(tǒng)的PC機(jī);2. VC+6.0,CodeBlocks,或Dev C+等編譯環(huán)境。三、實(shí)驗(yàn)內(nèi)容: 1.編寫程序,輸入一個月份,輸出對應(yīng)的英文名稱,要求用指針數(shù)組表示12個月的

2、英文名稱。輸入輸出示例:5May 【源程序】#include#include int main() int num; scanf(%d,&num); getchar(); char *month12=January,February,March,April,May,June,July,August,September,October,Novermber,December; printf(%sn,monthnum-1); return 0;【運(yùn)行結(jié)果】8AugustProcess returned 0 (0x0) execution time : 2.466 sPress any key to

3、continue.2. 定義一個指針數(shù)組將下表的星期信息組織起來,輸入一個字符串,在表中查找,若存在,輸出該字符串在表中的序號,否則輸入-1。SundayMondayTuesdayWednesdayThursdayFridaySaturday輸入輸出示例:Tuesday3【源程序】#include#include #include int main() char *month12=January,February,March,April,May,June,July,August,September,October,Novermber,December; char mnum10; scanf(%

4、s,&mnum); getchar(); int i=0; for(i=0;i12;i+) if(strcmp(mnum,monthi) printf(%dn,i+1); return 0; return 0;【運(yùn)行結(jié)果】Junuary1Process returned 0 (0x0) execution time : 5.130 sPress any key to continue.3. 編寫程序,輸入n(n10)個字符,輸出其中最長字符串的有效長度。要求自定義函數(shù)int max_len(char *s , int n),用于計(jì)算有n個元素的指針數(shù)組n中最長的字符串的長度。輸入輸出示例:n=

5、4blueyellowredgreen6【源程序】#include #include #include int max_len(char *s ,int n);int main() int i,n,t; printf(n=); scanf(%d,&n); getchar(); char *numn,str80; for(i=0;in;i+) gets(str); numi=(char*)malloc(sizeof(char)*(strlen(str)+1); strcpy(numi,str); t=max_len(num,n); printf(%d,t); return 0;int max_l

6、en(char *s,int n) int i,t,max=0; for(i=0;in;i+) t=strlen(si); if(maxt) max=t; return max;【運(yùn)行結(jié)果】n=5sdsdsdsdsdddddddddddddd8Process returned 0 (0x0) execution time : 8.274 sPress any key to continue.g4. 輸入若干個學(xué)生信息(包括學(xué)號、姓名和成績),輸入學(xué)號為0時(shí)輸入結(jié)束,建立一個單向鏈表,再輸入一個成績值,將成績大于等于該值的學(xué)生信息輸出。輸入輸出示例:1Zhang782Wang803Li754Zh

7、ao85000802Wang804Zhao85【源程序】#include #include #include typedef struct node int num; char name20; int score; struct node *next;LNode, *LinkList;void CreateList(LinkList head) LinkList p,rear=head; int num; char temp20; int tmp; while(scanf(%d %s %d,&num ,&temp,&tmp),num!=0) p=(LinkList)malloc(sizeof(

8、LNode); p-num=num; strcpy(p-name,temp); p-score=tmp; rear-next=p; rear=p; rear-next=NULL;void printList(LinkList head,int n) LinkList p=head-next; while(p) if(p-score=n) printf(%d %s %dn,p-num,p-name,p-score); p=p-next; int main() int n; LNode mark; LinkList head; head=(LinkList)malloc(sizeof(LNode)

9、; head-next=NULL; CreateList(head); scanf(%d,&n); printList(head,n); return 0;【運(yùn)行結(jié)果】1 zhang 782 wang 983 ji 874 killer 785 kim 830 0 0802 wang 983 ji 875 kim 83Process returned 0 (0x0) execution time : 71.387 sPress any key to continue.5. 輸入若干個正整數(shù)(輸入-1為結(jié)束標(biāo)志),要求按輸入數(shù)據(jù)的逆序建立一個鏈表,并輸出。輸入輸出示例:1234567-17654

10、321【源程序】#include #include #include typedef struct node int num; struct node *next;LNode, *LinkList;void CreateList(LinkList head) LinkList p,rear=head; int num; while(scanf(%d,&num),num!=-1) p=(LinkList)malloc(sizeof(LNode); p-num=num; rear-next=p; rear=p; rear-next=NULL;void printList(LinkList head

11、) int temp; LinkList p=head-next,j; while(p) j=p-next; while(j) if(p-numnum) temp=p-num; p-num=j-num; j-num=temp; j=j-next; p=p-next; p=head-next; while(p) printf(%d ,p-num); p=p-next; int main() int n; LNode mark; LinkList head; head=(LinkList)malloc(sizeof(LNode); head-next=NULL; CreateList(head); printList(head); free(head); return 0;【運(yùn)行結(jié)果】1 2 3 4 44 55 33 23 42 45 -155 45 44 42 33 23 4 3 2 1Process returned 0 (0x0) exec

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論