C语言实现国家湿地公园简要信息系统

C语言实现国家湿地公园简要信息系统!(至少5个公园)求!求解!

定义一共结构体保存信息,然后可以增加、删除、查询、修改等操作了

img

代码如下:


#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXNMB 100

typedef struct _datainfo
{
    char name[20]; //名称
    char addr[20]; //地点
    char info[200]; //简介
}Datainfo;


const char* g_username = "admin"; //用户名
const char* g_pwd = "123456"; //密码


//登录
int login()
{
    char name[20], pwd[10];
    int tms = 0;

    system("cls");
    printf("-----------------欢迎使用湿地公园管理系统--------------------\n");
    printf("请输入用户名:");
    while (1)
    {
        scanf("%s", name);
        tms++;
        if (strcmp(name, g_username) == 0)
            break;
        else
        {
            if (tms == 3) //最多3次
            {
                printf("输出超过3次,请稍后再试!!\n");
                system("pause");
                return 0;
            }
            else
                printf("用户名错误,请重新输入:");
        }
    }
    tms = 0;
    printf("请输入密码:");
    while (1)
    {
        scanf("%s", pwd);
        tms++;
        if (strcmp(pwd, g_pwd) == 0)
        {
            printf("登录成功!!\n");
            system("pause");
            return 1;
        }
        else
        {
            if (tms == 3)
            {
                printf("输出错误次数超过3次,请稍后重试!\n");
                system("pause");
                return 0;
            }
            else
                printf("密码错误,请从新输入:");
        }
    }


}


//增加数据
void addInfo(Datainfo a[], int* nmb)
{
    system("cls");
    printf("请输入公园名称:");
    scanf("%s", a[*nmb].name);
    printf("请输入公园地址:");
    scanf("%s", a[*nmb].addr);
    printf("请输入公园简介:");
    scanf("%s", a[*nmb].info);
    *nmb += 1;
    printf("添加成功!\n");
    system("pause");
}

//删除数据
void deleteInfo(Datainfo a[], int* nmb)
{
    int i, j;
    char name[20] = { 0 };
    system("cls");
    if (*nmb == 0)
    {
        printf("当前暂无公园信息,请先添加\n");
        system("pause");
        return;
    }
    printf("请输入要删除的公园名称:");
    scanf("%s", name);
    for (i = 0; i < *nmb; i++)
    {
        if (strcmp(name, a[i].name) == 0)
        {
            for (j = i; j < *nmb - 1; j++)
                a[j] = a[j + 1];
            *nmb -= 1;
            printf("删除成功!\n");
            break;
        }
    }
    if (i == *nmb)
        printf("未找到该公园!\n");
    system("pause");
}

//修改
void changeInfo(Datainfo a[], int nmb)
{
    int i;
    char name[20] = { 0 };
    system("cls");
    if (nmb == 0)
    {
        printf("当前暂无公园信息,请先添加\n");
        system("pause");
        return;
    }
    printf("请输入要修改信息的公园名称:");
    scanf("%s", name);
    for (i = 0; i < nmb; i++)
    {
        if (strcmp(name, a[i].name) == 0)
        {
            printf("请输入公园名称:");
            scanf("%s", a[i].name);
            printf("请输入公园地址:");
            scanf("%s", a[i].addr);
            printf("请输入公园简介:");
            scanf("%s", a[i].info);

            printf("修改成功!\n");
            break;
        }
    }
    if (i == nmb)
        printf("未找到该公园!\n");
    system("pause");
}

//查找
void searchInfo(Datainfo a[], int nmb)
{
    int i;
    char name[20] = { 0 };
    system("cls");
    if (nmb == 0)
    {
        printf("当前暂无公园信息,请先添加\n");
        system("pause");
        return;
    }
    printf("请输入要查询的公园名称:");
    scanf("%s", name);
    for (i = 0; i < nmb; i++)
    {
        if (strcmp(name, a[i].name) == 0)
        {
            printf("公园名称:%s\n", a[i].name);
            printf("公园地址:%s\n", a[i].addr);

            printf("公园简介:%s\n", a[i].info);
            break;
        }
    }
    if (i == nmb)
        printf("未找到该公园!\n");
    system("pause");
}


//显示所有信息
void ShowAll(Datainfo a[], int n)
{
    int i;
    system("cls");
    for (i = 0; i < n; i++)
    {
        printf("公园名称:%s\n", a[i].name);
        printf("公园地址:%s\n", a[i].addr);
        printf("公园简介:%s\n", a[i].info);
        printf("------------------------------------\n");
    }
    system("pause");
}


int main()
{
    int choise;
    Datainfo a[MAXNMB];
    int nmb = 0;

    if (!login())
        return 0;


    while (1)
    {
        system("cls");
        printf("-----------------湿地公园管理系统--------------------\n");
        printf("    1.添加公园\n");
        printf("    2.修改公园信息\n");
        printf("    3.删除公园信息\n");
        printf("    4.查询公园信息\n");
        printf("    5.显示所有公园信息\n");
        printf("    0.退出系统\n");
        printf("请选择:");
        scanf("%d", &choise);
        switch (choise)
        {
        case 0:return 0;
        case 1:addInfo(a, &nmb); break;
        case 2:changeInfo(a, nmb); break;
        case 3:deleteInfo(a, &nmb); break;
        case 4:searchInfo(a, nmb); break;
        case 5:ShowAll(a, nmb); break;
        }
    }
    return 0;
}

设置5个函数,每个函数显示一个公园的简要信息

mark