| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1457 人关注过本帖
标题:[原创]一个会员制的电话本系统
只看楼主 加入收藏
amzyb
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2005-1-10
收藏
得分:0 

嘻嘻,我也小改了一下!感兴趣的朋友看一下! #include<stdio.h> #include<stdlib.h> #define max 100

struct addr { int num; long ID; char Name[8]; long Call; char Adress[50]; }addr_list[max];

void init_list(void);//分配空间 void enter(void); // 加数据 void deletes(void);//删除 void list(void);//显示 int menu_select(void);//选择需要的服务 int find_free(void);//查找有剩余空间

int main(void) { int choice; init_list(); for(;;) {choice=menu_select(); switch(choice) { case 1 : enter();break; case 2 : deletes();break; case 3 : list();break; case 4 : exit(0); } } return 0 ; }

void init_list(void) { register int t; for(t=0;t<max;++t) { addr_list[t].num=0; } }

int menu_select(void) { int c=0; printf("请选择你需要地服务:\n"); printf("1.增加\n"); printf("2.删除\n"); printf("3.显示全部信息\n"); printf("4.退出\n"); next: scanf("%d",&c);

if(c!=1&&c!=2&&c!=3&&c!=4){ printf("对不起,输入错误,请重新输入:\n"); goto next;} else return c; }

void enter(void) {int slot; slot=find_free(); if(slot==-1) {printf("\n已经满了"); return; } addr_list[slot].num=slot; printf("请输入会员ID号(in number):\n"); scanf("%d",&addr_list[slot].ID); printf("\n请输入名字:"); scanf("%s",addr_list[slot].Name); printf("\n请输入电话号码(in number):"); scanf("%d",&addr_list[slot].Call); printf("\n请输入地址(最多25个字):"); scanf("%s",addr_list[slot].Adress); }

int find_free(void) { register int t; for(t=1;addr_list[t].num&&t<max;++t)//从第一个开始而不是第0个 if(t==max) return (-1); return t; }

void deletes(void) { int i,s=0; printf("请输入要删除项的num:"); scanf("%d",&s); if(s>=0&&s<max) { addr_list[s].num=0; addr_list[s].Name[0]='\0'; addr_list[s].ID='\0'; addr_list[s].Call='\0'; addr_list[s].Adress[0]='\0'; } for(i=s;i<max;i++) --addr_list[i+1].num;//将删除项后面的信息标号提前1 for(i=s;i<max;i++)//将后面的信息依次向前移动 addr_list[i]=addr_list[i+1]; }

void list(void) { register int t; for(t=1;t<max;++t) { if(addr_list[t].num!=0) {printf("num: %d\n",addr_list[t].num); printf("ID: %d\n",addr_list[t].ID); printf("name: %s\n",addr_list[t].Name); printf("Call: %d\n",addr_list[t].Call); printf("Adress: %s\n",addr_list[t].Adress); printf("\n\n"); } else{ printf("没有信息存在!\n");//如果没有信息存在打印此句话 break; } } }

2005-01-26 14:18
sk016
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-4-4
收藏
得分:0 
可以用C-Free  这个支持中文,呵呵。。。

爱上你我很快乐
2005-04-06 19:02
快速回复:[原创]一个会员制的电话本系统
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020161 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved