真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

通訊錄-----第一版

//基于順序表實(shí)現(xiàn)的簡易通訊錄-----1

#define _CRT_SECURE_NO_WARNINGS 1

#include
#include
#include
typedef struct stu                    //定義一個(gè)學(xué)生信息的結(jié)構(gòu)體類型
{
	char name[20];
	char sex[6];
	int age;
	char tele[20];
	char address[40];

}stu;

typedef struct                                               //創(chuàng)建一個(gè)順序表
{
	stu data[1000];
	int i;
}suquence;

int find(suquence *book, char *names)
{
	int n = 0;
	while (n < book->i)
	{
		if (strcmp(book->data[n].name, names) == 0)
			break;
		n++;
	}
	if (n != book->i)
		return n;                       //如果找到則返回這個(gè)位置
	return -1;                           //沒找到返回-1
}


void Add(suquence *book)
{
	if (book->i >= 1000)                                 //最多存儲(chǔ)1000條信息
	{
		printf("通訊錄已滿\n");
	}
	else
	{
		printf("請(qǐng)輸入名字:");
		scanf("%s", book->data[book->i].name);
		printf("請(qǐng)輸入性別:");
		scanf("%s", book->data[book->i].sex);
		printf("請(qǐng)輸入年齡:");
		scanf("%d",&book->data[book->i].age);
		printf("請(qǐng)輸入電話:");
		scanf("%s", book->data[book->i].tele);
		printf("請(qǐng)輸入地址:");
		scanf("%s", book->data[book->i].address);
		++book->i;
		printf("添加成功\n");
	}
}


void delete(suquence *book,char *names)
{
	if (book->i <= 0)                              
	{
		printf("通訊錄已空\n");
	}
	else
	{
		int n = 0;
		n = find(book, names);                       //根據(jù)名字查找
		if (n==0)        
		{
			printf("沒有此人\n");
		}
		else
		{
			while (n < book->i - 1)                           //如果找到,則進(jìn)行刪除,依次向前覆蓋
			{
				book->data[n] = book->data[n + 1];
			}
			book->i--;                     //刪除一個(gè),則記錄位置的book->i也要減一
			printf("刪除成功\n");
		}
	}
}

void change(suquence *book , char *names)
{
	int ret = 0;
	ret = find(book,names);              //先找到這個(gè)人的位置
	if (ret == -1)
	{
		printf("沒有此人\n");
	}
	else
	{
		printf("請(qǐng)輸入名字:");
		scanf("%s", book->data[ret].name);
		printf("請(qǐng)輸入性別:");
		scanf("%s", book->data[ret].sex);
		printf("請(qǐng)輸入年齡:");
		scanf("%d", &book->data[ret].age);
		printf("請(qǐng)輸入電話:");
		scanf("%s", book->data[ret].tele);
		printf("請(qǐng)輸入地址:");
		scanf("%s", book->data[ret].address);
		printf("修改成功\n");
	}
}


void output(suquence *book)
{
	if (book->i <=0)
	{
		printf("通訊錄為空\n");
	}
	else
	{
		int n =0;
		while (n < book->i)
		{
			printf("名字:%s 性別: %s 年齡: %d 電話: %s 地址: %s\n", 
				book->data[n].name, 
				book->data[n].sex,
				book->data[n].age,
				book->data[n].tele,
				book->data[n].address);
			n++;
		}

	}
}


void init(suquence *book)
{
	book->i = 0;            //只要將記錄位置的book->i置0
	printf("初始化成功\n");
}


void sort(suquence *book)
{
	if (book->i >1)                  //當(dāng)通訊錄中有1個(gè)以上記錄再進(jìn)行排序
	{
		int i= 0;
		int j = 0;
		int flag = 0;
		for (i = 0; i < book->i-1; i++)            
		{
			flag = 1;
			for (j = 0; j < book->i - i - 1; j++)
			{
	                       if (strcmp(book->data[j].name, book->data[j + 1].name) < 0)  //根據(jù)名字進(jìn)行排序
				{
				char arr[50];
				strcpy(arr, book->data[j].name);
				strcpy(book->data[j].name, book->data[j + 1].name);
				strcpy(book->data[j + 1].name, arr);

				strcpy(arr, book->data[j].sex);
				strcpy(book->data[j].sex, book->data[j + 1].sex);
				strcpy(book->data[j + 1].sex, arr);

				int tmp = book->data[j].age;
				book->data[j].age = book->data[j + 1].age;
				book->data[j + 1].age = tmp;

				strcpy(arr, book->data[j].tele);
				strcpy(book->data[j].tele, book->data[j + 1].tele);
				strcpy(book->data[j + 1].tele, arr);

				strcpy(arr, book->data[j].address);
				strcpy(book->data[j].address, book->data[j + 1].address);
				strcpy(book->data[j + 1].address, arr);

					flag = 0;
				}        //if 結(jié)束
			}
			if (flag)     //如果已經(jīng)有序,則flag為真
			break;
		}
	}
	printf("排序成功\n");
}



void execute(suquence book)
{
	int n = 0;
	char name[20];
	while (1)
	{
		printf("請(qǐng)選擇:");
		scanf("%d", &n);
		switch (n)
		{
		case 0:
			exit(1);
			break;
		case 1:
			Add(&book);
			break;
		case 2:
			printf("請(qǐng)輸入姓名:");
			scanf("%s", name);
			delete(&book, name);
			break;
		case 3:
			printf("請(qǐng)輸入姓名:");
			scanf("%s", name);
			change(&book, name);
			break;
		case 4:
			printf("請(qǐng)輸入姓名:");
			scanf("%s", name);
			int ret = find(&book, name);
			if (ret ==-1)
				printf("查詢無果\n");
			else
				printf("名字:%s 性別: %s 年齡: %d 電話: %s 地址: %s\n",
				book.data[ret].name,
				book.data[ret].sex,
				book.data[ret].age,
				book.data[ret].tele,
				book.data[ret].address);
			break;
		case 5:
			init(&book);
			break;
		case 6:
			output(&book);
			break;
		case 7:
			sort(&book);
			break;
		default:
			printf("選擇無效\n");
			break;
		}
	}
	
}



int main()
{
	printf("*******************************\n");
	printf("*0.exit              1.Add    *\n");
	printf("*2.deletel           3.change *\n");
	printf("*4.find              5.init   *\n");
	printf("*6.output            7.sort   *\n\n");
	suquence book;
	book.i = 0;
	execute(book);
	system("pause");
	return 0;
}

創(chuàng)新互聯(lián)長期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為寧津企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,寧津網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

//后續(xù)增加更多版本


本文名稱:通訊錄-----第一版
URL網(wǎng)址:http://weahome.cn/article/jshgge.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部