欢迎来到皮皮网官网

【易语言简单收费源码】【手机课堂源码】【海报diy源码】超市管理系统 c 源码

时间:2024-12-28 11:56:44 来源:仿韩剧网源码

1.���й���ϵͳ c Դ��
2.c语言 超市管理系统

超市管理系统 c 源码

���й���ϵͳ c Դ��

       typdef struct chao shi

       {

        char name[];//商品名

        int amount;//商品数量

        double price;// 商品价格

        struct chao shi*next;

       }linklist;

       linklist *creatlist();//创立链表return head;

       void insert(linklist*p);//传入链表的超市首地址,插入函数ps:插入就是管理增加啊!

       void change(linklist*p);//修改商品价格和数量!系统易语言简单收费源码

       void del(linklist*p);删除商品信息!超市

       void sort(linklist*p);//排序

       void find(linklist*p);//查找(里面包含输出)

       void output(linklist*p);//输出函数

       int menu()

       void main()

       ok!你自己会写了ba?管理手机课堂源码我做了一个学生信息管理系统你看看吧可以参考下!

       #include<stdio.h>

       #include<stdlib.h>

       #include<string.h>

       #define M 3

       typedef struct node

       {

       char sno[];

       char name[];

       int score[M];

       double avg;

       struct node *next;

       }linklist;

       int listlength(linklist*head);

       void output1(linklist*head);

       void output2(linklist*head);

       linklist *create()

       {

       linklist *head,系统海报diy源码*p,*t;

       int n,i,j;

       printf("请输入学生人数:");

       scanf("%d",&n);

       head=(linklist*)malloc(sizeof(linklist));

       t=head;

       for(i=0;i<n;i++)

       {

       p=(linklist*)malloc(sizeof(linklist));

       printf("输入学号:");

       scanf("%s",p->sno);

       printf("输入姓名:");

       scanf("%s",p->name);

       printf("输入%d门功课成绩:",M);

       for(j=0;j<M;j++)

       scanf("%d",&p->score[j]);

       printf("\n");

        t->next=p;

        t=p;

       }

       p->next=NULL;

       return head;

       }

       void insert(linklist*head)

       {

       linklist *p;

       int i,n,j;

       printf("输入你要插入的学生人数:");

       scanf("%d",&n);

       printf("你要插入的学生信息:\n");

       for(i=0;i<n;i++)

       { p=(linklist*)malloc(sizeof(linklist));

       p->next=head->next;

       head->next=p;

       printf("输入学号:");

       scanf("%s",p->sno);

       printf("输入姓名:");

       scanf("%s",p->name);

       printf("输入%d门功课成绩:",M);

       for(j=0;j<M;j++)

       scanf("%d",&p->score[j]);

       }

       }

       void del(linklist*head)

       {

       linklist *p,*q;

       char s[];

       printf("输入要删除学生的姓名:");

       scanf("%s",s);

       q=head;

       p=head->next;

       while(strcmp(p->name,s)!=0&&p)

       { q=p;

        p=p->next;}

       if(p==NULL)

       printf("无此人\n");

       else

       { q->next=p->next;

       free(p);}

       }

       void change(linklist*head)

       {

       linklist*p;//修改学生信息模块!

       int i,超市a[M];//M=3

       char s[];//存放学生姓名的数组!

       printf("输入你要修改数据的管理学生姓名:");

       scanf("%s",s);

       p=head->next;

       while(strcmp(p->name,s)!=0&&p)//遍历链表

       p=p->next;

       if(p==NULL)

       printf("无此人\n");

       else

       { printf("%s\t%s\t",p->sno,p->name);

       printf("请重新输入学生的%d门成绩:",M);

       for(i=0;i<M;i++)

       { scanf("%d",&a[i]);

       p->score[i]=a[i];}

       }

       }

       void sort(linklist*head)

       { double sum;//用学生的平均分进行排序!

        linklist *p,系统*q,*t;

       int i,j;

       double temp;

        int m=listlength(head);//求出链表长度的函数!(因为链表长度有变化所以写了这个函数)

       q=p=head->next;

       for(i=0;i<m;i++)

       {

       sum=0;

        for(j=0;j<M;j++)//求出学生M门功课的超市成绩平均分

        sum+=q->score[j];

        p->avg=sum/M;

       p=p->next;

       q=p;

       }

       output2(head);

       p=head->next;

       printf("有不及格科目的学生:\n");

       for(i=0;i<m;i++)

       { for(j=0;j<M;j++)

        if(p->score[j]<)

       { printf("%s\t%s\t",p->sno,p->name);

        for(j=0;j<M;j++)

       printf("%d ",p->score[j]);

       printf("\n");

       }

       p=p->next;

       }

       printf("\n");

       printf("学生成绩排序:\n");

        t=NULL;

       while(t!=head->next)

       {

       p=head;

       q=p->next;

       while(q->next!=t)

       {

       if(p->next->avg<q->next->avg)

       {

       p->next=q->next;

       q->next=q->next->next;

       p->next->next=q;

       }

       p=p->next;

       q=p->next;

       }

       t=q;

       }

       }

       int listlength(linklist*head)

       {

       int n=0;

       linklist*p;

       p=head->next;

       while(p)

       { n++;

       p=p->next;

       }

       return n;

       }

       int menu()

       {

       int m,i;

       printf("============================================================\n");

       printf("||1:录入学生数据 2:增加学生数据 ||\n");

       printf("||3:删除学生数据 4:改正学生数据 ||\n");

       printf("||5:排序 6:退出。 ||\n");

       printf("||=========================================================\n");

       printf("输入你要选择的管理功能:");

       i=scanf("%d",&m);

       system("cls");

       fflush(stdin);

       return m;

       }

       void output1(linklist*head)

       {

       linklist*p;

       int i;

       p=head->next;

       while(p)

       {

       printf("%s\t%s\t",p->sno,p->name);

       for(i=0;i<M;i++)

       printf("%d ",p->score[i]);

       p=p->next;

       printf("\n");

       }

       }

       void output2(linklist*head)

       {

       linklist*p;

       int i;

       p=head->next;

       while(p)

       {

       printf("%s\t%s\t",p->sno,p->name);

       for(i=0;i<M;i++)

       printf("%d ",p->score[i]);

       printf("%lf",p->avg);

       p=p->next;

       printf("\n");

       }

       }

       int main(void)

       {

        linklist*p;

        int k=0;

        do

        {

        k=menu();

        switch(k)

        {

        case 1:

        p=create();

        output1(p);break;

        case 2:insert(p);

        output1(p);break;

        case 3:del(p);

       output1(p);break;

        case 4:change(p);

       output1(p);break;

        case 5:sort(p);

        output2(p);break;

        case 6:exit(0);

        }

        }while(k>=1&&k<=6);

       return 0;

       }

c语言 超市管理系统

       æœ‰ä¸€ä¸ªå°åž‹è¶…市,出售N(N>=)种商品,设计并实现一个系统,完成下列功能:

       1. 保存及输出。超市中的各种商品信息保存在指定文件中,可以把它们输出显示。

       2. 计算并排序。计算每类商品的总价值(sum,单精度)及平均价(aver,单精度,输出一位小数),将每类商品按平均价从大到小的顺序排序打印出来。

       3. 统计。统计输出库存量低于的货号及类别。统计输出有两种以上(含两种)商品库存量低于的商品类别。

       1.2总体结构

       æœ¬ç¨‹åºä¸»è¦åˆ†ä¸ºå…«ä¸ªæ¨¡å—:主模块、信息输出修改模块、新建信息模块、排序模块、计算模块、统计模块1、统计模块2、打印模块。

       1) 主模块:通过调用各分模块实现功能;

       2) 信息输出修改模块:输出显示文件中商品信息内容,添加商品信息,删除商品信息,修改商品信息;

       3) 新建商品信息模块:建立一个新结构体,为链表存信息用,并且将信息保存在指定的文件中;

       4) 排序模块:把文件中顺序零乱的商品信息按单价的大小从高到低进行排序,放到链表里存储;

       5) 计算模块:将所有商品的价格与库存量进行累加求和;

       6) 打印模块:将商品信息按每类平均价格排序(从高到低)按顺序打印出来;

       7) 统计模块1:统计库存量低于的货名及类别;

       8) 统计模块2:统计商品库存量有2种以上(含2种)低于的商品类别。

       é™„ 录(程序清单)

       #include "stdio.h" /*输入,输出头文件*/

       #include "stdlib.h" /*申请空间头文件*/

       #include "string.h" /*对字符串加工头文件*/

       #include "conio.h" /*清屏头文件*/

       FILE *fp;

       int n=0; /*定义文件指针类型*/

       int i,j,a[4],m; /*定义整数类型*/

       float aver[4],sum[4],g[4],h; /*定义浮点类型*/

       char c[5]="elec"; /*定义字符数组类型*/

       char d[5]="comm"; /*定义字符数组类型*/

       char e[5]="food"; /*定义字符数组类型*/

       char f[5]="offi"; /*定义字符数组类型*/

       struct good /*定义结构体*/

       {

        int num; /*商品编号*/

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

        char kind[]; /*商品类型*/

        float price; /*商品价格*/

        char unit[]; /*商品单位*/

        int quantity; /*商品数量*/

        struct good *next; /*定义结构体指针类型*/

       }*head,*p1,*p2;

       struct good *createlist() /*创建链表函数*/

       {

        struct good *head1,*p1,*p2; /*定义结构体指针类型*/

        if((fp=fopen("goods message.txt","w"))==NULL) /*判断能否打开文件*/

        {

        printf("can not open the file");

        exit(0); /*结束程序*/

        }

        head1=(struct good *)malloc(sizeof(struct good)); /*申请头结点空间*/

        p1=head1;

        p2=head1;

        printf("

copyright © 2016 powered by 皮皮网   sitemap