C语言编写的简单的电话本管理系统

  1 #include<stdio.h>
  2 
  3 #include <string.h>
  4 
  5 #include<stdlib.h>
  6 
  7 int n=0;        
  8 
  9 struct person
 10 
 11 {char name[20];
 12 
 13 char WP[20];
 14 
 15 char PN[20]; 
 16 
 17 char MPN[20];
 18 
 19 char FZ[20];
 20 
 21 char EM[20];
 22 
 23 char QQ[20];       
 24 
 25 };
 26 
 27  
 28 
 29 void fun1 (struct person b[100],int B[100])     
 30 
 31 {int i=0; 
 32 
 33 int H;
 34 
 35 do
 36 
 37 {printf("请输入第%d个联系人的信息\n",i+1);
 38 
 39 printf("请输入姓名:");
 40 
 41 scanf("%s",b[B[i]].name); printf("\n");
 42 
 43 printf("请输入工作地址:");
 44 
 45 scanf("%s",b[B[i]].WP); printf("\n");
 46 
 47 printf("请输入固定电话号码:");
 48 
 49 scanf("%s",b[B[i]].PN); printf("\n");
 50 
 51 printf("请输入移动电话号码:");
 52 
 53 scanf("%s",b[B[i]].MPN); printf("\n");
 54 
 55 printf("请输入与本人关系:");
 56 
 57 scanf("%s",b[B[i]].FZ); printf("\n");
 58 
 59 printf("请输入邮箱:");
 60 
 61 scanf("%s",b[B[i]].EM); printf("\n");
 62 
 63 printf("请输入QQ号码:");
 64 
 65 scanf("%s",b[B[i]].QQ); printf("\n");
 66 
 67 i++;n++;                              
 68 
 69 printf("1继续输入;0退出\n");
 70 
 71 scanf("%d",&H);
 72 
 73 }while(H!=0);
 74 
 75 printf("\n");
 76 
 77 }
 78 
 79  
 80 
 81 void fun2 (struct person F[100],int h[100])     
 82 
 83 {int i=0,t,k,p,m;
 84 
 85 t=n/10;
 86 
 87 printf("所有联系人的信息如下:\n");
 88 
 89 if(t==0)
 90 
 91 {for(i=0;i<n;i++)
 92 
 93 printf("姓名:%s\t单位:%s\t固定电话:%s\t移动电话:%s\t分类:%s\t邮箱:%s\tQQ:%s\n",F[h[i]].name,F[h[i]].WP,F[h[i]].PN,F[h[i]].MPN,F[h[i]].FZ,F[h[i]].EM,F[h[i]].QQ);}
 94 
 95 else
 96 
 97 {for(k=0;k<t;k++)
 98 
 99 {for(i=0;i<10;i++)
100 
101 printf("姓名:%s\t单位:%s\t固定电话:%s\t移动电话:%s\t分类:%s\t邮箱:%s\tQQ:%s\n",F[h[10*k+i]].name,F[h[10*k+i]].WP,F[h[10*k+i]].PN,F[h[10*k+i]].MPN,F[h[10*k+i]].FZ,F[h[10*k+i]].EM,F[h[10*k+i]].QQ);
102 
103 printf("输入'1'显示下一页\n");
104 
105 scanf("%d",&p);
106 
107 if(p==1)
108 
109 system("cls");}
110 
111 m=10*t;
112 
113 for(i=0;m<n;m++)
114 
115 printf("姓名:%s\t单位:%s\t固定电话:%s\t移动电话:%s\t分类:%s\t邮箱:%s\tQQ:%s\n",F[h[m]].name,F[h[m]].WP,F[h[m]].PN,F[h[m]].MPN,F[h[m]].FZ,F[h[m]].EM,F[h[m]].QQ);}
116 
117 }
118 
119  
120 
121 void fun3(struct person d[100],int e[100])   
122 
123 {char x[20],p[2];
124 
125 int D,i;
126 
127 do{int m=0;
128 
129 printf("请输入要查找的信息:\n");
130 
131 scanf("%s",&x);
132 
133 for(i=0;i<n;i++)
134 
135 if(!strcmp(d[e[i]].name,x)||!strcmp(d[e[i]].WP,x)||!strcmp(d[e[i]].PN,x)||!strcmp(d[e[i]].MPN,x)||!strcmp(d[e[i]].FZ,x)
136 
137    ||!strcmp(d[e[i]].EM,x)||!strcmp(d[e[i]].QQ,x))  
138 
139 {D=e[i];   
140 
141 printf("要查询的联系人信息如下:\n");
142 
143 printf("姓名:%s\t单位:%s\t固定电话:%s\t移动电话:%s\t分类:%s\t邮箱:%s\tQQ:%s\n",d[D].name,d[D].WP,d[D].PN,d[D].MPN,d[D].FZ,d[D].EM,d[D].QQ);}
144 
145 printf("输入Y或y继续查询,输入N或n退出\n");
146 
147 scanf("%s",&p);
148 
149 }while(!strcmp(p,"Y")||!strcmp(p,"y"));
150 
151 }
152 
153  
154 
155 void fun4(struct person c[100],int k[100])   
156 
157 {char d[20]; char p[2];
158 
159 int t[10],j,i,x;
160 
161 do{printf("请输入要删除的联系人信息:\n");
162 
163 scanf("%s",&d);
164 
165 for(i=0;i<n;i++)
166 
167 if(!strcmp(d,c[k[i]].name)||!strcmp(d,c[k[i]].WP)||!strcmp(d,c[k[i]].PN)||!strcmp(d,c[k[i]].MPN)||!strcmp(d,c[k[i]].FZ)||!strcmp(d,c[k[i]].EM)||!strcmp(d,c[k[i]].QQ))        
168 
169 j=k[i];
170 
171 for(x=j;x<n;x++)
172 
173 k[x]=x+1;
174 
175 n--;
176 
177 printf("输入Y或y继续,输入N或n退出\n");
178 
179 scanf("%s",&p);
180 
181 }while(!strcmp(p,"Y")||!strcmp(p,"y")); 
182 
183 }
184 
185  
186 
187 void fun5(struct person b[100],int B[100])
188 
189 {int H;
190 
191 do
192 
193 {printf("请输入添加联系人的信息\n");
194 
195 printf("请输入姓名:");
196 
197 scanf("%s",b[B[n]].name); printf("\n");
198 
199 printf("请输入工作地址:");
200 
201 scanf("%s",b[B[n]].WP); printf("\n");
202 
203 printf("请输入固定电话号码:");
204 
205 scanf("%s",b[B[n]].PN); printf("\n");
206 
207 printf("请输入移动电话号码:");
208 
209 scanf("%s",b[B[n]].MPN); printf("\n");
210 
211 printf("请输入与本人关系:");
212 
213 scanf("%s",b[B[n]].FZ); printf("\n");
214 
215 printf("请输入邮箱:");
216 
217 scanf("%s",b[B[n]].EM); printf("\n");
218 
219 printf("请输入QQ号码:");
220 
221 scanf("%s",b[B[n]].QQ); printf("\n");
222 
223 n++;                               
224 
225 printf("1继续添加;0退出\n");
226 
227 scanf("%d",&H);
228 
229 }while(H!=0);
230 
231 printf("\n");
232 
233 }
234 
235  
236 
237 void fun6(struct person T[100],int r[100]) 
238 
239 {char p[2],d[20];
240 
241 int i,t;
242 
243 do
244 
245 {printf("请输入要修改联系人信息:\n");
246 
247 scanf("%s",&d);
248 
249 for(i=0;i<n;i++)
250 
251 if(!strcmp(d,T[r[i]].name)||!strcmp(d,T[r[i]].WP)||!strcmp(d,T[r[i]].PN)||!strcmp(d,T[r[i]].MPN)||!strcmp(d,T[r[i]].FZ)||!strcmp(d,T[r[i]].EM)||!strcmp(d,T[r[i]].QQ))          
252 
253 {t=r[i];                
254 
255 printf("请输入改后联系人的信息\n");
256 
257 printf("请输入姓名:");
258 
259 scanf("%s",T[t].name); printf("\n");
260 
261 printf("请输入工作地址:");
262 
263 scanf("%s",T[t].WP); printf("\n");
264 
265 printf("请输入固定电话号码:");
266 
267 scanf("%s",T[t].PN); printf("\n");
268 
269 printf("请输入移动电话号码:");
270 
271 scanf("%s",T[t].MPN); printf("\n");
272 
273 printf("请输入与本人关系:");
274 
275 scanf("%s",T[t].FZ); printf("\n");
276 
277 printf("请输入邮箱:");
278 
279 scanf("%s",T[t].EM); printf("\n");
280 
281 printf("请输入QQ号码:");
282 
283 scanf("%s",T[t].QQ); printf("\n");     
284 
285 }
286 
287 printf("输入Y或y继续,输入N或n退出\n");
288 
289 scanf("%s",&p);
290 
291 }while(!strcmp(p,"Y")||!strcmp(p,"y"));
292 
293 }
294 
295  
296 
297 void main()
298 
299 {struct person a[100];   
300 
301 int A[100],i,X;
302 
303 for(i=0;i<100;i++)
304 
305 A[i]=i;
306 
307 do
308 
309 {printf("*************************菜单************************\n");
310 
311 printf("           请选择要进行的操作\n");
312 
313 printf("           1 : 输入联系人信息\n");
314 
315 printf("           2 :分屏显示所有联系人信息\n");
316 
317 printf("           3 : 查找联系人信息\n");
318 
319 printf("           4 : 删除联系人信息\n");
320 
321 printf("           5 : 增加联系人信息\n");
322 
323 printf("           6 : 修改联系人信息\n");
324 
325  
326 
327 printf("           0 :退出\n");
328 
329 scanf("%d",&X);                   
330 
331 switch(X)
332 
333  {case 1: fun1(a,A);break;
334 
335     case 2: fun2(a,A);break;
336 
337      case 3: fun3(a,A);break;
338 
339   case 4: fun4(a,A);break;
340 
341      case 5: fun5(a,A);break;
342 
343      case 6: fun6(a,A);break;
344 
345  
346 
347  }
348 
349 }while(X!=0);
350 
351 }

 

转载于:https://www.cnblogs.com/yjh123/p/5685777.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值