/*順序數(shù)組的練習(xí)*/ #include?<stdio.h> #include?<malloc.h> #include?<stdlib.h> //定義一個結(jié)構(gòu)體數(shù)組變量 typedef?struct{ int?*?pBase;??//定義一個指針變量,指向數(shù)組 int?cnt;?????//定義一個×××變量表示當(dāng)前數(shù)組的有效元素個數(shù) int?length;??//定義數(shù)組的長度 }Arr; void?init_Arr(Arr?*?pArr,int?length);??//初始化數(shù)組 void?show_Arr(Arr?*?pArr);??//數(shù)組顯示 bool?is_empty(Arr?*?pArr);??//判斷數(shù)組是否為空 bool?append(Arr?*?pArr,int?val);??//向數(shù)組中追加元素 bool?is_full(Arr?*?pArr);??//判斷數(shù)組是否已滿 bool?insert(Arr?*?pArr,int?inval,int?index);??//向數(shù)組中插入數(shù)值 //主函數(shù)入口 void?main(){ Arr?arr;?//定義一個Arr類型的結(jié)構(gòu)體變量arr,在內(nèi)存空間中申請一塊空間給數(shù)組使用 init_Arr(&arr,6); append(&arr,3); append(&arr,8); append(&arr,4); printf("目前數(shù)組中有%d個元素\n",arr.cnt); if(insert(&arr,3,2)){ printf("插入值成功\n"); }else{ printf("插入值失敗\n"); } show_Arr(&arr); } void?init_Arr(Arr?*?pArr,int?length){ pArr->pBase=(int?*)malloc(sizeof(int)?*?length); if(NULL==pArr->pBase){ printf("給數(shù)組分配空間失敗."); exit(-1); } else{ pArr->length?=?length; pArr->cnt?=?0; } } void?show_Arr(Arr?*?pArr){ if(is_empty(pArr)){ printf("數(shù)組為空.\n"); } else{ for(int?i=0;i<pArr->cnt;i++){ printf("%d?",pArr->pBase[i]); } printf("\n"); } } bool?is_empty(Arr?*?pArr){ if(pArr->cnt==0){ return?true; } else{ return?false; } } bool?append(Arr?*?pArr,int?val){ if(is_full(pArr)){ return?false; } else{ pArr->pBase[pArr->cnt]?=?val; (pArr->cnt)++; return?true; } } bool?is_full(Arr?*?pArr){ if(pArr->cnt==pArr->length){ return?true; } else{ return?false; } } bool?insert(Arr?*?pArr,int?inval,int?index){ if(is_full(pArr)){ return?false; } if(index<0?||?index>pArr->length){ return?false; } else{ for(int?j=pArr->cnt;j>index;j--){ pArr->pBase[j]=pArr->pBase[j-1]; } pArr->pBase[index]=inval; (pArr->cnt)++; return?true; } }
運行結(jié)果如下
創(chuàng)新互聯(lián)主營撫遠(yuǎn)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app軟件開發(fā),撫遠(yuǎn)h5小程序設(shè)計搭建,撫遠(yuǎn)網(wǎng)站營銷推廣歡迎撫遠(yuǎn)等地區(qū)企業(yè)咨詢
名稱欄目:順序數(shù)組的練習(xí)
標(biāo)題URL:http://vcdvsql.cn/article42/jhejec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、網(wǎng)站導(dǎo)航、面包屑導(dǎo)航、小程序開發(fā)、ChatGPT、手機網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)