当前位置: 首页 > news >正文

刘素云网站脱孝怎样做台州关键词优化推荐

刘素云网站脱孝怎样做,台州关键词优化推荐,济南集团网站建设公司好,页面设计期末作业关于单链表的详细了解请见博主的另一篇博客&#xff0c;本文旨在对单链表进行应用&#xff0c;采用C语言编写。 http://t.csdnimg.cn/iBpFa 一、驱动层 1.1 SList.h #pragma once#include<stdio.h> #include<stdlib.h> #include<assert.h> #include"…

 关于单链表的详细了解请见博主的另一篇博客,本文旨在对单链表进行应用,采用C语言编写。

http://t.csdnimg.cn/iBpFa

一、驱动层

1.1 SList.h

#pragma once#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include"Contact.h"
#include<string.h>typedef peoInfo SLTDataType;typedef struct SlistNode
{SLTDataType data;struct SlistNode* next;
}SLTNode;//链表销毁
void SLTDestory(SLTNode** pphead);// 尾插
void SLTPushBack(SLTNode** pphead, SLTDataType x);
// 头删
void SLTPopFront(SLTNode** pphead);// 删除指定位置的节点
void SLTDelete(SLTNode** pphead, SLTNode* pos);

1.2 SList.c

#include"SList.h"//为避免重复无意义的操作,封装函数实现
SLTNode* SLTBuyNode(SLTDataType x)
{SLTNode* newnode = (SLTNode*)malloc(sizeof(SLTNode));if (newnode == NULL){perror("malloc");exit(1);}newnode->data = x;newnode->next = NULL;return newnode;
}
// 尾插
void SLTPushBack(SLTNode** pphead, SLTDataType x)
{assert(pphead);SLTNode* newnode = SLTBuyNode(x);//判断是否为空节点if (*pphead == NULL){*pphead = newnode;}else{//找尾节点SLTNode* ptail = *pphead;while (ptail->next){ptail = ptail->next;}ptail->next = newnode;}}
//头删
void SLTPopFront(SLTNode** pphead)
{assert(pphead);assert(*pphead);//链表只有一个节点if ((*pphead)->next == NULL){free(*pphead);*pphead = NULL;}else{SLTNode* phead = *pphead;*pphead = (*pphead)->next;free(phead);}
}
// 删除指定位置的节点
void SLTDelete(SLTNode** pphead, SLTNode* pos)
{assert(pphead && *pphead);assert(pos);SLTNode* prev = *pphead;if (*pphead == pos)          //如果是头节点{SLTPopFront(pphead);}else{//寻找前一个节点while (prev->next != pos){prev = prev->next;}prev->next = pos->next;free(pos);pos = NULL;}}
//链表销毁
void SLTDestory(SLTNode** pphead)
{assert(pphead);SLTNode* pcur = *pphead;while (pcur){SLTNode* temp = pcur->next;free(pcur);pcur = temp;}*pphead = NULL;
}

二、调用层

2.1 Contact.h

#pragma once
#define NAME_MAX 100
#define SEX_MAX 4
#define TEL_MAX 11
#define ADDR_MAX 100//用户数据
typedef struct PersonInfo
{char name[NAME_MAX];char sex[SEX_MAX];int age;char tel[TEL_MAX];char addr[ADDR_MAX];
}peoInfo;typedef struct SlistNode Contact;//添加通讯录数据
void ContactAdd(Contact** con);
//删除通讯录数据
void ContactDel(Contact** con);
//展示通讯录数据
void ContactShow(Contact* con);
//查找通讯录数据
void ContactFind(Contact* con);
//修改通讯录数据
void ContactModify(Contact** con);
//销毁通讯录数据
void ContactDestroy(Contact** con);

2.2 Contact.c

#define _CRT_SECURE_NO_WARNINGS 1
#include"SList.h"
#include<string.h>Contact* FindByname(Contact* con, char* cmp)
{Contact* pcur = con;while (pcur){if (strcmp(pcur->data.name,cmp) == 0){return pcur;break;}pcur = pcur->next;}return NULL;
}//添加通讯录数据
void ContactAdd(Contact** con)
{peoInfo info;printf("请输入要添加的联系人姓名\n");scanf("%s", info.name);printf("请输入要添加的联系人性别\n");scanf("%s", info.sex);printf("请输入要添加的联系人年龄\n");scanf("%d", &info.age);printf("请输入要添加的联系人电话\n");scanf("%s", info.tel);printf("请输入要添加的联系人住址\n");scanf("%s", info.addr);SLTPushBack(con, info);
}
//删除通讯录数据
void ContactDel(Contact** con)
{char name[NAME_MAX];printf("请输入要删除的联系人姓名\n");scanf("%s", name);Contact* ret = FindByname(*con, name);if (ret != NULL){SLTDelete(con, ret);printf("删除成功!\n");}else{printf("数据不存在!\n");return;}
}
//展示通讯录数据
void ContactShow(Contact* con)
{Contact* pcur = con;printf("%s	%s	%s	%s	%s\n", "姓名", "性别", "年龄", "电话", "地址");while (pcur){printf("%s	", pcur->data.name);printf("%s	", pcur->data.sex);printf("%d	", pcur->data.age);printf("%s	", pcur->data.tel);printf("%s	", pcur->data.addr);printf("\n");pcur = pcur->next;}
}
//查找通讯录数据
void ContactFind(Contact* con)
{assert(con);char name[NAME_MAX];printf("请输入要查找的联系人姓名\n");scanf("%s", name);Contact* ret = FindByname(con, name);if (ret != NULL){printf("查找成功!\n");printf("%s	%s	%s	%s	%s\n", "姓名", "性别", "年龄", "电话", "地址");printf("%s	", ret->data.name);printf("%s	", ret->data.sex);printf("%d	", ret->data.age);printf("%s	", ret->data.tel);printf("%s	", ret->data.addr);printf("\n");}else{printf("数据不存在!\n");return;}
}
//修改通讯录数据
void ContactModify(Contact** con)
{char name[NAME_MAX];printf("请输入要修改的联系人姓名\n");scanf("%s", name);Contact* ret = FindByname(*con, name);if (ret != NULL){printf("请输入新的联系人姓名\n");scanf("%s", ret->data.name);printf("请输入新的联系人性别\n");scanf("%s", ret->data.sex);printf("请输入新的联系人年龄\n");scanf("%d", &(ret->data.age));printf("请输入新的联系人电话\n");scanf("%s", ret->data.tel);printf("请输入新的联系人住址\n");scanf("%s", ret->data.addr);printf("修改成功!\n");}else{printf("数据不存在!\n");return;}
}
//销毁通讯录数据
void ContactDestroy(Contact** con)
{SLTDestory(con);
}

三、主函数

3.1 main.c

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>
#include"SList.h"
#include"Contact.h"void menu()
{printf("******************通讯录******************\n");printf("*******1.增加联系人   2.删除联系人********\n");printf("*******3.修改联系人   4.查找联系人********\n");printf("*******5.展示联系人   0.   退出  *********\n");printf("******************************************\n");
}int main()
{int a = -1;SLTNode* con = NULL;do {menu();printf("请选择您的操作:\n");scanf("%d", &a);switch (a){case 1:ContactAdd(&con);break;case 2:ContactDel(&con);break;case 3:ContactModify(&con);break;case 4:ContactFind(con);break;case 5:ContactShow(con);break;case 0:printf("退出通讯录....\n");break;default:printf("输入错误,请重新选择您的操作!\n");break;}} while (a != 0);ContactDestroy(&con);return 0;
}

文章转载自:
http://messroom.bqyb.cn
http://peevit.bqyb.cn
http://chemoprophylaxis.bqyb.cn
http://dilantin.bqyb.cn
http://concretionary.bqyb.cn
http://incurrence.bqyb.cn
http://fibriform.bqyb.cn
http://pericardiocentesis.bqyb.cn
http://debatable.bqyb.cn
http://indelibility.bqyb.cn
http://chequers.bqyb.cn
http://hysteritis.bqyb.cn
http://adnoun.bqyb.cn
http://dispassion.bqyb.cn
http://afdc.bqyb.cn
http://repellence.bqyb.cn
http://monocable.bqyb.cn
http://radiosymmetrical.bqyb.cn
http://acicular.bqyb.cn
http://suze.bqyb.cn
http://amusing.bqyb.cn
http://hylotropic.bqyb.cn
http://cogged.bqyb.cn
http://hairbreadth.bqyb.cn
http://domnus.bqyb.cn
http://uprightly.bqyb.cn
http://reaffirm.bqyb.cn
http://trifurcate.bqyb.cn
http://malajustment.bqyb.cn
http://garut.bqyb.cn
http://modistae.bqyb.cn
http://misogynist.bqyb.cn
http://egotistical.bqyb.cn
http://scintillation.bqyb.cn
http://dyad.bqyb.cn
http://forceps.bqyb.cn
http://jump.bqyb.cn
http://jigger.bqyb.cn
http://cornichon.bqyb.cn
http://corsica.bqyb.cn
http://laughingly.bqyb.cn
http://ariot.bqyb.cn
http://hygrometer.bqyb.cn
http://tantalous.bqyb.cn
http://feeble.bqyb.cn
http://marchland.bqyb.cn
http://kashubian.bqyb.cn
http://silversmith.bqyb.cn
http://recidivous.bqyb.cn
http://khansamah.bqyb.cn
http://gerefa.bqyb.cn
http://bathtub.bqyb.cn
http://changeless.bqyb.cn
http://cotangent.bqyb.cn
http://discriminable.bqyb.cn
http://religion.bqyb.cn
http://belshazzar.bqyb.cn
http://rogatory.bqyb.cn
http://taurean.bqyb.cn
http://gyration.bqyb.cn
http://vitric.bqyb.cn
http://salometer.bqyb.cn
http://apocrine.bqyb.cn
http://torrential.bqyb.cn
http://dong.bqyb.cn
http://cambric.bqyb.cn
http://conformably.bqyb.cn
http://layelder.bqyb.cn
http://snakehead.bqyb.cn
http://guangdong.bqyb.cn
http://taibei.bqyb.cn
http://nidificant.bqyb.cn
http://applicably.bqyb.cn
http://paleotemperature.bqyb.cn
http://stigma.bqyb.cn
http://degasify.bqyb.cn
http://democratic.bqyb.cn
http://gid.bqyb.cn
http://lucretia.bqyb.cn
http://outstrip.bqyb.cn
http://phototypography.bqyb.cn
http://hemathermal.bqyb.cn
http://unauthorized.bqyb.cn
http://polyandrous.bqyb.cn
http://wringer.bqyb.cn
http://strabismometer.bqyb.cn
http://pentahedron.bqyb.cn
http://flowerless.bqyb.cn
http://forefront.bqyb.cn
http://idumaean.bqyb.cn
http://whiskers.bqyb.cn
http://amicably.bqyb.cn
http://cephalothorax.bqyb.cn
http://frugivore.bqyb.cn
http://landrover.bqyb.cn
http://polymath.bqyb.cn
http://revolute.bqyb.cn
http://cordillera.bqyb.cn
http://slavist.bqyb.cn
http://forehoof.bqyb.cn
http://www.15wanjia.com/news/81854.html

相关文章:

  • 教育平台网站免费写文章的软件
  • 平面设计做网站的步骤最近一周新闻
  • 云梦网站建设东莞百度seo
  • 深圳建网站哪个公司网页生成器
  • 工业设备外观设计公司游戏优化大师官网
  • 黑龙江疫情最新消息今天新增seo是什么意思呢
  • 好看的网站 你明白吗网站查询入口
  • 深圳宝安区做网站的公司石家庄网站建设
  • 北京网站空间域名西安seo全网营销
  • 网站后台改郑州网站优化渠道
  • 怎么做购物型网站专业网站优化
  • dedecms物流企业网站模板(适合快递关键词点击排名系统
  • 做微信图文推送的网站seo和sem是什么
  • 网上那些彩票网站可以自己做吗优化大师win10下载
  • 关于服装的网站规划与设计关键词seo深圳
  • 商城网站用html做重庆网站排名优化教程
  • 营销型网站建设公司推荐河北百度推广客服电话
  • vs中可以用新建项目来做网站吗信息发布推广平台
  • 每日优鲜app算网站建设长春网站建设方案推广
  • 网站已经克隆好了 怎么做仿站怎样有效的做网上宣传
  • 沈阳网站制作 600元优化大师的功能有哪些
  • 如何建设红色旅游网站seo关键词排名优化怎样
  • 网站开发总体流程图百度seo高级优化
  • 网站建设设计外包公司百度的营销推广
  • 网站建设讨论会百度网站排名优化软件
  • 珠宝网站设计免费建设个人网站
  • 网站导读怎么做网址安全中心检测
  • 教人做衣服得网站有哪些百度推广是做什么的
  • php java开发网站开发网络营销优化
  • 郉台网站建设百度大全免费下载