C语言课程设计,商品库存管理系统怎么做啊?

Python016

C语言课程设计,商品库存管理系统怎么做啊?,第1张

首先要创建数据库啊,也就是一个txt文件,要让里面有内容啊。其次是你的增加删除商品种类,修改指定商品的数目之类的,具体看老师的要求。

例程(基本框架,具体的操作需进一步开发):

#include <stdio.h> 

#include <stdlib.h> 

#include <conio.h> 

#include <memory.h>

int count=0

struct commodity

{

int id  /*商品编号*/

int number  /*库存数量*/

int price   /*单价*/

char name[20]  /*商品名称*/

char indate[9]  /*入库时间*/

char deadline[9] /*有效日期*/

}a[100]

void page_title(char *menu_item) 

printf("【商品库存管理系统】\n",menu_item) 

void return_confirm(void) 

printf("\n按任意键返回……\n") 

getch() 

}

void insert(void)     /*1插入*/

int search(void)     /*2商品信息的查询*/

}

void del(void)       /*3删除*/

void sort()        /*4排序*/

}

int modify(void)    /*5修改*/

{

}

int main(void)

{ menu: page_title("操作选单") 

printf("\t\t\t 1 信息查询\t2 全部商品\n\n") 

printf("\t\t\t 3 商品增加\t4 商品删除\n\n") 

printf("\t\t\t 5 信息修改\t0 退出程序\n\n ")

switch(getch()) 

case '1' : search()break 

case '2' : sort()break 

case '3' : insert()break 

case '4' : del()break

case '5' : modify()break

case '0' : exit(0) 

goto menu

   return 0

}

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

typedef struct node{

char no[20]//存放编号

char name[40]//存放名称

int reserve//库存

struct node *next

}NODE

typedef struct link{

NODE *front//头指针

NODE *rear//尾指针

}LINK;

NODE *create_node(void){

NODE *node = (NODE *)malloc(sizeof(NODE))

printf("请输入货物编号:")

gets(node->no)

printf("请输入货物名称:")

gets(node->name)

printf("请输入货物名称:")

char ch

while( (ch= getchar()) != '\n')//rewind(stdin)

scanf("%d",&node->reserve)

node->next = NULL

return node

}

void init_link(LINK *link){

link->rear = NULL

link->front = NULL

}

int link_empty(LINK *link){

return link->front == NULL ? 1: 0

}

int node_num(LINK *link){

int num = 0

if( link_empty(link)){

return num

}

num = 1

NODE *node = link->front

while(node != link->rear){

node = node->next

++num

}

return num

}

/*NODE *node_find(LINK *link,const int n){

int num = node_num(link)

if(num <n){

printf("公有节点%d个,无法找到第%d个节点\n",num,n)

}

else{

}

}

*/

void node_push(LINK *link){

NODE *node = create_node()

if(link->front == NULL){

link->front = node

link->rear = node

node->next = NULL

}

else{

link->rear->next = node

link->rear = node

node->next = NULL

}

}

void node_insert(LINK *link,const int n){

int num = 0,i = 1

NODE *node = link->front

NODE *new_node = NULL

if ( link_empty(link) ){

printf("链表为空,将建立链表!\n")

node_push(link)

}

else{

if( n <= 1){

printf("在链表头插入数据\n")

new_node = create_node()

new_node->next = link->front

link->front = new_node

}

else if( n>= num = node_num(link) ){

printf("节点数少于%d,将在末尾插入节点.\n",n)

node_push(link)

}

else{

printf("在第n个节点后插入数据\n")

if(num >= n){

while( i != n){

node = node->next

++i

}

new_node = create_node()

new_node-next = node->next

node->next = new_node

}

}

}

void find_node_insert(LIKNK *link,const char *name){

NODE *node = link->front

if( link_empty(link) )

node_push(link)

else {

while(strcmp(node->name,name) != 0){

if(node != link->rear)

node = node->next

else break

}

if(node != NULL){

NODE *new_node = create_node()

new_node-next = node->next

node->next = new_node

}

else {

printf("没有找到相关货物,将在头节点插入数据\n")

intsert(link,0)

}

}

/*由于我不知到你对货物统计具体实现的要求,关于货物数量统计就你自己写了,应该比较简单。*/

/* 代码没有具体运行过,如果你学过C结构体与指针,就这个代码思路应该看得明白,真正的实现你自己实现吧

这样对你会更好写。可能会有错误的地方,请谨慎。 */