大佬教程收集整理的这篇文章主要介绍了Cocos2d如何实现一个指针的添加节点,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
用户在终端输入npc的数量,动态分配npc的空间
#include <stdio.h>
#include <stdlib.h>
typedef struct _NPC{
char name[20];
int hp;
int act;
}NPc;
typedef struct _NODE{
NPC data;
struct _NODE * pNext;
}NODE;//一个节点
NODE * head=NULL; //定义头结点
void addNODE(){
if (head==NULL) {
head=@H_988_87@malloc(sizeof(NODE));
printf("请输入NPC信息名字 hp act");
scanf("%s %d %d",head->data.name,&head->data.hp,&head->data.act);
head->pNext=NULL;
}else{
NODE * p=head;//p指向头节点
p=p->pNext;//p指向下一个节点
}
p->pNext=@H_988_87@malloc(sizeof(NODE));
p=p->pNext;
:18px; font-family:Menlo; color:rgb(201,&head->data.act);
p->pNext=NULL;
}
printf("添加节点成功\n");
}
void printNODE(){
NODE *p=head;
printf("NPC名字 %s hp %d atc %d\n",p->data.name,p->data.hp,p->data.act);
p=p->pNext;
}
printf("输出所有节点成功\n");
}
void insertNODE(){
//创建一个新节点
NODE * newNODE=@H_988_87@malloc(sizeof(NODE));
printf("请输入NPC的名子 hp act\n");
scanf("NPC:rgb(201,newNODE->data.name,&newNODE->data.hp,&newNODE->data.act);
printf("请输入插入到第几个节点之后\n");
int index;
int count=0;
NODE * p=head;
scanf("%d",&indeX);
count++;
break;
}
p=p->pNext;
}
NODE *p2=p->pNext;
p->pNext=newNODE;
newNODE->pNext=p2;
printf("插入节点成功\n");
}
int index;
printf("请输入要删除第几个节点\n");
scanf("%d",&indeX);
int num=0;
NODE * p=head;
num++;
p=p->pNext;
}
if (index==1) {
p=head;
head=head->pNext;
free(p);
}else if (index==num){
NODE * p=head;
while (p->pNext->pNext!=NULL) {
p=p->pNext;
}
free(p->pNext->pNext);
p->pNext=NULL;
}else{
int count=1;
NODE * p=head;
count++;
break;
}
p=p->pNext;
NODE * p2=p->pNext;
p->pNext=p2->pNext;
free(p2);
}
printf("删除节点成功\n");
}
}
void modifyNODE(){
int index;
printf("请输入有修改的节点\n");
scanf("%d",&indeX);
NODE * p=head;
int count=0;
count++;
break;
}
p=p->pNext;
printf("请输入NPC的名字 hp act\n");
scanf("%s %d %d\n",&p->data.hp,&p->data.act);
}
printf("修改节点");
}
int main(int argc,const char * argv[]) {
printf("NPC管理系统\n");
int menuSELEct;
while (1) {
printf("1.添加NPC节点\n");
printf("2.输出所有NPC节点\n");
printf("3。插入NPC节点\n");
printf("4.删除NPC节点\n");
printf("5.修改NPC节点\n");
printf("6.退出\n");
case 1://添加节点
addNODE();
break;
case 2://输出节点
printNODE();
break;
case 3://插入节点
insertNODE();
break;
case 4://删除节点
break;
case 5://修改节点
break;
case 6://退出
return 0;
break;
default:
break;
}
}
return 0;
}
以上是大佬教程为你收集整理的Cocos2d如何实现一个指针的添加节点全部内容,希望文章能够帮你解决Cocos2d如何实现一个指针的添加节点所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。