销售管理系统设计C语言

销售管理系统设计C语言

第一次写的代码,C语言老师布置的期末课程设计作业,自我感觉还可以。当初在网上搜题找了好久都没找到可以看懂的(基础很差,所以此程序很简单易懂),实习周问了老师才总算写完了程序,不容易啊。最后希望这个代码可以给初学C语言的同学有所帮助

大一C语言老师布置的期末课程设计

#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
#include<string.h>
typedef struct                //定义结构体变量
{
	char date[10];              //表单日期 
	int c;                    //销售员号 
	int c1;                         //产品号 
	int c2;
	int c3;
	int c4;
	int c5;
} CP;

int main()                                                //主函数 
{
	int caidan();                                        //声明函数 
	int shur();
	int xianshi();
	int chazhao();
	int zengjia();
	int xiugai();
	int tongji(); 
	int a,i;
	caidan();
	printf("\n输入序号选择程序:");
	for(i=1;;i++)
	{
		scanf("%d",&a);  
		switch(a)
		{
			case 1:caidan();      //主菜单 
					break;
			case 2:system("cls");
					shur();        //便条输入 
					break;
			case 3:system("cls");
					xianshi();       //显示所有便条 
					break;
			case 4:system("cls");
					chazhao();       //查找数据 
					break;   
			case 5:system("cls");
					zengjia();      //增加便条 
					break;
			case 6:system("cls");
					xiugai();        //修改便条 
					break;
			case 7:system("cls");
					tongji();       //统计表单 
			        break;
		}
		if(a==0)
		{
			break;
		}
		printf("\n输入序号选择程序:");
	}
	return 0;
}

 

int caidan()                                                  //菜单函数
{
	printf("\n1:菜单\n2:输入\n3:显示\n4:查找\n5:追加\n6:修改\n7:统计\n0:退出\n"); 
}
int shur()                                               /*便条输入*/
{
	int i=0,num;                               //定义变量
	FILE *fp;
	CP t[100];
	printf("请输入要写的便条条数:\n");
	scanf("%d",&num);
	printf("日期 销售员   b1 b2 b3 b4 b5  ");
	for(i=0; i<num; i++)
//获取数据
	{
		printf("\n--------------------------------------------------------------\n");
		scanf("%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5);
	}
	if((fp=fopen("d:\\销售记录表.txt","ab"))==NULL)
	{
		printf("不能打开文件\n");
		exit(1);
	}
	for(i=0; i<num; i++)
	{
		fprintf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);         //打印数据到文档中
		fprintf(fp,"\r\n");
	}
	fclose(fp);
	printf("\n--------------------------------------------------------------\n");
	
	printf("输入成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 
}
int xianshi()                                            //输出表单 
{
	FILE *fp;
	char ch;
	if((fp=fopen("D:\\销售记录表.txt","r"))==NULL)
	{
		printf("0000");
		exit(0);
	}
	rewind(fp);
	printf("表单:\n日期\t销售员\t1号\t2号\t3号\t4号\t5号\n");
	printf("\n--------------------------------------------------------------\n");
	while((ch=fgetc(fp))!=EOF)
	{
		putchar(ch);
	} 
	printf("\n--------------------------------------------------------------\n");
	fclose(fp);
	
	printf("输出成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 
}
int chazhao()                                          //查找数据 
{
	FILE *fp;
	int i=0,a,b,n=0,k=1;
	char ch;
	CP t[100];
	if((fp=fopen("D:\\销售记录表.txt","r"))==NULL)
	{
		printf("0000");
		exit(0);
	}
	printf("查找销售员请输入1\n查找产品请输入2\n退出请输入3\n");
	scanf("%d",&a);
	if(a==1)
	{
		while(fscanf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5)!=EOF)    //提取数值 
		{
			i++;
			n++;  		
		}
		fclose(fp);
		printf("输入销售员编号:");
		scanf("%d",&b);
		printf("\n");
		printf("表单:\n日期\t销售员\t1号\t2号\t3号\t4号\t5号\n");
		printf("\n--------------------------------------------------------------\n");
		for(i=0;i<=n;i++)
			if(t[i].c==b)
			{
				printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
				k=0;
			}
		if(k)
			printf("无记录\n");
			
	printf("输出成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 
	}
	if(a==2)
	{
		while(fscanf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5)!=EOF)
		{
			i++;
			n++;
		}
		fclose(fp);
		printf("输入产品编号:");
		scanf("%d",&b);
		printf("\n");
		printf("表单:\n日期\t销售员\t1号\t2号\t3号\t4号\t5号\n");	
		printf("\n--------------------------------------------------------------\n");
		switch(b)
		{
			case 1:for(i=0;i<n;i++)
					if(t[i].c1!=0)
						printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
					break;
			case 2:for(i=0;i<n;i++)
					if(t[i].c2!=0)
						printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
					break;
						
			case 3:for(i=0;i<n;i++)
					if(t[i].c3!=0)
						printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
					break;
						
			case 4:for(i=0;i<n;i++)
					if(t[i].c4!=0)
						printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
					break;
						
			case 5:for(i=0;i<n;i++)
					if(t[i].c5!=0)
						printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
					break;
		}
		
	printf("输出成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 			
	}
	if(a==3)
	{
	printf("按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 	
	}
}
int zengjia()                                       //增加表单 
{
	int i=0,num;                               //定义变量
	FILE *fp;
	CP t[100];
	printf("请输入要写的便条条数:\n");
	scanf("%d",&num);
	printf("\n日期\t销售员\tb1\tb2\tb3\tb4\tb5\n");
	for(i=0; i<num; i++)
//获取数据
	{
		printf("\n--------------------------------------------------------------\n");
		scanf("%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5);
	}
	if((fp=fopen("d:\\销售记录表.txt","ab"))==NULL)
	{
		printf("不能打开文件\n");
		exit(1);
	}
	for(i=0; i<num; i++)
	{
		fprintf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);         //打印数据到文档中
		fprintf(fp,"\r\n");
	}
	fclose(fp);
	printf("--------------------------------------------------------------\n");
	printf("输入成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 
}
int xiugai()                                               //修改表单 
{
	FILE *fp;
	CP t[100];
	int a,i=0,n=0,b=1;

	if((fp=fopen("D:\\销售记录表.txt","r+"))==NULL)
	{
		printf("0000");
		exit(0);
	}
	while(fscanf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5)!=EOF)    //提取数值 
	{
		i++;
		n++;		
	}
	fclose(fp); 
	printf("\t日期\t销售员\tb1\tb2\tb3\tb4\tb5  \n");
	printf("\n--------------------------------------------------------------\n");
	for(i=0;i<n;i++,b++)
	{
			printf("%d:\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",b,t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
	}
	printf("请输入要修改第几个便条:");
	scanf("%d",&a);
	printf("\n");
	printf("%d:\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",a,t[a-1].date,t[a-1].c,t[a-1].c1,t[a-1].c2,t[a-1].c3,t[a-1].c4,t[a-1].c5);
	printf("\n请输入修改后的结果\n");
	printf("日期\t销售员\tb1\tb2\tb3\tb4\tb5  \n");
	printf("\n--------------------------------------------------------------\n");
	scanf("%s\t%d\t%d\t%d\t%d\t%d",t[a-1].date,&t[a-1].c,&t[a-1].c1,&t[a-1].c2,&t[a-1].c3,&t[a-1].c4,&t[a-1].c5);
	if((fp=fopen("D:\\销售记录表.txt","w"))==NULL)
	{
		printf("0000");
		exit(0);
	}
	for(i=0; i<n; i++)
	{
		fprintf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);         //打印数据到文档中
		fprintf(fp,"\r\n");
	}
	
	fclose(fp);
	
	printf("输入成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 	
}
int tongji()                                               //统计报表 
{	
	FILE *fp;
	int i,n,a1,a2,a3,a4,a5,b;                                            //n便条数,a产品数,b产品总额                
	CP t[100];
	a1=a2=a3=a4=a5=b=n=0;
	i=1;
	if((fp=fopen("d:\\销售记录表.txt","r"))==NULL)
	{
		printf("不能打开文件\n");
		exit(1);
	}
	while(fscanf(fp,"%s\t%d\t%d\t%d\t%d\t%d\t%d",&t[i].date,&t[i].c,&t[i].c1,&t[i].c2,&t[i].c3,&t[i].c4,&t[i].c5)!=EOF)    //提取数值 
	{
		i++;
		n++;		
	}
	printf("输出统计表单:\n");
    printf("\t日期\t销售员\tb1\tb2\tb3\tb4\tb5 \n");
    printf("\n--------------------------------------------------------------\n");
	for(i=1;i<=n;i++)
	{
			printf("\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t\n",t[i].date,t[i].c,t[i].c1,t[i].c2,t[i].c3,t[i].c4,t[i].c5);
			a1+=t[i].c1;
			a2+=t[i].c2;
			a3+=t[i].c3;
			a4+=t[i].c4;
			a5+=t[i].c5;
			b=a1+a2+a3+a4+a5;
	}
	printf("\n--------------------------------------------------------------\n");
	printf("\t\t便条数\tb1\tb2\tb3\tb4\tb5") ;
	printf("\n--------------------------------------------------------------\n");
	printf("统计:\t\t%d\t%d\t%d\t%d\t%d\t%d\n",n,a1,a2,a3,a4,a5);
	printf("总销售额:%d\n",b);
		
	printf("输出成功,按空格结束,并返回主菜单\n");   
	getch();
	caidan();                                              //主菜单 
}
  • 4
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值