猿问

就是fun函数每一行都是什么意思,我是个刚学C++的新手,麻烦讲的通俗些~

#include <iostream>
using namespace std;
class NODE
{
public:
int data;
NODE *next;
};
void fun(NODE *list,int x)
{
NODE *u,*v,*p;
u=list;
v=u->next;
while(v!=NULL&&x<v->data)
{
u=v;
v=v->next;
}
if(v==NULL||x>v->data)
{
p=new NODE;
p->data=x;
p->next=v;
u->next=p;
}
}
void main()
{
int x;
NODE *head,*p;
head=new NODE;
head->next=NULL;
cout<<"Enter integers,end with 0"<<endl;
while(1)
{
cin>>x;
if(x==0)
break;
fun(head,x);
}
for(p=head->next;p!=NULL;p=p->next)
do{
p=head->next;
delete head;
head=p;
}while(p);
}

四季花海
浏览 151回答 1
1回答

吃鸡游戏

void fun(NODE *list,int x) // 一个函数 ,第一个参数类型为NODE对象指针,第二个参数类型为int{NODE *u,*v,*p; // 声明三个NODE对象的指针 u, v, p&nbsp;u=list; // u指向list指向的地址v=u->next; // v指向了u的下一个节点位置while(v!=NULL&&x<v->data) // 循环,如果v指向的位置不为空并且x小于v指向对象的成员data{u=v; // u指向v,即u指向链表的下一个对象v=v->next; // v指向了链表的下一个对象}if(v==NULL||x>v->data) // 判断,如果v指向的位置为空,或者x大于v指向对象的成员data,只要满足一个条件就执行以下括号里面的语句{p=new NODE; // 动态构造出一个NODE 对象(匿名对象)并且将对象的地址赋值给p&nbsp;p->data=x; // 给匿名对象的成员赋值,data = x ;p->next=v; // 匿名对象的next指向了v指向的对象u->next=p; // 把匿名对象接入链表中适当的位置}}// 函数的作用:将变量x插入链表中,保证x前面的元素一定比x大&nbsp;
随时随地看视频慕课网APP
我要回答