main.c——---------——————————————————
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
#include"input.h"
#include"extern.h"
int main(int argc, char *argv[]) {
char O = '#';
while (O != 'Y') {
O = menu();
switch (O) {
case'A':A_add(); break;
case'B':B_seek(); break;
case'C':C_edit(); break;
case'D':D_del(); break;
case'Y':break;
default:printf("错误的命令!!!");
}
if (O != 'Y') {
printf("\n请按任意键继续......"); getch();
}
}
return 0;
}
input.c————————————————
#include"extern.h"
void print_() {
int i;
for (i=0;i<m;i++) {
printf("第%d位联系人 ", i + 1);
printf("姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d\n", s[i].name, s[i].job, s[i].Homephone, s[i].mailbox, s[i].number);
}
}
void A_add() {
printf("\n请输入要添加的联系人的姓名:"); gets(s[m].name);
printf("\n请输入要添加的联系人的工作:"); gets(s[m].job);
printf("\n请输入要添加的联系人的邮箱:"); gets(s[m].mailbox);
printf("\n请输入要添加的联系人的家庭电话:"); scanf("%d", &s[m].Homephone);
printf("\n请输入要添加的联系人的手机号码:"); scanf("%d", &s[m].number);
m++;
print_();
}
void B_seek_A() {
char a[40]; int i, j = -1;
printf("\n请输入要查找的姓名:"); gets(a);
for (i = 0; i < m; i++) {
if (strcmp(a, s[i].name) == 0) j = i;
}
if (j != -1) {
printf("\n查找成功......"); printf("\n姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d", s[j].name, s[j].job, s[j].Homephone, s[j].mailbox, s[j].number);
h = j;
}
else printf("\n查无此人......");
}
void B_seek_B() {
char a[40]; int i, j = -1;
printf("\n请输入要查找的工作:"); gets(a);
for (i = 0; i < m; i++) {
if (strcmp(a, s[i].job) == 0) j = i;
}
if (j != -1) {
h = j;
printf("\n查找成功......"); printf("\n姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d/n", s[j].name, s[j].job, s[j].Homephone, s[j].mailbox, s[j].number);
}
else printf("\n查无此人......");
}
void B_seek_C() {
int i, n, j = -1;
printf("\n请输入要查找的家庭电话:"); scanf("%d", &n);
for (i = 0; i < m; i++) {
if (n == s[i].Homephone) j = i;
}
if (j != -1) {
h = j;
printf("\n查找成功......"); printf("\n姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d/n", s[j].name, s[j].job, s[j].Homephone, s[j].mailbox, s[j].number);
}
else printf("\n查无此人......");
}
void B_seek_D() {
char a[40]; int i, j = -1;
printf("\n请输入要查找的邮箱:"); gets(a);
for (i = 0; i < m; i++) {
if (strcmp(a, s[i].mailbox) == 0) j = i;
}
if (j != -1) {
h = j;
printf("\n查找成功......"); printf("\n姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d/n", s[j].name, s[j].job, s[j].Homephone, s[j].mailbox, s[j].number);
}
else printf("\n查无此人......");
}
void B_seek_E() {
int i, n, j = -1;
printf("\n请输入要查找的电话号码:"); scanf("%d", &n);
for (i = 0; i < m; i++) {
if (n == s[i].number) j = i;
}
if (j != -1) {
h = j;
printf("\n查找成功......"); printf("\n姓名:%s,工作:%s,家庭电话:%d,邮箱:%s,手机号码:%d/n", s[j].name, s[j].job, s[j].Homephone, s[j].mailbox, s[j].number);
}
else printf("\n查无此人......");
}
void B_seek() {
char p;
printf("\n请输入您的查找方式:A.姓名 B.工作 C.家庭电话 D.邮箱 E.电话号码 ");
p = getche(); p = p - 32;
switch (p) {
case'A':B_seek_A(); break;
case'B':B_seek_B(); break;
case'C':B_seek_C(); break;
case'D':B_seek_D(); break;
case'E':B_seek_E(); break;
default:printf("错误的命令!!!");
}
}
void C_edit() {
printf("\n请先查找要编辑的联系人......");
B_seek(); char n;
printf("\n请输入要编辑的选项:A.姓名 B.工作 C.家庭电话 D.邮箱 E.电话号码:");
n = getche();
n = n - 32;
printf("\n请输入编辑后的内容:");
switch (n) {
case'A':gets(s[h].name); break;
case'B':gets(s[h].job); break;
case'C':scanf("%d", &s[h].Homephone); break;
case'D':gets(s[h].mailbox); break;
case'E':scanf("%d", &s[h].number); break;
default:printf("错误的命令.......");
}
}
void D_del() {
printf("\n请先查找要删除的联系人......");
B_seek(); int v;
for (v = h; v < m; v++) {
s[v] = s[v + 1];
}
printf("\n删除成功......"); print_();
}
int menu() {
char c;
printf("\n **************************************************\n");
printf(" ** A.增加 B.查找**\n");
printf(" ** C.编辑 D.删除**\n");
printf(" *********************Y.退出程序*******************\n");
printf("请输入您的选择:");
c = getche();
if (c >= 'a'&&c <= 'z') c = c - 32;
return c;
}
input.h————————————————
#ifndef __MY_INPUT_H_
#define __MY_INPUT_H_
void print_();
void A_add();
void B_seek_A();
void B_seek_B();
void B_seek_C();
void B_seek_D();
void B_seek_E();
void B_seek();
void C_edit();
void D_del();
int menu();
#endif
extern.h————————————————
#ifndef EXTERN_H_INCLUDED
#define EXTERN_H_INCLUDED
struct stu {
char name[40];
char job[40];
int Homephone;
char mailbox[40];
int number;
}s[100]= {
{"xiao li","doctor",123456,"qwert",152123456},
{"xiao ming","teacher",456789,"tyuiop",137123456},
{"xiao qiang","worker",789123,"asdf",188123456},
{"xiao hong","driver",789456,"ghjkl",133123456},
};
int h;
int m=4;
#endif // EXTERN_H_INCLUDED
——————————————————————————————————————————
错误太多了 /(ㄒoㄒ)/~~ 救救孩子吧