c语言实现的货物管理系统实例代码(增加删除 查找货物信息等功能)

yizhihongxing

一、简介

货物管理系统可以帮助企业更好地管理其货品,是一套非常实用的管理系统。本文将介绍使用c语言实现的一套货物管理系统,包括增加、删除、查找货物信息等功能。

二、实现步骤

  1. 设计数据结构

首先,我们需要设计合适的数据结构用于存储货物信息。可以使用结构体来定义货物信息,例如:

struct goods {
    int id;
    char name[50];
    int quantity;
    float price;
};
  1. 实现增加功能

货物的创建是系统中非常重要的一个功能,我们需要先定义一个函数用于输入货物信息,然后再将其添加到货物信息列表中。例如:

void addGoods(struct goods goodsList[], int *count) {
    // 输入货物信息
    struct goods goods;
    printf("Input goods id: ");
    scanf("%d", &goods.id);
    printf("Input goods name: ");
    scanf("%s", goods.name);
    printf("Input goods quantity: ");
    scanf("%d", &goods.quantity);
    printf("Input goods price: ");
    scanf("%f", &goods.price);
    // 将货品加入货物信息列表中
    goodsList[*count] = goods;
    (*count)++;
}
  1. 实现删除功能

货品管理系统还需要支持删除货品的功能,为此,可以通过货物id来删除货品。例如:

void deleteById(struct goods goodsList[], int *count) {
    // 输入货物id
    int id;
    printf("Input goods id to delete: ");
    scanf("%d", &id);
    // 查找该货物并删除
    for(int i=0; i<*count; i++) {
        if (goodsList[i].id == id) {
            for(int j=i; j<*count-1; j++) {
                goodsList[j] = goodsList[j+1];
            }
            (*count)--;
            printf("Delete goods success!\n");
            return;
        }
    }
    printf("Goods not found!\n");
}
  1. 实现查找功能

货物管理系统还需要支持按货物id或名称查询功能。例如:

void searchById(struct goods goodsList[], int *count) {
    // 输入货物id
    int id;
    printf("Input goods id to search: ");
    scanf("%d", &id);
    // 查找该货物并输出信息
    for(int i=0; i<*count; i++) {
        if (goodsList[i].id == id) {
            printf("Goods id=%d, name=%s, quantity=%d, price=%.2f\n",
                    goodsList[i].id, goodsList[i].name, goodsList[i].quantity, goodsList[i].price);
            return;
        }
    }
    printf("Goods not found!\n");
}

void searchByName(struct goods goodsList[], int *count) {
    // 输入货物名称
    char name[50];
    printf("Input goods name to search: ");
    scanf("%s", name);
    // 查找该货物并输出信息
    for(int i=0; i<*count; i++) {
        if (strcmp(goodsList[i].name, name) == 0) {
            printf("Goods id=%d, name=%s, quantity=%d, price=%.2f\n",
                    goodsList[i].id, goodsList[i].name, goodsList[i].quantity, goodsList[i].price);
        }
    }
}

三、示例说明

下面展示两个示例,一个是添加货品,另一个是查找货品。

示例1:添加货品

int main() {
    struct goods goodsList[100];
    int count = 0;
    // 添加货物
    addGoods(goodsList, &count);
    return 0;
}

运行结果:

Input goods id: 1001
Input goods name: Apple
Input goods quantity: 10
Input goods price: 5.5

示例2:查找货品

int main() {
    struct goods goodsList[100];
    int count = 1;
    // 添加货物
    struct goods goods = {1001, "Apple", 10, 5.5};
    goodsList[0] = goods;
    // 查找货物
    searchByName(goodsList, &count);
    return 0;
}

运行结果:

Input goods name to search: Apple
Goods id=1001, name=Apple, quantity=10, price=5.50

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c语言实现的货物管理系统实例代码(增加删除 查找货物信息等功能) - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • C语言利用链表实现学生成绩管理系统

    C语言利用链表实现学生成绩管理系统的完整攻略分为以下几个步骤: 1. 设计数据结构 在设计链表之前,需要先设计数据结构来存储学生信息。通常会设计一个结构体,用来存储学生的姓名、学号、成绩等信息。例如: typedef struct Student { int num; // 学号 char name[MAXLEN]; // 姓名 int score; // …

    C 2023年5月23日
    00
  • C++课程设计之学生成绩管理系统

    C++课程设计之学生成绩管理系统攻略 1. 系统设计思路 学生成绩管理系统主要分为三个部分:学生信息管理、课程信息管理与成绩信息管理。本设计中,我们采用C++语言实现该系统。 学生信息管理:包括学号、姓名、性别、年龄等信息; 课程信息管理:包括课程名、课程编号、开课学期等信息; 成绩信息管理:包括学号、课程名、成绩等信息。 在该系统设计中,我们采用文件读写实…

    C 2023年5月23日
    00
  • c++ 数组定义及初始化详解

    C++ 数组定义及初始化详解 C++ 数组是一种集合相同类型数据的方式。在定义数组时,需要指定数组的数据类型,以及数组的大小。下面是数组的定义格式: 数据类型 数组名称 [数组大小]; 在数组定义后需要对数组进行初始化,否则数组中的元素可能会是未知状态。数组的初始化可以分为以下两种方式: 1.2.1 直接初始化 直接初始化是在定义数组时进行赋值,格式如下: …

    C 2023年5月23日
    00
  • C 存储类

    C 语言中的存储类指的是控制变量存储方式和生命周期的关键字。局部变量、全局变量和静态变量等都可以使用存储类关键字进行控制,以达到更加灵活的变量存储方式和更加符合实际需要的生命周期等效果。通常使用的存储类关键字有 auto、register、static、extern 四种。 下面我们来详细介绍一下“C 存储类”的使用攻略。 auto 存储类 auto 存储类…

    C 2023年5月10日
    00
  • C语言实现时区转换函数的实例

    C语言实现时区转换函数的实例 时区转换是编程中经常需要的一个功能。本文将为大家介绍如何使用C语言实现时区转换函数的实例,帮助大家快速掌握时区转换的实现方法。 什么是时区转换? 时区转换是将一个时间从一个时区转换到另一个时区的过程。由于地球是由多个时区组成的,因此如果在不同的时区中,同一时间点实际上在时钟上会显示不同的时间。时区转换可以让我们方便地在不同的时区…

    C 2023年5月23日
    00
  • C if else if ladder

    C 语言中的 if else if 梯形结构又被称作 if else if ladder,它是多个条件语句的嵌套,可以用来实现复杂的条件判断。以下是 if else if ladder 的完整使用攻略: 梯形结构语法格式 if (condition1) { statement1; } else if (condition2) { statement2; } …

    C 2023年5月9日
    00
  • office2019最新激活秘钥分享 附office2019免费版+激活工具

    Office2019激活秘钥分享及激活工具使用攻略 本文将为大家提供Office2019最新激活秘钥、Office2019免费版及激活工具的下载和使用方法,方便用户体验并提高工作效率。 Office2019最新激活秘钥分享 Office2019是微软推出的办公软件套装,被广泛用于商业、教育以及家庭等不同领域。以下是最新的Office2019激活秘钥: 键值1…

    C 2023年5月22日
    00
  • Win8系统下运行TurboC软件具体方法(图文)

    以下是详细讲解Win8系统下运行TurboC软件具体方法的完整攻略: 1. 确定TurboC软件版本 首先需要确定TurboC软件的版本,因为不同版本的TurboC安装方法略有不同。例如:TurboC++ 3.0需要使用DOSBox来运行,而TurboC++ 4.5可以直接在Windows下运行。在确定软件版本后,可以相应地选择合适的安装方法。 2. 下载T…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部