Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
chainsearch.c
Package: C语言精彩编程百例_源代码.rar [view]
Upload User: bjtelijie
Upload Date: 2010-01-01
Package Size: 87k
Code Size: 2k
Category:
Algorithm
Development Platform:
Visual C++
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define NUM 4
- struct chain
- {
- char name[20];
- char city[20];
- char sex[10];
- char age[10];
- char job[10];
- struct chain *next;
- };
- struct chain *create();
- struct chain *SequelSeach(head,name);
- void print_data(point);
- struct chain Datas[NUM]=
- {
- "Sun","Weifang","Male","24","student",NULL,
- "Tom","Beijing","Male","31","doctor",NULL,
- "Marry","Shanghai","Female","19","techer",NULL,
- "Willing","Tianjing","Female","21","worker",NULL
- };
- int main(void)
- {
- struct chain *head;
- struct chain *p;
- char name[30];
- head = create();
- printf("请输入要查找的人名n");
- scanf("%s",name);
- p = SequelSeach(head,name);
- print_data(p);
- return 0;
- }
- struct chain *create()
- {
- struct chain *head, *tail, *p;
- int i;
- head = tail = NULL;
- printf("将名单数据输入到链表中:n");
- for(i= 0;i < NUM; i++)
- {
- p = (struct chain *)malloc (sizeof (struct chain));
- strcpy(p->name, Datas[i].name);
- strcpy(p->city,Datas[i].city);
- strcpy(p->sex,Datas[i].sex);
- strcpy(p->age,Datas[i].age);
- strcpy(p->job,Datas[i].job);
- p->next = NULL;
- if(head == NULL)
- head = tail = p;
- else
- tail = tail ->next;
- tail ->next = p;
- }
- return head;
- }
- struct chain *SequelSeach(head,name)
- struct chain *head;
- char name[];
- {
- struct chain *temp;
- temp = head;
- for(temp=head;temp!=NULL;)
- {
- if(strcmp(temp->name,name) == 0)
- break;
- else
- temp = temp->next;
- }
- if(temp ==NULL)
- printf("没有查找到该人资料n");
- return temp;
- }
- void print_data(point)
- struct chain *point;
- {
- if(point ==NULL)
- return;
- printf("查找结果:n");
- printf(" 姓名:%sn",point->name);
- printf(" 城市:%sn",point->city);
- printf(" 性别:%sn",point->sex);
- printf(" 年龄:%sn",point->age);
- printf(" 工作:%sn",point->job);
- }