版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
-
#ifndef info_h
#define info_h#include <stdio.h> #include <stdlib.h> #include <string.h> #define NUM 1000 #define SIZE 1024 void init(); int menu(); void add_user(); void print_user(); void del_user(); void modify_user(); void find_user(); void clear_user(); #endif//__info_h__
-
#define _CRT_SECURE_NO_WARNINGS 1
#include "info.h" enum { ADD = 1, DEL, MODIFY, FIND, PRINT, CLEAR, EXIT, }; int main() { int choice = 0; init(); do { choice = menu(); switch (choice) { case ADD: { add_user(); break; } case DEL: { del_user(); break; } case MODIFY: { modify_user(); break; } case FIND: { find_user(); break; } case PRINT: { print_user(); break; } case CLEAR: { clear_user(); break; } case EXIT: { printf("Good baby!\n"); break; } default: { printf("输入有误,请重新输入!\n"); break; } } } while (choice != EXIT); system("pause"); return 0; }
-
#define _CRT_SECURE_NO_WARNINGS 1
#include "info.h" typedef struct userinfo { char name[SIZE]; char telphone[SIZE]; }userinfo; typedef struct usercount { userinfo usernum[NUM]; int size; }usercount; usercount user_count; void init() { user_count.size = 0; memset(user_count.usernum, 0x0, sizeof(user_count.usernum)); } int menu() { int choice = 0; printf("***************************************\n"); printf("************* *1.ADD* *************\n"); printf("************* *2.DEF* *************\n"); printf("************* *3.MODIFY* **********\n"); printf("************* *4.FIND* ************\n"); printf("************* *5.PRINT* ***********\n"); printf("************* *6.CLEAR* ***********\n"); printf("************* *7.EXIT* ************\n"); printf("***************************************\n"); while (1) { scanf("%d", &choice); if (choice > 0 && choice <= 7) { return choice; } else { printf("输入错误,请重新输入!\n"); } } } void add_user() { if (user_count.size >= SIZE) { printf("用户已满!\n"); } else { printf("请添加一个新用户!\n"); printf("请输入要添加人的姓名:\n"); scanf("%s", user_count.usernum[user_count.size].name); printf("请输入要添加人的电话号码:\n"); scanf("%s", user_count.usernum[user_count.size].telphone); printf("添加成功!\n"); ++user_count.size; } } void print_user() { int i = 0; printf("打印所有用户信息!\n"); for (i = 0; i < user_count.size; i++) { printf("[%d] %s %s\n", i, user_count.usernum[i].name, user_count.usernum[i].telphone); } printf("共打印了%d条用户信息\n", i); } void del_user()//顺序 { char user[SIZE] = { 0 }; int i = 0; printf("删除用户!\n"); printf("请输入要删除的用户姓名:\n"); scanf("%s", user); for (i = 0; i < user_count.size; i++) { if (strcmp(user, user_count.usernum[i].name) == 0) { user_count.usernum[i] = user_count.usernum[user_count.size - 1]; } } printf("删除用户成功!\n"); user_count.size--; } void modify_user() { char user[SIZE] = { 0 }; int i = 0; printf("修改一个用户\n"); printf("请输入要修改用户的姓名:\n"); scanf("%s", user); for (i = 0; i < user_count.size; i++) { if (strcmp(user, user_count.usernum[i].name) == 0) { printf("[%d] %s %s\n", i, user_count.usernum[i].name, user_count.usernum[i].telphone); printf("请输入修改过的名字:\n"); scanf("%s", user_count.usernum[i].name); printf("请输入修改过的手机号:\n"); scanf("%s", user_count.usernum[i].telphone); printf("[%d] %s %s\n", i, user_count.usernum[i].name, user_count.usernum[i].telphone); } } printf("修改成功!\n"); } void find_user() { char user[SIZE] = { 0 }; int i = 0; printf("查找一个用户!\n"); printf("请输入要查找的用户的姓名:\n"); scanf("%s", user); for (i = 0; i < user_count.size; i++) { if (strcmp(user, user_count.usernum[i].name) == 0) { printf("[%d] %s %s\n", i, user_count.usernum[i].name, user_count.usernum[i].telphone); } } printf("查找成功,共找到了%d条结果!\n", i); } void clear_user() { char a[SIZE] = { 0 }; printf("您确认要全部清除吗?(y/n)\n"); scanf("%s", a); if (strcmp("y", a) == 0) { init(); } }