閱讀下列程序說(shuō)明,將在空缺處填入正確的內(nèi)容。
【程序說(shuō)明】
定義一個(gè)多邊形結(jié)構(gòu):struct polygon實(shí)現(xiàn)以下內(nèi)容: (1) 建立該結(jié)構(gòu)的鏈表:create函數(shù)是創(chuàng)建鏈表,每輸入一個(gè)結(jié)點(diǎn)的數(shù)據(jù),就把該結(jié)點(diǎn)加入到鏈表當(dāng)中,它返回創(chuàng)建的鏈表的頭指針。 (2) 顯示鏈表的各個(gè)結(jié)點(diǎn)數(shù)據(jù):結(jié)點(diǎn)數(shù)據(jù)包括:多邊形頂點(diǎn)數(shù)、各頂點(diǎn)的縱橫坐標(biāo)、當(dāng)多邊形頂點(diǎn)數(shù)為0時(shí),鏈表創(chuàng)建結(jié)束。 (3) 編寫一個(gè)函數(shù)disp,刪除鏈表中的所有結(jié)點(diǎn)。需要注意的是:要先釋放結(jié)點(diǎn)數(shù)據(jù)內(nèi)存,再刪除結(jié)點(diǎn),如果在釋放結(jié)點(diǎn)數(shù)據(jù)內(nèi)存單元之前刪除結(jié)點(diǎn),則無(wú)法找到結(jié)點(diǎn)數(shù)據(jù)內(nèi)存單元的地址,也就無(wú)法釋放數(shù)據(jù)的內(nèi)存單元。
【程序】
#include"iostream.h"
#include"iomanip.h"
struct polygon
{
int n;
int *x;
int *y;
polygon *next;
};
void Push(polygon*& head,int n)
{
polygon*newNode=new polygon;
newNode=new polygon;
newNode->next= (1) ;
newNode->x=new int[n];newNode->y=new int[n];newNode->n= (2) ;
for(int i=0;i<= (3) ;i++){
cout<<"請(qǐng)輸入多邊形各頂點(diǎn)x、y坐標(biāo),坐標(biāo)值之間用空格分隔:";
cin>>newNode->x[i]>>newNode->y[i];}
(4) =head;// 在head前不需要額外的*
head=newNode;
}
polygon *create()
{
polygon*head=NULL;
polygon*tail;
int n;
cout<<"請(qǐng)輸入多邊形頂點(diǎn)的個(gè)數(shù)(頂點(diǎn)個(gè)數(shù)為0時(shí)結(jié)束):";
cin>>n;
if(n==0)return (5) ;
Push(head, (6) ;
tail=head;
cout<<"請(qǐng)輸入多邊形頂點(diǎn)的個(gè)數(shù)(頂點(diǎn)個(gè)數(shù)為0時(shí)結(jié)束):";
cin>>n;
while(n!=0)
{
Push(tail->next, (7) ;//在tail->next增加結(jié)點(diǎn)
tail=tail->next;//advance tail to point to last node
cout<<"請(qǐng)輸入多邊形頂點(diǎn)的個(gè)數(shù)(頂點(diǎn)個(gè)數(shù)為0時(shí)結(jié)束):";
cin>>n;
}
return head;
}
void disp(polygon*head)
{
int i,No=1;
cout<
while(head!=NULL)
{
cout<<"第"<
for(i=0;i<=head->n-1;i++)
cout (8) ; head= (9) ; }//Match while statement } void del(polygon*head) { polygon*p; while(head!=NULL) { p= (10) ; head=head->next; delete p->x; delete P->y; deletep; }//Match while statement } void main() { polygon*head; head=create(); disp(head); del(head); }
- 2024下半年陜西計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水
- 2024下半年新疆兵團(tuán)軟考報(bào)名費(fèi)用及繳費(fèi)時(shí)間:8月
- 2024下半年河南軟考報(bào)名費(fèi)用及繳費(fèi)時(shí)間:8月21
- 2024下半年湖北軟考報(bào)名時(shí)間及報(bào)名入口:9月1日
- 2024下半年陜西軟考報(bào)名時(shí)間及報(bào)名入口:9月2日
- 2024下半年河南軟考考試時(shí)間及科目?jī)?nèi)容:11月9
- 2024下半年河南軟考報(bào)名時(shí)間及報(bào)名入口:8月21
- 2024下半年河南計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水