为了账号安全,请及时绑定邮箱和手机立即绑定

作业社区

探索学习新天地,共享知识资源!

0 提交作业
0 布置作业
0 满分作业
得分 100
学习任务

SamstagBaron 的学生作业:

#include #include #include typedef int datatype_t; typedef struct NodeList{ datatype_t data; struct NodeList *next; }intlist; intlist* creatNodelist(datatype_t value){ intlist* res = (intlist*)malloc(sizeof(intlist)); if(NULL==res){ printf("Creat Node error\n"); } else{ res->data = value; res->next=NULL; } return res; } void insertByOrder(intlist* head,intlist* node){ if(NULL==head->next){ head->next = node; return ; } while(NULL!=head->next&&head->next->datadata){ head = head->next; } node->next = head->next; head->next = node; } void printNodeList(intlist* head){ while(head->next){ printf("%d ",head->next->data); head = head->next; } printf("\n"); } void freeNodeList(intlist* head){ while(NULL!=head){ intlist* tmp = head; head = head->next; free(tmp); } } void eraseNodes(intlist* head,int data){ while(NULL!=head->next){ if(head->next->data==data){ intlist* tmp = head->next; head->next = tmp->next; free(tmp); } else{ head = head->next; } } } void reverseList(intlist *head){ if(NULL==head->next){ return ; } intlist *p = head->next; intlist* q = head->next->next; p->next = NULL; while(q){ p = q->next; q->next = head->next; head->next = q; q = p; } } int main(){ intlist *head = creatNodelist(0); if(NULL==head){ exit(-1); } int num = 5; printf("please input %d numbers\n",num); int curr = 0; while(num){ scanf("%d",&curr); intlist *tmp = creatNodelist(curr); if(NULL==tmp){ break; } insertByOrder(head,tmp); num-=1; } printf("Show Original Nodes\n"); printNodeList(head); printf("Show processed Nodes\n"); reverseList(head); printNodeList(head); freeNodeList(head); return 0; } 【图片】

得分 100
讨论题

SamstagBaron 的学生作业:

#include #include #include typedef int datatype_t; typedef struct NodeList{ datatype_t data; struct NodeList *next; }intlist; intlist* creatNodelist(datatype_t value){ intlist* res = (intlist*)malloc(sizeof(intlist)); if(NULL==res){ printf("Creat Node error\n"); } else{ res->data = value; res->next=NULL; } return res; } void insertByOrder(intlist* head,intlist* node){ if(NULL==head->next){ head->next = node; return ; } while(NULL!=head->next&&head->next->datadata){ head = head->next; } node->next = head->next; head->next = node; } void printNodeList(intlist* head){ while(head->next){ printf("%d ",head->next->data); head = head->next; } printf("\n"); } void freeNodeList(intlist* head){ while(NULL!=head){ intlist* tmp = head; head = head->next; free(tmp); } } void eraseNodes(intlist* head,int data){ while(NULL!=head->next){ if(head->next->data==data){ intlist* tmp = head->next; head->next = tmp->next; free(tmp); } else{ head = head->next; } } } int main(){ intlist *head = creatNodelist(0); if(NULL==head){ exit(-1); } int num = 9; printf("please input %d numbers\n",num); int curr = 0; while(num){ scanf("%d",&curr); intlist *tmp = creatNodelist(curr); if(NULL==tmp){ break; } insertByOrder(head,tmp); num-=1; } printf("Show Original Nodes\n"); printNodeList(head); printf("Show processed Nodes\n"); eraseNodes(head,3); printNodeList(head); freeNodeList(head); return 0; } 【图片】

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号