精华内容
下载资源
问答
  • 小商品管理系统

    2021-01-19 21:33:35
    对这些商品的操作有:商品的进库(增加某类商品及其库存量),商品的出库(减少某类商品及其库存量),某类货品总价格的计算。要求自行设计数据结构,用类的继承与派生关系将上述的各种货品表示出来,并使用类的构造函数...

    假设某商店有如下几种货品:衬衣、帽子、立柜。每一种货物都有与其关联的说明信息。

    衬衣:单价、产地、布料;

    帽子:单价、产地、布料、样式(平顶或尖顶);

    立柜:单价、产地、木料、颜色。

    对这些商品的操作有:商品的进库(增加某类商品及其库存量),商品的出库(减少某类商品及其库存量),某类货品总价格的计算。

    要求自行设计数据结构,用类的继承与派生关系将上述的各种货品表示出来,并使用类的构造函数来初始化每一类对象的初始数据。而后将上述的商品管理计算机化,完成操作要求的功能。

    二、实验过程(实验步骤、记录、数据、)

    #include

    #include

    using namespace std;

    class Shirt

    {

    public:

    Shirt(double p=21,int n=21,string a="江西",string c="棉质"):price(p),num(n),area(a),cloth(c){}

    friend Shirt operator + (Shirt &sh,int a);

    Shirt operator - (int a);

    void input();

    void output();

    void change();

    double sum();

    double price;

    int num;

    string area;

    string cloth;

    };

    class Hat:public Shirt

    {

    public:

    Hat(double p=21,int n=21,string a="江西",string c="棉质",string h="平顶"):Shirt(p,n,a,c),stytle(h){}

    friend Hat operator + (Hat &h1,int a);

    Hat operator - (int a);

    void input();

    void output();

    void change();

    // double sum();

    string stytle;

    };

    class Closet :public Shirt

    {

    public:

    Closet(double p=21,int n=21,string a="江西",string c="白桦",string h="紫色"):Shirt(p,n,a,c),tree(c),colour(h){}

    void input();

    void output();

    // double sum();

    void change();

    string tree;

    string colour;

    };

    double Shirt::sum()

    {

    return num*price;

    }

    void Shirt::input()

    {

    cout<

    cin>>price;

    cout<

    cin>>num;

    cout<

    cin>>area;

    cout<

    cin>>cloth;

    }

    void Shirt::output()

    {

    cout<

    cout<

    cout<

    cout<

    }

    void Hat::input()

    {

    cout<

    cin>>price;

    cout<

    cin>>num;

    cout<

    cin>>area;

    cout<

    cin>>cloth;

    cout<

    cin>>stytle;

    }

    void Hat::output()

    {

    cout<

    cout<

    cout<

    cout<

    cout<

    }

    void Closet::input()

    {

    cout<

    cin>>price;

    cout<

    cin>>num;

    cout<

    cin>>area;

    cout<

    cin>>tree;

    cout<

    cin>>colour;

    }

    void Closet::output()

    {

    cout<

    cout<

    cout<

    cout<

    cout<

    }

    void Change(Shirt &s1,Hat &h1,Closet &c1)

    {

    int a;

    cout<

    cout<

    cin>>a;

    switch(a)

    {

    case 1: s1.change();break;

    case 2:h1.change();break;

    case 3:c1.change();break;

    }

    }

    void Shirt::change()

    {

    string c,c1;int a;

    cout<

    cin>>c;

    if(c=="单价")

    {cout<>price;cout<

    else if (c=="数量")

    {

    cout<>c1;

    if(c1=="增加")

    {cout<>a;num=num+a;cout<

    else if(c1=="减少")

    {cout<>a;num=num-a;cout<

    }

    else if(c=="产地")

    {cout<>area;cout<

    else if(c=="布料")

    {cout<>cloth;cout<

    }

    void Hat::change()

    {

    string c,c1;int a;

    cout<>c;

    if(c=="单价")

    {cout<>price;cout<

    else if (c=="数量")

    {

    cout<>c1;

    if(c1=="增加")

    {cout<>a;num=num+a;cout<

    else if(c1=="减少")

    {cout<>a;num=num-a;cout<

    }

    else if(c=="产地")

    {cout<>area;cout<

    else if(c=="布料")

    {cout<>cloth;cout<

    else if(c=="样式")

    {cout<>stytle;cout<

    }

    void Closet::change()

    {

    string c,c1;int a;

    cout<>c;

    if(c=="单价")

    {cout<>price;cout<

    else if (c=="数量")

    {

    cout<>c1;

    if(c1=="增加")

    {cout<>a;num=num+a;cout<

    else if(c1=="减少")

    {cout<>a;num=num-a;cout<

    }

    else if(c=="产地")

    {cout<>area;cout<

    else if(c=="布料")

    {cout<>tree;cout<

    else if(c=="颜色")

    {cout<>colour;cout<

    }

    void Sum(Shirt &s1,Hat &h1,Closet &c1)

    {

    cout<

    s1.output();

    h1.output();

    c1.output();

    cout<

    cout<

    cout<

    }

    int main()

    {

    Shirt  s1,s2;

    Hat  h1,h2;

    Closet c1,c2;

    char c;system("pause");

    system("mode con cols=90 lines=40");

    system("title 小商品管理");

    system("color  85");

    s1.output();h1.output();c1.output();

    cout<

    cin>>c;system("cls");system("pause");

    while(c=='Y')

    {

    Change(s1,h1,c1);

    cout<

    cin>>c;system("cls");system("pause");

    }

    cout<>c;system("cls");system("pause");

    if(c=='Y')

    {

    Sum(s1,h1,c1);

    }

    return 0;

    }

    展开全文
  • 用Python写一个简单的商品管理系统

    千次阅读 多人点赞 2021-03-09 19:44:37
    ##用Python写一个简单的商品管理系统 具体的代码 #商品信息管理系统 #实现功能:录入,查询,修改,下架,列出所有商品,退出系统 print("欢迎使用商品管理系统") infos = []#用来装商品信息,创建一个列表 while...

    具体的代码

    #商品信息管理系统
    #实现功能:录入,查询,修改,下架,列出所有商品,退出系统
    print("欢迎使用商品管理系统")
    
    infos = []#用来装商品信息,创建一个列表
    
    while True:
        print("*************")
        print("1、录入商品信息")
        print("2、查询商品信息")
        print("3、修改商品信息")
        print("4、下架某个商品")
        print("5、列出所有商品")
        print("6、退出管理系统")
        print("*************")
        num = int(input("请选择功能:"))
    
        #录入功能
        if num == 1:
            info = {}   #创建一个字典,来装商品信息
            name = input("名称:")
            price = input("价格:")
            cla = input("类别:")
            info['name'] = name
            info['price'] = price
            info['cla'] = cla
            infos.append(info)
            print("商品录入成功!\n")
    
        #查找功能
        elif num == 2:
            while True:
                print("1、根据商品的名称查找")
                # print("2、根据商品的价格区间查找")
                print("2、根据商品的价格查找")
                print("3、根据商品的类别查找")
                print("4、退出查找")
                num2 = int(input("请输入功能序号:"))
                if num2 == 1:
                    name2 = input("请输入你要查找的商品名称:")
                    flag = 0   #默认查找的商品不在里面
                    for i in infos:
                        if i.get('name') == name2:
                            print("名称:{}\n价格:{}\n类别:{}\n".format(i.get('name'),i.get('price'),i.get('cla')))
                            flag = 1
                    if not flag:
                        print("查无此商品!")
                elif num2 == 2:
                    price = input("请输入商品的价格:")
                    flag = 0
                    for i in infos:
                        if (i.get('price')== price):
                            print("名称:{}\n价格:{}\n类别:{}\n".format(i.get('name'), i.get('price'), i.get('cla')))
                            flag = 1
                    if not flag:
                        print("查无此商品!")
                elif num2 == 3:
                    flag = 0
                    cla = input("请输入要查找的类别:")
                    for i in infos:
                        if (i.get('cla') == cla):
                            print("名称:{}\n价格:{}\n类别:{}\n".format(i.get('name'), i.get('price'), i.get('cla')))
                            flag = 1
                    if not flag:
                        print("查无此商品!")
                elif num2 == 4:
                    break
        #修改商品信息
        elif num == 3:
            while True:
                print("1、修改商品的价格")
                print("2、修改商品的属性")
                print("3、退出修改")
                num3 = int(input("请输入你要修改的序号:"))
    
                if num3 == 1:
                    flag = 0
                    name3 = input("请输入商品的名称:")
                    for i in infos:
                        if i.get("name") == name3:
                            price = int(input("请输入修改后的价格:"))
                            i["price"] = price
                            print("更新后的商品信息")
                            print("名称:{}\n价格:{}\n类别:{}\n".format(i.get('name'),i.get("price"),i.get("cla")))
                            flag = 1
                    if not flag:
                        print("没有你要修改的商品")
    
                elif num3 == 2:
                    flag = 0
                    name3 = input("请输入商品的名称:")
                    for i in infos:
                        if i.get("name") == name3:
                            cla = input("请输入修改后的类别:")
                            i["cla"] = cla
                            print("更新后的商品信息")
                            print("名称:{}\n价格:{}\n类别:{}\n".format(i.get('name'), i.get("price"), i.get("cla")))
                            flag = 1
                    if not flag:
                        print("没有你要修改的商品")
                elif num3 == 3:
                    break
        #下架商品
        elif num == 4:
            flag = 0
            name = input("请输入你要下架的商品名称:")
            for i in infos:
                if i.get('name') == name:
                    #info.pop(i)#删除掉i的所有信息
                    infos.remove(i)#删除掉i的所有信息
                    print("删除成功!")
                    flag = 1
            if not flag:
                print("没有找到这个商品的信息!")
    
        #列出所有商品的信息
        elif num == 5:
            flag = 0
            #print("名称\t价格\t类别")
            for i in infos:
                print("{}\t{}\t{}".format(i.get('name'), i.get('price'),i.get('cla')))
                flag = 1
            if not flag:
                print("商品列表中没有商品信息!")
    
        elif num == 6:
            print("成功退出系统!")
            break
    
    展开全文
  • C语言——超市商品管理系统

    千次阅读 多人点赞 2021-04-05 18:31:32
    基于C语言超市商品管理系统 前言 在阅读本文之前,首先声明几点: 1、本人是一名大一小萌新,也是第一次再平台写文章,目的是想记录下自己当前的学习成果; 2、这个系统呢,是自己边看书、边百度进行编写的,并非纯...

    基于C语言超市商品管理系统

    前言

    在阅读本文之前,首先声明几点:
    1、本人是一名大一小萌新,也是第一次再平台写文章,目的是想记录下自己当前的学习成果;
    2、这个系统呢,是自己边看书、边百度进行编写的,并非纯原创,若有博主看到一些与自己内容相似或相同的还请不要见外哈 ^ _ ^;
    3、该系统的编译环境为Dev C++。

    一、系统需要实现怎样的功能?

    1、将录入的数据保存到文件、文件中的信息可以读取出来进行操作;
    2、对登陆的用户进行选择;
    3、对录入的数据进行相关的增、删、改、查操作;

    二、重头戏来啦

    1.需要的头文件

    #include <stdio.h>	//声明一些自带的输入输出函数(printf)、类型以及宏
    #include <stdlib.h>//系统中进行内存分配和一些数值的转换
    #include <string.h>//包含字符串的比较、复制(strcmp、strcpy)
    #include <windows.h>//获取Windows当前时间
    #include <conio.h>//登陆密码有关的函数
    

    用结构体定义该商品系统所需要的一些基本数据信息

    //商品信息
    typedef struct shop
    {
    	char type[20];		//种类 
    	char ID[30];		//名称 
    	char number[10]; 	//位置编号 	
    	char saltTime[20];	//销售时间 
    	char locality[20];	//产地 
    	char date[10];		//生产日期 
    	int salt;			//销量
    	char day[20];		//保质期 
    	float price;		//价格 
    	int amount;			// 库存数量 
    	struct shop *next; //指针域 	
    }SHOP;
    
    //声明的全局变量
    SHOP *head = NULL;  
    SHOP *p1 = NULL;	//全局变量 ,头指针head、p1 
    int count;			//全局计数点 
    
    
    
    
    

    2.函数代码实现

    //主函数
    int main()
    {
    	
    	int shopChoose;//选择登陆方式 
    	int flag = 1;//判断 
    	
    	while (flag == 1)
    	{
    		printf("\t\t\t\t\t   ╭  % ╮               ╭ ```╮  \n");
    	    printf("\t\t\t\t\t   (@^o^@) 超市管理系统 (⌒:⌒)\n");
    	    printf("\t\t\t\t\t   (~):(~)              (~)v(~) \n");
    		printf("%70s","\t\t┏┅┅┅┅┅┅┅┅┅┅┅┅┅☆\n");
    		printf("%66s","[ 1.管理员登陆  ]\n"); 
    		printf("%66s","[ 2.客户登陆    ]\n");
    		printf("%70s","\t\t┗┅┅┅┅┅┅┅┅┅┅┅┅┅┛\n");
    		printf("请选择:");
    		
    		scanf("%d",&shopChoose); 
    
    	  
    		switch(shopChoose)
    		{
    		case 1://管理员
    			system("pause"); 
    			system("cls");
    			set(); //选择管理员登陆后的下一级菜单目录
    			break; 
    		
    		case 2://客户
    			system("cls"); 
    			set1();//客户的下一级菜单目录
    			break;
    			
    		default:
    			printf("输入错误,请重新输入\n");
    			system("pause");//暂停,防止程序闪退
    			system("cls"); //清屏函数
    			break; 	
    		}	
    	}
    	printf("\n");
    	system("pause");
    	return 0;
    }
    
    //管理员登录的二级目录
    void set()
    {
    	int choose;			//用户输入的选择 
    	int ture = 1;		//循环判断真假 
    	
    	while(ture != 0)
    	{
    		
    		printf("\t\t\t\t\t   ╭  % ╮               ╭ ```╮  \n");
    	    printf("\t\t\t\t\t   (@^o^@) 超市管理系统 (⌒:⌒)\n");
    	    printf("\t\t\t\t\t   (~):(~)              (~)v(~) \n");
    		printf("%70s","\t\t┏┅┅┅┅┅┅┅┅┅┅┅┅┅☆\n");
    		printf("%66s","[ 1.注册账户    ]\n"); 
    		printf("%66s","[ 2.登陆账户    ]\n");
    		printf("%66s","[ 3.找回密码    ]\n");
    		printf("%70s","\t\t┗┅┅┅┅┅┅┅┅┅┅┅┅┅┛\n");
    		printf("请选择:");		
    
    		scanf("%d",&choose);
    		 
    		switch(choose)
    		{
    		case 1:	 
    			getchar();
    			system("cls");	
    			registers(); 	//注册账户
    			break; 
    			
    		case 2:		
    			progress();		//进度条 
    			system("cls");
    			Input_login();	//登录账户
    			getchar();
    			break;
    			
    		case 3:		
    			getchar();
    			reback();		//找回密码 
    			break;
    			
    		default:
    			getchar();
    			rewind(stdin);		//清除键盘缓存 
    			printf("输入错误,请重新输入!\n");
    			system("pause");
    			system("cls");
    			break;	 
    		} 
    	}
    }
    

    getchar();函数的相关作用

    这里所用到的登陆注册就是本人经修改之后的(增加了光标定位和睡眠函数(Sleep也就是进度条必须要用到的函数))

    再说一下关于密码隐藏的个人理解哈:
    在输入密码时,程序会将从键盘获取到的按键信息暂时存至数组中,不显示在电脑屏幕上,显示的就是"*"。

           
    		printf("\n\n");
    		printf("\t\t\t\t   │============================================│\n");
    		printf("\t\t\t\t   │ 请输入账号:             			│\n");
    		printf("\t\t\t\t   │============================================│\n");
    		
    		cursor(50,3);//光标定位函数(数学的二维坐标系理解)
    		scanf("%s",&a.id);
    
             while (1)
               {   
    	           if (strcmp(a.id, b.id)==0)         //如果有此用户名
    	           {
    	               break;       
    	           }
    	           
    	           else 
    	           {
    				if (fp == NULL)
    				{
    					printf("还未拥有注册信息,请注册\n");
    					system("pause");
    					system("cls");
    					set();
    				}
    					           	
    	           	
    	               if (!feof(fp))  //如果文件没有读完                            
    	            
    	               {
    	                   fread(&b, sizeof(struct The_users), 1, fp);
    	                   /*读出数据 b 存放的地址位置,内存大小,每次读取一个数据块 1 ,以读的方式打开文件*/ 
    	               }
    	               
    	               else 
    	               {
    	                   printf("此用户名不存在,请重新选择!\n");
    	                   
    					   Sleep(500); 
    	                   fclose(fp); 
    					   getchar(); 
    					   
    					   return;              
    	               }
    	               
    	           }
    	           
           }
           
        	printf("\n\n\n");
    		printf("\t\t\t\t   │============================================│\n");
    		printf("\t\t\t\t   │ 请输入密码:             			│\n");
    		printf("\t\t\t\t   │============================================│\n");
    	
    		cursor(50,8);
    
    	 	while( (a.pwd[i]=getch()) != 13 )//getch()返回值是一个键值,回车的键值是13
    		{									//将输入的密码存储在数组中在屏幕上输出‘* ’代替数字 
    			i++;
    			printf("*");//隐藏密码
    		}
    		a.pwd[i]='\0';//把最后的回车变成结束符(数组) 
    		printf("\n");
    		
        do{   
    	       
    		if (strcmp(a.pwd, b.pwd)==0)            /*如果密码匹配*/
    	           
    	       {  
    	          fclose(fp);         
    	          Sleep(500);
                  printf("\n\n\t\t\t\t\t\t登录进行中");            
                  Sleep(500);
                  printf(".");
                  printf(".");
    			  Sleep(500);
                  printf(".");
                  Sleep(500);
                  printf(".");
                  Sleep(500);
                  printf(".\n");
                  Sleep(1000);
                  fflush(stdin);
                  
    	          printf("\n\n\t\t\t\t\t\t登 录 成 功 !");
    	          Sleep(1000);
    	          system("cls"); 
    	          	          
    	          welcome(); //动画菜单   	          
    	          return;
    
    //这里应该可以用数据将代码的行数减少,but能力有限(555)
    void welcome()
    {
    	//Dev c++ 特有的变色服务
    	system("color F4");//变色、白底红字	
    	Windowstime();//显示当前Windows时间	 
    	printf("\n\n");
    	printf("\n\n\n\t\t\t\t");
    	printf("欢");
    	Sleep(120);
    	printf(" 迎");
    	Sleep(120);
    	printf(" 使");
    	Sleep(120);
    	printf(" 用");
    	Sleep(120);
    	printf(" X");
    	Sleep(120);
    	printf(" X");
    	Sleep(120);
    	printf(" X");
    	Sleep(120);
    	printf(" 超");
    	Sleep(120);
    	printf(" 市");
    	Sleep(120);
    	printf(" 商");
    	Sleep(120);
    	printf(" 品");
    	Sleep(120);
    	printf(" 管");
    	Sleep(120);
    	printf(" 理");
    	Sleep(120);
    	printf(" 系");
    	Sleep(120);
    	printf(" 统!");
    	Sleep(800);
    	printf("\n");
    	system("cls");
    	
    	menu();		//菜单 	
    }
    

    下面的几部分代码理解之后,直接就是高级程序员的操作(Ctrl +),嘿嘿嘿

    //进度条
    void progress()
    {
    	int i;
    	int j;
    	
    	system("cls");
    	
    	printf("\n\n\n\n\n\t\t\t\t    \033[0;33;40m     正 在 进 入 系 统,请 稍 后 . . .   \033[0m");
    	
    	const char* LastStr = "[--------------------------------------------------] 100%";
    	// 进度条标志,可以改用"*"或其它符号
    	const char ProgressIcon = '*';
    	// 进度每加5,进度条就会加一格,注意Step值要和LastStr中的"-"数量相匹配,两者相乘等于100
    	const int Step = 2;
    	// 总共需要多少进度标志,即LastStr中"-"的数量
    	const int IconMaxNum = 50;
     
    	printf("\n\n    \t\t\t\t");
    	for ( i = 0; i <= 100; ++i)
    	{
    		// -------------- 打印进度条 --------------
    		printf("<");
    		int currentIndex = i / Step;
    		for ( j = 0; j < IconMaxNum; ++j)
    		{
    			if (j < currentIndex)
    			{
    				printf("\033[0;33;1m%c", ProgressIcon); // 打印进度条标志
    			}
    			else
    			{
    				printf(" "); // 未达进度则打印空格
    			}
    		}
    		printf("> ");
    		// -------- 打印数字进度 ----------
    		printf("\033[0;35;0m%3d%%", i);
    		fflush(stdout);
    		                                // 每隔100ms打印一次,这里同时每隔100ms会让进度加1
    	 Sleep(3 * 10);
    		for ( j = 0; j < strlen(LastStr); ++j)  //strlen 字符串处理函数
    		{
    			printf("\b");               // 回删字符,让数字和进度条原地变化
    		}
    		fflush(stdout); //清空输出缓存区
    	}
    	
    	printf("\n\n");
    	return;
    	
    }
    
    /*------------------
     显示当前Windows时间
    -------------------*/
    
    void Windowstime()
    {
    	SYSTEMTIME sys; //所需头文件windows.h,获取windows的时间函数 
    	
    		printf("\t\t\t\t\t  当前时间为:");
    		GetLocalTime( &sys ); //获取系统时间到程序的函数 
    		printf( "%4d-%02d-%02d %02d:%02d \n",
    		
    		sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, 
    		sys.wSecond,sys.wDayOfWeek); //按照年/月/日 时/分/秒 星期几格式打印 
    		
    		printf("\n");
    		
    	return;
    }
    
    /*--------
     光标定位
    --------*/
    
    void cursor(int x, int y)
    {
    	COORD pos;			//COORD是Windows API中定义的一种结构 
    	HANDLE h;           //HANDLE:句柄
    	pos.X = x;
    	pos.Y = y;
    	h = GetStdHandle(STD_OUTPUT_HANDLE); //获得当前输出窗口的句柄
    	SetConsoleCursorPosition(h, pos);
    
    }
    
    
    

    光标定位
    有关光标定位的个人理解(数学的二维直角坐标系):
    以电脑屏幕左上角为坐标原点,竖向为X轴,横向为Y轴点位显示(X列,Y行)。

    
    /*--------- 
     管理员菜单
    ----------*/ 
    
    void menu()
    {
    	int select=1;
    	
    	while(select!=0)
    	{
    		
    	printf("\n\n\n");
    	printf("\t\t\t\t\t   ╭  ╮		    ╭ ```╮ \n");
    	printf("\t\t\t\t\t   (@^o^@) 超市商品管理系统 (⌒:⌒)\n");
    	printf("\t\t\t\t\t   (~):(~)                  (~)v(~) \n");
    	printf("\n\n");
    	printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    	printf("\t\t\t\t   │              超市商品管理系统              │\n");
    	printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    	printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   │ 1. 录入商品信息         2. 显示商品信息    │\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   │ 3.*保存商品信息         4. 读取商品信息    │\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   │ 5. 统计商品信息         6. 查询商品信息    │\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   │ 7. 修改商品信息         8. 删除商品信息    │\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   │ 9. 商品信息排序         0. 退出管理系统    │\n");
    	printf("\t\t\t\t   │                                            │\n");
    	printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    
    	Windowstime();		//windows当前时间 
    
    	printf("\t\t\t\t  请您选择(0-9):");
    	scanf("%d",&select);
    	
    		switch(select)
    		{
    		case 1://录入信息 
    			inputInformation();
    			break;
    			
    		case 2://打印信息 
    			showShop();
    			break;
    		
    		case 3://保存信息到文件
    			//saveInformation();
    			break; 
    		
    		case 4://读取文件信息 
    			readInformation();
    			break;
    		
    		case 5://统计信息 
    			infoShop();
    			break;
    		
    		case 6://查询信息
    			findInformation();
    			break;
    		
    		case 7://修改信息 
    			amendInformation();
    			break;
    		
    		case 8://删除 
    			delInformation();
    			break;
    			
    		case 9://排序
    		 	sortInformation();
    			break;		 
    								
    		case 0://退出程序 
    			getchar();
    			reout();	
    			return;
    			
    		default:
    			getchar();
    			rewind(stdin);//清除键盘缓存 
    			printf("输入错误,请重新输入!\n");
    			system("pause");
    			break; 
    		}
    	
    	}
    }
    
    

    C语言的运算符优先级

    /*-----------
     录入商品信息
    -----------*/
    
    void  inputInformation()
    {
    	
    	SHOP *p2 = NULL;//结构体指针 
    	int choose = 1;	
    	int chooses = 1;//循环判断真假 
    	
    	while (choose == 1)
    	{
    		system("cls");
    		
    		p2 = (SHOP *)malloc(sizeof(SHOP)); //为p2申请内存单元 
    		
    		inputDate(p2);//录入信息界面 
    		
            if (head == NULL) //判断是否为头结点 
    		{
                head = p1 = p2;
                p2->next = NULL;
            } 
    			else
    			{
    	            p1->next = p2;//p1指向p2
    	            p2->next = NULL;//p2指向空
    	            p1 = p2;//p2的值赋给p1
    		    }
    	        system("cls");
    	        
    	        printf("是否要继续录入商品信息  1.继续  2.退出\n");
    	        scanf("%d", &choose);
            
            
    			if(choose != 1 && choose != 2)
    			{
    			 	printf("选项有误,请重新输入!\n");
    			 	
    			 	printf("是否继续录入:1.继续     2.退出\n");
    			 	
    			 	scanf("%d",&choose);
    			 	
    		 		if(choose == 1)
    		 		{
    		 			continue;
    				 }
    					else
    					{
    					 	printf("输入有误,退出录入\n");
    					 	system("pause"); 
    					 	break;
    					}		
    			}	      		
        }  
          
    	system("cls"); //清屏	
    }
    
    

    传递参数(实参和形参)
    C语言参数传递的三种方式

    /*--------
     商品信息
     参数(p) 
    ---------*/
    
    void inputDate(SHOP *p)
    {
    	
    	printf("\n\n");
    	printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    	printf("\t\t\t\t   │                 超市商品信息               │\n");
    	printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    	printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 种类:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 名称:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 编号:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 价格:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 库存:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 销量:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 销售时间:		    			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 产地:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 生产日期:		      			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   │ 保质期:             			│\n");
    	printf("\t\t\t\t   │==========================================	│\n");
    	printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    
    	cursor(44,7);
    	scanf("%s",p->type);//种类 
    	
    	cursor(44,9);
    	scanf("%s",p->ID);//名称 
    
    	cursor(44,11);
    	scanf("%s",p->number);//编号 
    	
    	cursor(44,13);
    	fflush(stdin);
    	scanf("%f",&p->price);//价格 
    	getchar();
    
    	cursor(44,15);
    	fflush(stdin);
    	scanf("%d",&p->amount);//库存 
    
    	cursor(44,17);
    	scanf("%d",&p->salt);//销量 
    
    	cursor(47,19);
    	scanf("%s",p->saltTime);//销售时间 
    
    	cursor(44,21);
    	scanf("%s",p->locality);//产地 
    
    	cursor(47,23);
    	scanf("%s",p->date);//生产日期 
    
    	cursor(45,25);
    	scanf("%s",p->day);//保质期 
    
    	count++;//节点个数 +1 
    	
     } 
    
    	
    /*----------
     显示商品信息
     (管理员)
     传递参数 (p)  商品的相关信息
      
    -----------*/	
    
    void showShop(SHOP *p)
    {
    
    	if(head==NULL)
    	{
    		printf("目前尚未录入商品信息! 按任意键返回.\n");
            getch(); 
    		          
            system("pause");
    		system("cls"); 
    		                                                        //作用:按任意键程序继续向下执行
            return ;
            
    	}
    	
    	printf("商品信息如下:\n");
    	p = head;
    	 
    	printf("\t编号\t\t名称\t\t种类\t\t 价格\t\t库存\t\t销售日期\t销量\t产地\t生产日期\t保质期\n");
    
    	
    	while (p != NULL) 
    	{
    
    		printf("	%s		%5s	%12s		%.2f		%3d		%8s	%5d	%5s	%5s	%5s\n",p->number,p->ID,p->type,p->price,p->amount,p->saltTime,p->salt,p->locality,p->date,p->day); 
    		//getchar();
    		//getch();//按任意键继续打印 
    				
    		p=p->next;  
    		
    	}
    	
    	printf("\n");
    	printf("商品信息已全部打印完毕!");
    	printf("\n");
    	
    	system("pause");
    	system("cls");
    	
    	
    }	
    

    格式化输入输出(顾名思义对格式要求是很严格的,一个不好就直接GG)
    这里说一下文件操作可能出现的bug:
    1、代码的编写(空格);
    2、记事本的编码格式是否与系统默认的编码格式相等(Windows系统默认为GBK(ANSI))
    记事本编码格式的更改

    /*------------
     保存信息到文件
     (管理员)
     	{w} 
    -------------*/
    
    void saveInformation() 
    {
    	/*读取文件信息之后进行操作,将文件数据覆盖保存*/ 
    	
    	FILE *fp;//文件指针 
    	SHOP *p;//相关信息指针 
    	
    	p = head;
    	
        fp=fopen("e:\\shopping.txt","w");//写入文件信息(覆盖原数据) 
        
        if(fp==NULL)//判断文件是否正常打开 
        {
        	printf("不能打开文件!");
        	exit(1);
    	}
    	
    	while(p != NULL)//p2不为空时进行数据的录入
    	{
    		
    		fprintf(fp,"%10s	%10s	%10s		%lf	%d	%10s	%d	%10s	%10s	%10s\n",p->number,p->ID,p->type,p->price,p->amount,p->saltTime,p->salt,p->locality,p->date,p->day); 
    		p=p->next;
    		
    	}
    	
    	printf("文件保存成功!\n");
    	
    	Sleep(800);
    		system("pause");
    	system("cls");	
    	exit(1);
    		
    	if(fclose(fp))
    	{
    		printf("不能关闭文件!");
    		exit(1);
    	}		
    }
    

    C语言文件读写操作

    void saveInformation2() 
    {
    	
    	/*未进行读取文件的操作,进行其他的操作时为防止文件数据丢失在用户退出时进行数据的追加保存*/ 
    	
    	FILE *fp;//文件指针 
    	SHOP *p;//相关信息指针 
    	
    	p = head;
    	
        fp=fopen("e:\\shopping.txt","a+");//程序结束追加信息 
        
        if(fp==NULL)//判断文件是否正常打开 
        {
        	printf("不能打开文件!");
        	exit(1);
    	}
    	
    	while(p != NULL)//p2不为空时进行数据的录入
    	{
    		
    		fprintf(fp,"%10s	%10s	%10s		%lf	%d	%10s	%d	%10s	%10s	%10s\n",
    										p->number,p->ID,p->type,p->price,p->amount,p->saltTime,p->salt,p->locality,p->date,p->day); 
    		
    		p=p->next;
    		
    	}
    	printf("文件数据追加成功!\n");
    	
    	Sleep(800);
    
    	system("pause");
    	system("cls");	
    	exit(1);
    		
    	if(fclose(fp))
    	{
    		printf("不能关闭文件!");
    		exit(1);
    	}	
    }
    
    
    /*----------
     读取文件信息 
    -----------*/
    
    void readInformation()
    {
    /*	
    	这里注释掉的代码可以不用理他
    	//读取(非链表) 
    	FILE * fp;
    	char ch;
    	
    	if((fp=fopen("e:\\shopping.txt","r+"))==NULL)
    	{
    		printf("Cannot open the file!\n");
    		return ;
    	}
    	
    	ch=fgetc(fp);
    	
    	while(ch!=EOF)
    	{
    		printf("%c",ch);
    		ch=fgetc(fp);
    	}
    	
    	fclose(fp);
    	printf("\n读取成功...\n");
    	system("pause");
    	return ;
    
    }
    */
    
    
    	FILE *fp;	/*文件指针*/ 
    	SHOP *p;	/*结构体指针*/ 
    	
    	int i=0;	//节点个数 
    	
    	head=(SHOP *)malloc(sizeof(SHOP));	//申请内存单元 
    	head->next=NULL; 
    	
    	fp=fopen("e:\\shopping.txt","r");
    	
    	if(fp == NULL)
    	{
    		printf("打开文件失败!");
    		exit(1); 
    	}
    	
    	if(fp!=NULL)
    	{
    		p1 = head;
    		while(!feof(fp))//feof(始终在某个文件末尾)系统看光标位置后边是否有数据来选择是否继续读取 
    		{
    			p = (SHOP *)malloc(sizeof(SHOP));
    			p->next = NULL;
    			
    			fscanf(fp,"%10s	%10s	%10s	%f	%d	%10s	%d	%10s	%10s	%10s\n",p->number,p->ID,p->type,&p->price,&p->amount,p->saltTime,&p->salt,p->locality,p->date,p->day); 
    			printf("%10s	%10s	%10s	%f	%d	%10s	%d	%10s	%10s	%10s\n",p->number,p->ID,p->type,p->price,p->amount,p->saltTime,p->salt,p->locality,p->date,p->day); 
    
    			p1->next = p;	
    			p1 = p;
    			i++;	//赋值循环给节点 (自增) 
    			
    			if(i==1)
    			{
    				head=p1;
    			}
    		}
    	}
    	
    	if(fclose(fp))
    	{
    		printf("关闭文件失败");
    		exit(1); 
    	}
    	
    	//return head;	
    	printf("文件读取成功. . .");
    	printf("\n\n\n");
    	
    	system("pause");
    	system("cls");
    	
    	return;
     } 
     
    /*----------
     统计商品信息
    ----------*/
    
    void infoShop()
    {
    		SHOP *p;	//结构体指针
    		 
    		int temp = 0;//做判断
    		
    		p = head;/*头结点赋值给 p */ 
    	
    		printf("\t统计进行中,请稍后");
    	    Sleep(500);
    	    printf(".");
    	    Sleep(500);
    	    printf(".");
    		Sleep(500);
    	    printf(".");
    	    Sleep(500);
    	    printf(".");
    	    Sleep(500);
    	    printf(".");
    	    Sleep(500);
    	    printf(".\n");
    	    Sleep(1000);
    	    fflush(stdin);
    		printf("\t结果如下:\n");
    
    
    		while (p != NULL)
    		{
    		/*库存小于10的商品信息*/
    
    			if(p->amount < 50)
    				{
    					
    				printf("\n"); 
    				printf("销量:%d		编号:%s	名称:%7s	种类:%7s	 价格:%.2f	 库存:%d	销售日期:%7s	 产地:%7s	生产日期:%7s	保质期:%s \n", 
    							p->salt,p->number,p->ID,p->type,p->price,p->amount,p->saltTime,p->locality,p->date,p->day);					
    				printf("\n\t该进货了,亲^_^\n");
    				
    				temp = 1;
    			
    				}
    			p = p->next;
    				
    	 	} 
    		if (temp == 0)	
    			{
    				
    			printf("没有库存小于50的商品. . .\n");	
    			
    			}
    
    		printf("\n"); 
    		system("pause");
    		system("cls");
    		 
    	
    	
     } 
    
    /*-------
     查询信息
    (管理) 
    -------*/
    
    void findInformation()
    {
    	
    	SHOP *p2; //结构体
    	
    	
    	int opt_c;			//用户输入选项 
    	int ture = 1;
    	int flag = 0; 		//判断真假 
    	char s_ID[10];		//用户输入要查询的商品名称
    	char s_number[10];	//用户输入要查询的商品编号 
    	
    	p2=head;//p2赋值为头结点 
    	
    
    	while(ture == 1)
    	{		
    	
    		printf("\n");
    		printf("\t┌-^-^-^-^-^-^-^-^-┐\n");;
    		printf("\t |1、按照编号查询 |\n");
    		printf("\t |2、按照名称查询 |\n");
    		printf("\t |3、退出查询	|\n");
    		printf("\t└ V-V-V-V-V-V-V-V-┘\n");
    		
    		
    		printf("请选择:\n");
    		fflush(stdin);//清空键盘缓存 
    		scanf("%s",&opt_c);
    	
    		switch (opt_c)
    		{
    			case '1'://编号查询 
    				
    			system("pause");
    			system("cls");		//暂停和清屏 
    			
    			p2=head;
    			
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入编号:             			│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			
    			cursor(50,3);
    			scanf("%s",&s_number); 
    			flag = 0;
    		
    			while(p2 != NULL)
    			{
    				//flag = 1;
    				if(strcmp(s_number,p2->number) == 0)
    				{
    					
    						flag = 1; 
    						printf("\n\n");
    						printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    						printf("\t\t\t\t   │                 查询商品信息               │\n");
    						printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    						printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 种类:%s             			│\n",p2->type);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 名称:%s            			│\n",p2->ID);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 价格:%.2f            		\t│\n",p2->price);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 库存:%d            			│\n",p2->amount);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 销量:%d             			│\n",p2->salt);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 销售时间:%s            		│\n",p2->saltTime);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 产地:%s            			│\n",p2->locality);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 生产日期:	%s            		│\n",p2->date);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 保质期:%s             		\t│\n",p2->day);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    						
    					}
    
    			
    			p2=p2->next;
    				
    			}
    			if(flag == 0)
    			{
    				printf("查无此商品. . .");
    				printf("\n");
    				
    				break;
    			}
    			
    			system("pause"); 
    			system("cls");
    	
    			break;
    
    		
    		case '2'://名称查询 
    			
    			system("pause");
    			system("cls");
    			
    			p2=head;
    			
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入名称:             			│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    		
    			cursor(50,3);
    			scanf("%s",&s_ID); 
    			flag = 0;
    		
    			while(p2 != NULL)
    			{
    				//flag = 1;
    				if(strcmp(s_ID,p2->ID) == 0 )
    				{			
    				
    				
    						flag = 1;
    						printf("\n\n");
    						printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    						printf("\t\t\t\t   │                 查询商品信息               │\n");
    						printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    						printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 编号:%s             			│\n",p2->number);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 种类:%s            			│\n",p2->type);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 价格:%.2f            		\t│\n",p2->price);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 库存:%d            			│\n",p2->amount);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 销量:%d             			│\n",p2->salt);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 销售时间:%s            		│\n",p2->saltTime);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 产地:%s            			│\n",p2->locality);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 生产日期:	%s            		│\n",p2->date);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 保质期:%s             			│\n",p2->day);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    						
    						
    					}
    			
    			p2=p2->next;
    				
    			}
    			
    			if(flag == 0)
    			{
    				printf("查无此商品. . .");
    				printf("\n");
    				system("pause");
    				system("cls");
    				break;
    			}
    			
    			system("pause"); 
    			system("cls");
    
    			
    			break;
    		
    		case '3'://退出
    			printf("感谢使用!\n");
    			return; 
    		
    			 
    		default:
    			getchar();
    			printf("输入错误,请重新输入:\n");
    			system("pause"); 
    			break;
    			
    		}
    		
    	}
    	 
    }
    
    
     
    /*-------
     修改信息
    -------*/
    
    void amendInformation()
    {
    	
    	SHOP *p2; //初始化结构体指针p2 
    	
    	int opt_c;	//用户输入选项 
    	//int choose; 
    	int flag;	//判断真假 
    		
    	char s_ID[10];	//按照名称
    	char s_number[10];	//按照编号 
    	
    	int content; 	//用户输入选项 
    	int content1; 	//用户输入选项 
    	 
    	p2=head;
    	
    	
    	printf("\n");
    	printf("\t┌-^-^-^-^-^-^-^-^-┐\n");;
    	printf("\t |1、编号查询修改 |\n");
    	printf("\t |2、名称查询修改 |\n");
    	printf("\t |3、退出修改		|\n");
    	printf("\t└ V-V-V-V-V-V-V-V-┘\n");
    	
    	
    	//rewind(stdin);
    	printf("请选择:\n");
    	scanf("%d",&opt_c);
    	
    		
    	while(opt_c != 3)
    	{
    		
    		if(opt_c == 1)//编号查询 
    		{		
    		
    			system("pause");
    			system("cls");
    			
    			p2=head;
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入商品编号:             		│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			cursor(54,3);
    			scanf("%s",&s_number); 
    			flag = 0;
    			
    			while(p2 != NULL)
    			{
    				if(strcmp(s_number,p2->number) == 0)
    				{			
    					flag = 1;
    					printf("\n\n");
    					//p2 = head;
    					printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    					printf("\t\t\t\t   │                 修改商品信息               │\n");
    					printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    					printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 1.种类:%s             			│\n",p2->type);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 2.名称:%s            			│\n",p2->ID);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 3.价格:%.2f            			│\n",p2->price);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 4.库存:%d            			│\n",p2->amount);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 5.销量:%d             			│\n",p2->salt);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 6.销售日期:%s            		│\n",p2->saltTime);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 7.产地:%s            			│\n",p2->locality);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 8.生产日期:%s            		│\n",p2->date);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 9.保质期:%s             		│\n",p2->day);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    					fflush(stdin);
    					
    					printf("请输入要修改的内容选项:\n");
    					scanf("%d",&content);
    				
    					switch (content)
    					{
    						case 1:
    							printf("请输入商品种类:\n");
    							scanf("%s",p2->type); 
    							break;
    							
    						case 2:
    							printf("请输入商品名称:\n");
    							scanf("%s",p2->ID); 
    							break;
    							
    							
    						case 3:
    							printf("请输入商品价格:\n");
    							scanf("%f",&p2->price); 
    							break;
    							
    							
    						case 4:
    							printf("请输入商品库存:\n");
    							scanf("%d",&p2->amount); 
    							break;
    							
    							
    						case 5:
    							printf("请输入商品销量:\n");
    							scanf("%d",&p2->salt); 
    							break;
    							
    						case 6:
    							printf("请输入商品销售日期:\n");
    							scanf("%s",p2->saltTime); 
    							break;
    							
    						case 7:
    							printf("请输入商品产地:\n");
    							scanf("%s",p2->locality); 
    							break;
    							
    						case 8:
    							printf("请输入商品生产日期:\n");
    							scanf("%s",p2->date); 
    							break;
    							
    						case 9:
    							printf("请输入商品保质期:\n");
    							scanf("%s",p2->day); 
    							break;
    							
    						default:
    							printf("输入错误,请重新输入\n");
    							break;
    								
    					}
    				
    				}
    			 
    				p2 = p2->next;
    			}
    			
    			if(flag == 0)
    			{
    				printf("无该商品相关信息. . .");
    				printf("\n");
    				break;
    			}
    			
    			printf("修改进行中");
    			
                Sleep(500);
                printf(".");
                Sleep(500);
                printf(".");
    			Sleep(500);
                printf(".");
                Sleep(500);
                printf(".");
                Sleep(500);
                printf(".");
                Sleep(500);
                printf(".\n");
                Sleep(1000);
                fflush(stdin);
                
    			printf("修改成功!\n");
    			
    			Sleep(500);
    			printf("请返回打印查看. . . \n"); 
    			return menu();
    			
    		}	
    		
    		else if(opt_c == 2 )//名称查询修改 
    		{
    			
    			system("pause");
    			system("cls");
    			
    			p2=head;
    			
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入名称:             			│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    		
    			cursor(50,3);
    			scanf("%s",&s_ID); 
    			flag = 0;
    			
    			
    			while(p2 != NULL)
    			{
    				if(strcmp(s_ID,p2->ID) == 0)
    					{ 
    						flag = 1;
    						printf("\n\n");
    						
    						p2 = head;
    						 
    						printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    						printf("\t\t\t\t   │                 修改商品信息               │\n");
    						printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    						printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 1.编号:%s             			│\n",p2->number);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 2.种类:%s            			│\n",p2->type);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 3.价格:%.2f            	  	\t│\n",p2->price);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 4.库存:%d            			│\n",p2->amount);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 5.销量:%d             			│\n",p2->salt);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 6.销售时间:%s            		│\n",p2->saltTime);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 7.产地:%s            			│\n",p2->locality);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 8.生产日期:%s            		│\n",p2->date);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 9.保质期:%s             		│\n",p2->day);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    					
    						fflush(stdin);
    				
    						printf("请输入要修改的内容选项:\n");
    						scanf("%d",&content1);
    						
    						switch (content1)
    						{
    							case 1:
    								printf("请输入商品编号:\n");
    								scanf("%s",p1->number); 
    								break;
    								
    							case 2:
    								printf("请输入商品种类:\n");
    								scanf("%s",p1->type); 
    								break;
    								
    								
    							case 3:
    								printf("请输入商品价格:\n");
    								scanf("%f",&p2->price); 
    								break;
    								
    								
    							case 4:
    								printf("请输入商品库存:\n");
    								scanf("%d",&p1->amount); 
    								break;
    								
    								
    							case 5:
    								printf("请输入商品销量:\n");
    								scanf("%d",&p1->salt); 
    								break;
    								
    							case 6:
    								printf("请输入商品销售日期:\n");
    								scanf("%s",p1->saltTime); 
    								break;
    								
    							case 7:
    								printf("请输入商品产地:\n");
    								scanf("%s",p1->locality); 
    								break;
    								
    							case 8:
    								printf("请输入商品生产日期:\n");
    								scanf("%s",p1->date); 
    								break;
    								
    							case 9:
    								printf("请输入商品保质期:\n");
    								scanf("%s",p1->day); 
    								break;
    								
    							default:
    								printf("输入错误,请重新输入:\n");
    								system("pause");
    								break;
    									
    							}
    												
    					}
    	
    				p2 = p2->next;
    				
    				}
    				
    				if(flag == 0)
    				{
    					printf("无该商品相关信息. . .");
    					printf("\n");
    					break; 
    				}
    								
    				printf("修改进行中");
    				
    	            Sleep(500);
    	            printf(".");
    	            Sleep(500);
    	            printf(".");
    				Sleep(500);
    	            printf(".");
    	            Sleep(500);
    	            printf(".");
    	            Sleep(500);
    	            printf(".");
    	            Sleep(500);
    	            printf(".\n");
    	            Sleep(1000);
    	            fflush(stdin);
    	            
    				printf("修改成功!\n");
    				printf("请返回打印查看. . . \n");
    				return menu();
    				
    			}
    		
    				
    		else if(opt_c == 3 )
    		{
    			printf("退出修改!\n");
    			return; 
    		}
    		else
    		{
    			printf("输入错误、已退出!\n");
    			system("pause");
    			return;
    		}
    		
    	}	
     } 
    
    
    /*--------
     删除信息
    --------*/
    
    void delInformation()
    {
    		
    		SHOP *p2;//判断的当前节点 
    		SHOP *pb;//要删除的节点数据 
    		SHOP *pf;//要删除的节点的前趋节点 
    		
    		p2 = head;
    		pf = head;
    		pb = head;
    				
    		int ture;
    		int flag;//判断真假 
    		
    		int option;//用户输入的选项
    		int s_option;//判断选项 
    		
    		char S_id[20];//临时存放名称 
    		char s_num[10];//临时存放编号 
    	
    	
    		printf("\n");
    		printf("\t┌-^-^-^-^-^-^-^-^-┐\n");;
    		printf("\t |1、查询编号删除 |\n");
    		printf("\t |2、查询名称删除 |\n");
    		printf("\t |3、退出删除		|\n");
    		printf("\t└ V-V-V-V-V-V-V-V-┘\n");
    		
    		rewind(stdin);
    		printf("请选择:");
    		scanf("%s",&option); 
    	
    
    		switch(option)
    		{
    		
    			case '1'://编号删除 
    		
    			system("pause");
    			system("cls");
    			
    			p2=head;
    			
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入商品编号:             		│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    		
    			cursor(54,3);
    			scanf("%s",&s_num); 
    			
    			while(pb != NULL )
    			{
    
    				if(strcmp(s_num,pb->number) == 0)
    				{
    					flag = 1;
    					printf("\n\n");
    					printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    					printf("\t\t\t\t   │                   	商品信息               │\n");
    					printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    					printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 1.种类:%s             			│\n",pb->type);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 2.名称:%s            			│\n",pb->ID);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 3.价格:%.2f            			│\n",pb->price);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 4.库存:%d            			│\n",pb->amount);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 5.销量:%d             			│\n",pb->salt);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 6.销售日期:%s            		│\n",pb->saltTime);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 7.产地:%s            			│\n",pb->locality);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 8.生产日期:%s	            	│\n",pb->date);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   │ 9.保质期:%s             		│\n",pb->day);
    					printf("\t\t\t\t   │==========================================	│\n");
    					printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    				
    				
    					printf("是否选择删除?\n");
    					printf("1--yse	0--no\n");
    				
    				
    					printf("请选择:");
    					scanf("%d",&s_option);
    					
    					
    					if(s_option == 1)
    					{
    						
    						if(pb == head)//判断pb是否指向头结点 
    						{
    							head=head->next;
    						}
    						else
    						{
    							pf->next=pb->next;//让pf的下一个节点等于pb的下一个节点 
    						} 
    						
    						
    						printf("删除进行中");
    			           
    					    Sleep(500);
    			            printf(".");
    			            Sleep(500);
    			            printf(".");
    						Sleep(500);
    			            printf(".");
    			            Sleep(500);
    			            printf(".");
    			            Sleep(500);
    			            printf(".");
    			            Sleep(500);
    			            printf(".\n");
    			            Sleep(1000);
    			            fflush(stdin);
    						
    						printf("数据删除成功!");
    						saveInformation1();//更新文件信息 
    						
    					}
    					else if(s_option == 0)
    					{
    						printf("取消删除!");
    					}
    				}
    				
    				pf=pb;
    				pb=pb->next;
    				
    			}
    			if(flag == 0)
    			{
    				printf("无该商品相关信息. . .");
    				printf("\n");
    			}
    			
    			break;
    			
    		case '2':
    		
    			system("pause");
    			system("cls");
    			
    			p2=head;
    			
    			printf("\n\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    			printf("\t\t\t\t   │ 请输入商品名称:             		│\n");
    			printf("\t\t\t\t   │==========================================	│\n");
    		
    			cursor(54,3);
    			scanf("%s",&S_id); 
    		
    			while(pb != NULL )
    				{
    	
    					if(strcmp(S_id,pb->ID) == 0)
    					{
    		
    						flag = 1;
    						printf("\n\n");
    						//p2 = head;
    						printf("\t\t\t\t   ╭═════════════════════════════════○●○●═══╮\n");
    						printf("\t\t\t\t   │                   	商品信息               │\n");
    						printf("\t\t\t\t   ╰═══○●○●═════════════════════════════════╯\n");
    						printf("\t\t\t\t   ┌───────────────────────────────────────────-┐\n");
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 1.编号:%s             			│\n",pb->number);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 2.种类:%s            			│\n",pb->type);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 3.价格:%.2f            			│\n",pb->price);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 4.库存:%d            			│\n",pb->amount);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 5.销量:%d             			│\n",pb->salt);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 6.销售日期:%s            		│\n",pb->saltTime);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 7.产地:%s            			│\n",pb->locality);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 8.生产日期:%s	            	│\n",pb->date);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   │ 9.保质期:%s             		│\n",pb->day);
    						printf("\t\t\t\t   │==========================================	│\n");
    						printf("\t\t\t\t   └────────────────────────────────────────────┘\n");
    					
    						printf("是否选择删除?\n");
    						printf("1--yse	0--no\n");
    					
    						printf("请选择:");
    						scanf("%d",&s_option);
    					
    						if(s_option == 1)
    						{
    							
    							if(pb == head)//判断pb是否指向头结点 
    							{
    								head=head->next;
    							}
    							else
    							{
    								pf->next=pb->next;//让pf的下一个节点等于pb的下一个节点 
    							} 
    							
    							printf("删除进行中");
    				            
    							Sleep(500);
    				            printf(".");
    				            Sleep(500);
    				            printf(".");
    							Sleep(500);
    				            printf(".");
    				            Sleep(500);
    				            printf(".");
    				            Sleep(500);
    				            printf(".");
    				            Sleep(500);
    				            printf(".\n");
    				            Sleep(1000);
    				            fflush(stdin);
    						
    							printf("数据删除成功!");
    							saveInformation1();//更新文件信息 
    							
    						}
    						else if(s_option == 0)
    						{
    							printf("取消删除!");
    						}
    						else
    						{
    						printf("输入错误,请重新输入\n");
    						continue;
    						} 
    					}
    					
    					pf=pb;
    					pb=pb->next;
    					
    				}
    				if(flag == 0)
    				{
    				printf("无该商品相关信息. . .");
    				printf("\n");
    				}
    				
    				break;	
    				
    			case '3':	//退出删除 
    				printf("感谢使用!\n");
    				break;
    				
    			default:
    				printf("输入错误,已退出!\n");
    				system("pause");
    				break; 
    						
    		} 
    	
    }
    

    单向链表的排序

    /*-------
     排序
    -------*/
    
    void sortInformation()
    {
    	
    	char choise;		//用户选项
    	
    	SHOP *pb;
    	SHOP *pf; 
    	SHOP temp;	//临时存放数据地址	
    	SHOP *p2;	//定义临时节点指针变量 
    	 
    	p2 = head;	
    	
    	while (choise != '3')
    	{ 
    	
    	printf("\n");
    	printf("\t┌-^-^-^-^-^-^-^-^-┐\n");;
    	printf("\t |1、依据库存排序 |\n");
    	printf("\t |2、依据价格排序 |\n");
    	printf("\t |3、退出	 |\n");  
    	printf("\t└ V-V-V-V-V-V-V-V-┘\n");
    	
    	printf("请选择:");
    	scanf("%s",&choise);
    	
    	//库存数量进行排序 
    	if (choise == '1')
    	{
    		p2=head;
    	    	if(p2 == NULL)
    			{	
    				//链表为空
    		        printf("无相关数据. . .\n");
    		        return ;
    		        
    	    	}
    	    	
    		    	if(p2->next == NULL) 
    				{	
    					//链表有1个节点
    			        printf("数据仅存在一条\n");
    			        return ;
    		   		}
    	    	
    				while(p2->next != NULL)	//p2的下一个节点不为空 
    				{	
    			        pb = p2->next;	//将该节点数据赋值给pb 
    			        
    			        while(pb != NULL) //pb不为空 
    					{
    						//从小到大排序 
    						//冒泡排序
    						 
    		            	if(p2->amount > pb->amount)//pb与p2进行比较 
    					 	{
    					 		
    						 	//交换数据 
    			                temp = *p2;	//取amount的值进行交换 放在临时空间 
    			                *p2 = *pb;	//pb的数据给p2 
    			                *pb = temp;	//临时存放的数据给pb 
    			                
    			                //将临时申请的节点与原有的链表节点进行连接
    			                temp.next = p2->next;
    			                p2->next = pb->next;
    			                pb->next = temp.next;
    			                
    		            	}
    		            	pb = pb->next;//pb指向尾
    		        	}
    		        	p2 = p2->next;//p2指向尾
    		    	} 
    		    printf("排序成功!请返回打印查看. . .\n");		
    			
    			}	
    		
    	
    		//价格进行排序 
    	  	else if(choise == '2')
    		{
    			
    			p2=head;
    		
    	    	if(p2 == NULL)
    			{	
    			//链表为空
    		        printf("无相关数据\n");
    		        return ;
    		        
    	    	}
    	    	
    		    	if(p2->next == NULL) 
    				{	
    					//链表有1个节点
    			        printf("数据仅存在一条\n");
    			        return ;
    		   		}
    		   		
    		    	while(p2->next != NULL)//以p2指向的节点为基准节点
    				{	
    			        pb = p2->next;//pb从基准点的下一个节点开始
    			        while(pb != NULL) 
    					{
    						//从小到大排序
    						//冒泡排序 
    		            	if(p2->price > pb->price)
    					 	{
    			                temp = *p2;
    			                *p2 = *pb;
    			                *pb = temp;
    			                temp.next = p2->next;
    			                p2->next = pb->next;
    			                pb->next = temp.next;
    			                
    		            	}
    		            	pb = pb->next;
    		        	}
    		        	p2 = p2->next;
    		    	} 
    	    	
    	    printf("排序成功!请返回打印查看. . .\n");
    	
    		}
    		
    		//退出 
    		else if(choise == '3')
    		{
    			break;
    			//return 1;
    		}
    			else
    			{
    				printf("输入错误请重新输入!\n");
    				system("pause");
    			}
    			
    	}
    	
    	
    }
    
    
    /*-------
     退出系统
    -------*/ 
    
    void reout()
    {
    	
    	char reoutback;		//定义选项选择变量
    	int flag = 1;		//判断 
    	
    	
    	while(flag)
    	{		
    		
    		printf("\n\n\n");
    		printf("\t\t\t 退出时系统会在保存的文件末尾进行文件数据的追加,如若读取了文件数据,请选择覆盖原数据退出");				
    		printf("\n\n\n\n");
    		printf("确定要退出?(1.追加数据文件并退出(未读取数据)     2.覆盖原数据并退出(已读取数据))\n");
    	
    		scanf("%d",&reoutback);
    		
    		if(reoutback == 1)
    		{
    			printf("感谢使用!\n");	//退出系统 
    			Sleep(1000);
    			saveInformation2();		//追加信息到文件 
    			exit(0);
    		}
    		
    		else if(reoutback == 2)
    		{
    			saveInformation();//覆盖原有数据进行保存
    		}
    		
    		else if(reoutback != 2)
    		{
    			printf("\n菜单选项有误,请重新输入\n");												
    		}
    		
       }
    
    }
    
    
    

    这个系统呢,是我一学期下来的成果,不是很完善,但我自己认为还是可以的,如果各位认为不是很好的话,还请手下留情(孩子最害怕暴力了,孩子需要鼓励,555)

    3.个人的一些感悟

    1、作为一个程序猿,最重要的就是代码结构要清晰!要清晰!清晰!(重要的事情说三遍!)这样以便于以后的修改和维护,强迫症看起来也会很舒服滴。
    2、函数名要见名知意,不能是那种ABC拼音啥的,那种的可读性不是很强,椰蓉哟引起烦躁的情绪,试想一下,你去一家公司接上一个辞职的员工未做完的项目,看到函数名是ABC,会怎样?(反正我是当场去世。 。 。 )
    3、最后要注意的就是代码内容的注释,就拿当前这个来举例,鄙人上边的那个代码注释还是对萌新比较友好的哈,我当时搜到的内容看的是一脸懵逼,如果你的那个代码写的是非专业人士都能看懂的那种的话,那就是很牛逼惹,至少我是这么认为的(普通人都能懂,更别说那些个专业人士了)。

    总结

    软件这一行发展是飞速的,你永远不知道你现在所使用的语言工具是否会在明天就被淘汰,所以,你只能不停地去奔跑,不停地去学习新东西,but学习也是要劳逸结合滴。
    最后的最后,送给萌新学生但又不局限于学生一句话:
    学如逆水行舟,不进则退;心似平原走马,易放难收;贵有恒,何必三更起五更眠;最无益,只怕是一日曝十日寒。
    ^ _ ^
    可以的话我们一起进步学习嘛. . . ^ _ ^(嘿嘿嘿)


    这个是源码链接哈,需要的自己提取哈

    链接:https://pan.baidu.com/s/1b2uL4QrNKw9HcNqtQl2_bA
    提取码:krk3

    展开全文
  • MFC超市商品管理系统学生成绩管理系统学生信息管理系统通讯录管理系统图书管理系统 序号 题目 数组保存数据 文件保存数据 数据库保存数据 1 超市商品管理系统 2 学生成绩管理系统 3 学生信息管理...

    MFC超市商品管理系统学生成绩管理系统学生信息管理系统通讯录管理系统图书管理系统

    序号题目数组保存数据文件保存数据数据库保存数据
    1超市商品管理系统
    2学生成绩管理系统
    3学生信息管理系统
    4通讯录管理系统
    5图书管理系统
    说明:1、数组保存数据题目难度为最低,文件其次,数据库难度最高;
    2、以超市商品管理系统为例,按难度分成了3个题,每题选题人数不超过4人;如果有兴趣其它类型题目的,可与指导老师联系;
    3、以上所有题目都应该具备的基本功能包括:(1)应用程序为MFC基于对话框的应用程序; (2)系统具备能够添加数据、修改数据、查询数据、删除数据等基本功能;(3)要求界面美观、简洁、易于上手;(4)定义数据类型合理;(5)功能合理。
    4、超市商品管理系统应具备的功能︰商品信息录入、查询、修改、删除等;商品库存查询,商品价格查询,盈利情况查询等;可扩展∶按身份不同操作界面(管理员、客户、收银员)、功能,提供登录界面(使用用户名密码登录),排序等
    5、学生成绩管理系统应具备的功能∶学生成绩信息的录入、查询、修改、删除等,按课程类型查询、平均分计算等;可扩展︰学分绩计算、按身份有不同界面功能(教师、学生)(教师可以修改信息、学生只能查询),提供登录界面((使用用户名密码登录),成绩排序等。
    6、学生信息管理系统应具备的功能︰学生信息的录入、查询、修改、删除等;按班级、专业查询,生源地查询等;可扩展︰按身份有不同界面功能(管理员、学生)(管理员可以修改信息、添加、删除信息,学生只能查询),提供登录界面(使用用户名密码登录),排序等。
    7、通讯录管理系统应具备的功能:通讯录信息的录入、查询、修改、删除等;按姓名、手机号查询,分组查询等;可扩展:对信息的修改、删除操作需要密码验证,模糊查询等。
    8、图书管理系统应具备的功能∶图书信息的录入、查询、修改、删除等;添加、借阅、归还图书(要注意图书库存的变化)等;可扩展:按身份具备不同操作界面和功能,提供登录界面(使用用户名密码登录),管理用户可以添加、修改、删除信息等功能,而学生用户只能查询、借阅、归还,其它功能。

    源码下载

    链接:源码下载链接
    提取码:1111

    展开全文
  • 超市商品管理系统(含附源代码)超市商品管理系统(含附源代码)黔南民族师范学院软件设计课程设计报告题 目: 超市商品管理系统系部名称:计科系专业名称:信息管理与信息系统班 级:B12计信班学号:1208045139学生姓名...
  • 简陋商品管理系统

    2021-03-26 11:34:29
    使用PHP语言开发一个商品管理系统,使用MySQL作为后台数据库,其中商品天添加、显示、删除和修改功能。包含一个自己写的文件上传函数。1.数据库代码CREATE DATABASE IF NOT EXISTS lamp39;CREATE TABLE goods(id INT...
  • java基本商品管理系统商品管理系统与我之前写过的电商系统、员工管理系统类似,更新的功能有同时修改商品名与价格、多项删除指定id商品,并在多项删除后退出系统系统需求 需求分析根据上述需求图,分析此商品管理...
  • printf("\t\t--------欢迎将进入商品管理系统----------------\n"); printf("\t\t|\t0.退出 |\n"); printf("\t\t|\t1.录入记录 |\n"); printf("\t\t|\t2.查找记录 |\n"); printf("\t\t|\t3.删除记录 |\n"); printf...
  • 基于JavaSwing+Mysql的超市商品管理系统设计和实现

    千次阅读 多人点赞 2021-08-17 07:21:47
    本项目是使用Java swing开发,可实现超市管理系统商品列表信息查询、添加商品信息和修改商品管理以及删除商品信息和安装商品信息查询等功能。界面设计和功能比较简单基础、适合作为Java课设设计以及学习技术使用。 ...
  • #include #include #include #include#include#include#define MAX 20#define PRINT1 printf("---------------------------------------------------------\n")#define PRINT2 printf("商品号--商品名称--商品种类--...
  • 商品管理系统(示例代码)

    千次阅读 2021-03-06 02:41:48
    需求:3、写一个商品管理的程序功能1:添加商品功能2:删除商品信息功能3:修改商品信息功能4:查看商品,输入all,查看所有商品,输入单个商品名称查看单个商品信息商品格式存在文件中,goods.json例子是在goods.py...
  • 商品管理系统Java实现

    千次阅读 多人点赞 2020-12-24 15:55:53
    商品管理系统 //主要功能,商品新增,查找,更改价格,以及删除 Java实现 商品类 public class Goods { //商品信息:商品名称,商品价格,商品销量,商品种类,商品品牌对应编号 private String goodsName; ...
  • 创建一个Product 类里面的成员有商品编号,商品名称,商品价格,以及实现商品编号,商品名称,商品价格的设置方法和获取方法 public class Product { private String No;//商品编号 private String name;//商品...
  • java商品管理系统

    2021-07-23 10:41:55
    项目功能: 添加商品、修改商品商品出库、查询商品、查询所有、退出系统 项目资源压缩包
  • Java基础-基于List集合的超市商品管理系统该系统具有:查看所有商品功能,添加商品,删除商品,修改商品信息,退出功能具体实现:商品实体类:public class Goods {private Integer gid;private Double price;...
  • C语言超市商品管理系统题目:超市商品管理系统院系:信息科技学院专业:计算机科学与技术姓名:学号:指导教师:日期:桂林电子科技大学信息科技学院目录TOC \o "1-5" \h \z 1问题定义..32系统设计31总体设计3详细设...
  • product_tool.show_all() else: product_tool.find_card() elif selected==“0”: print(“欢迎再次使用【商品管理系统】”) break else: print(“输入错误,请重新输入”) 副页函数的代码 card_list = [] def show...
  • 10142_基于springboot的商品管理系统 技术 SpringBoot + Redis + MongDb + mysql 工具 eclipse + tomact + mysql + MongDb + jdk 功能详情: 登录 系统管理 商品管理 订单管理 用户管理
  • C++大作业——商品管理系统【附源代码】

    千次阅读 多人点赞 2021-03-31 23:15:34
    这一次我打算记录一下上学期期末老师让我们完成的一个大作业,就是一个商品管理系统的实验,花了不少时间呢,因为当时我很菜 。 完成这个实验感觉对函数的运用提高了,最显著的一个益处就是我对结构化编程有点感觉了...
  • C++的商品管理系统

    千次阅读 2021-11-19 01:40:37
    采用C++语言设计实现一个适合超市使用的进出货商品管理系统,实现商品的进货、销售、商品分类、营收管理、订单管理、管理员等功能。 二、系统分层数据流图 三、系统结构图 四、数据库设计 根据商品管理系统...
  • 一、系统介绍 1.开发环境 2.技术选型 3.系统功能 4.获取资源 二、系统展示 1.登录系统 2.查询商品信息 3.增加商品信息 4.更新商品信息 5.删除商品信息 三、部分代码 BussinessService LoginService 四...
  • C++ 超市商品管理系统

    千次阅读 2021-06-26 12:35:28
    点击查看:C++ 超市商品管理系统 文件大小:6.5M 操作系统:Windows10旗舰版 开发工具:DEV C++5.11 ...考虑到现实情况本组做了一个供顾客使用的商品信息查询系统和供超市管理员使用的商品信息管理系统。 ...
  • 企业商品进销存管理系统基于php和mysql技术开发,主要包含模块有1.商品模块;2.员工模块;3.库存报警模块;4.销售模块。角色有管理员和员工2个角色.适用于课程设计,毕设,二次开发等,程序编写采用新手写法,通俗易懂,...
  • 大家好,今天给大家演示一下由Java swing实现的一款简单的仓库商品管理系统,数据库采用的是mysql,本系统实现了两个角色层面的功能,管理员可以管理用户、仓库、商品信息等。普通用户登录后可以查看商品、仓库信息...
  • 一、问题要求 使用C++语言编写程序,模拟超市的商品销售、进货、库存等一些列增删改查的功能 二、源码与安装 源码下载链接 ... 安装教程 ...卸载项目直接运行项目根目录下的卸载超市商品管理系统.exe即可
  • 项目日志四:校园二手商品管理系统 李涵 -182210713119 文章目录项目日志四:校园二手商品管理系统前言一、项目概述1.1项目目标和主要内容1.2项目主要功能二、项目设计2.1项目总体框架2.2系统详细设计2.2.1数据库...
  • c语言商店商品管理系统设计报告与源代码.doc 1目录1系统分析21.1课程设计内容21.2系统功能需求分析21.3数据结构设计32系统设计32.1总体设计32.2详细设计42.2.1界面设计42.2.2各功能模块的设计63系统编码设计93.1main...
  • 商品管理系统是在myeclipse控制台实现的商品增删改查操作,较为普通,不是web端项目的那种,只能作为平时的实验,如果是课程设计的话应该制作web端那种。 项目建立了一个包为System2,其中有两个class文件,分别为...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 172,420
精华内容 68,968
关键字:

商品管理系统