利用类的形式,动态建立Node链表:
#includeusing namespace std;class Node{/*private: double x_; double y_; Node *Node_;*/public: double x_; double y_; Node *Node_; //定义指向Node类型的指针变量,指向下一个节点 Node(); //构造函数 void init(); //初始化函数 void print(); //打印节点坐标};Node::Node(){ x_=0; //赋初值 y_=0;}void Node::init(){ cout<<"x,y="; //键盘输入节点坐标 cin>>x_>>y_;}void Node::print(){ cout<<"结点坐标:"<<"("< <<","< <<")"< init(); //读入第一个点 head=p1; //把第一个点的地址给头指针head; flag=1; while(flag) { cout<<"还有结点吗?Y/N"< >s; switch(s) { case 'Y': //如果继续增加节点,则申请内存 p2=(class Node*)malloc(sizeof(class Node)); p2->init(); //读入新的节点信息 p1->Node_=p2; //将前面的点的指针指向新的节点 p1=p2; //将p1后移动一位 break; case 'N': p1->Node_=NULL; //使p1的指针指向NULL; flag=0; //标志位置0; break; default: cout<<"输入错误"< print(); temp=temp->Node_; //顺序输出 } cout<
输出: