This mini project is about department store all features required for department store are added in this programe.You can copy the source code and compile it in a code block.This project is perfect for your college mini project in C. Download Project from Github
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
#include<windows.h>
#define ANS 15
#define ACS 4
COORD coord={0,0}; // this is global variable
//center of axis is set to the top left cornor of the screen
void gotoxy(int x,int y)
{
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}
/*declaration of checking functions*/
void c_code(char[]);
int check(char[]);
/*structure declaration*/
typedef struct{
char name[ANS],code[ACS];
float rate;
int quantity;
}rec;
rec item;
/*declaration of display functions*/
void curser(int);
void dbill();
void d_mainmenu();
void display(rec *,int,int);
void window(int,int,int,int);
void dis_con();
void d_search();
void highlight(int,int);
/*declaration of main menu functions*/
void bill() ;
void edit();
void add();
void del();
void exit();
/*declaration of display submenu functions*/
void d_code();
void d_rate();
void d_quan();
void d_all();
/*start of main*/
int main()
{
d_mainmenu();
return 0;
}
void d_mainmenu()
{
int i;
char ch;
const char *menu[]={" Calculate Bill"," Add Goods"," Edit Goods"," Display All "," Search", " Delete Goods"," Exit"};
system("cls");
//textbackground(11);
//textcolor(0);
//_setcursortype(_NOCURSOR);
window(25,50,20,32);
gotoxy(33,18);printf("MAIN MENU");
for (i=0;i<=6;i++){
gotoxy(30,22+i+1);printf("%s\n\n\n",menu[i]);}
curser(7);
}
void d_search()
{
char ch;
int i;
const char *menu[]={" By Code"," By Rate"," By Quantity"," Back to main menu"};
system("cls");
//textbackground(11);
//textcolor(0);
window(25,50,20,32);
gotoxy(33,18);printf("SEARCH MENU");
for (i=0;i<=3;i++){
gotoxy(30,22+i+1);printf("%s\n\n\n",menu[i]);}
curser(4);
}
/*function for cursor movement*/
void curser(int no)
{
int count=1;
char ch='0';
gotoxy(30,23);
while(1){
switch(ch){
case 80:
count++;
if (count==no+1) count=1;
break;
case 72:
count--;
if(count==0) count=no;
break;
}
highlight(no,count);
ch=getch();
if(ch=='\r'){
if(no==7){
if (count==1) bill() ;
else if(count==2) add();
else if(count==3) edit();
else if (count==4) d_all();
else if (count==5) d_search();
else if (count==6) del();
else exit(0);
}
if(no==4){
if (count==1) d_code();
else if (count==2)d_rate();
else if (count==3) d_quan();
else d_mainmenu();
}
}
}
}
void highlight(int no,int count)
{
if (no==4){
//textbackground(11);
//textcolor(0);
gotoxy(30,23);printf(" By Code ");
gotoxy(30,24);printf(" By Rate ");
gotoxy(30,25);printf(" By Quantity ");
gotoxy(30,26);printf(" Back to main menu");
//textcolor(0);
//textbackground(2);
switch (count)
{
case 1:
gotoxy(30,23);
printf(" - By Code ");
break;
case 2:
gotoxy(30,24);
printf(" - By Rate ");
break;
case 3:
gotoxy(30,25);
printf(" - By Quantity ");
break;
case 4:
gotoxy(30,26);
printf(" - Back to main menu");
break;
}
}
if(no==7){
//textbackground(11);
//textcolor(0);
gotoxy (30,23);printf(" Calculate Bill ");
gotoxy (30,24);printf(" Add Goods ");
gotoxy (30,25);printf(" Edit Goods ");
gotoxy (30,26);printf(" Display All ");
gotoxy (30,27);printf(" Search ");
gotoxy (30,28);printf(" Delete Goods ");
gotoxy (30,29);printf(" Exit ");
//textcolor(0);
//textbackground(2);
switch(count){
case 1:
gotoxy (30,23);
printf(" - Calculate Bill ");
break;
case 2:
gotoxy (30,24);
printf(" - Add Goods ");
break;
case 3:
gotoxy (30,25);
printf(" - Edit Goods ");
break;
case 4:
gotoxy (30,26);
printf(" - Display All ");
break;
case 5:
gotoxy (30,27);
printf(" - Search ");
break;
case 6:
gotoxy (30,28);
printf(" - Delete Goods ");
break;
case 7:
gotoxy (30,29);
printf(" - Exit ");
break;
}
}
}
void bill()
{
char x[4]={0};
int j=29,q=0,size=0,i=1;
float total=0,gtotal=0;
FILE *file;
file=fopen("record.txt","r+b");
rewind(file);
system("cls");
dbill();
gotoxy(26,15);printf("enter \"end\" to finish input");
while(1){
gotoxy(25,18);printf(" ");
gotoxy(25,19);printf(" ");
gotoxy(25,18);printf("enter item code:");
scanf("%s",x);
if(strcmp(x,"end")==0)
break;
gotoxy(25,19);printf("enter quantity:");
scanf("%d",&q);
rewind(file);
while(fread(&item,sizeof(item),1,file)){
if((strcmp(item.code,x)==0)){
total=item.rate*q;
gotoxy(11,j);printf("%4d",i);
printf("%9s",item.name);
printf("%13d",q);
printf("%15.2f",item.rate);
printf("%13.2f",total);
gtotal=gtotal+total;
size=sizeof(item);
item.quantity=item.quantity-q;
j+=2; i++;
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
}
}
}
if(gtotal!=0){
gotoxy(30,j+5);
printf("TOTAL AMOUNT = NRs. %6.2f",gtotal);
}
fclose(file);
getch();
d_mainmenu();
}
/*function to display bill window*/
void dbill()
{
int i;
gotoxy(20,10);
//;
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(1);
gotoxy(32,25);printf("CUSTOMER'S BILL") ;
//textcolor(8);
gotoxy(13,27);printf("SN. Item Name Quantity Rate Total");
}
/*function to add records*/
void add ()
{
FILE *file;
char y[ACS],x[12];
system("cls");
//textbackground(11);
//textcolor(0);
gotoxy(25,25);printf("Enter new record(Y/N)?");
while(toupper(getche())=='Y'){
system("cls");
file=fopen("record.txt","ab");
c_code(y);
strcpy(item.code,y);
gotoxy(22,28);printf("Enter rate of the item:");
scanf("%f",&item.rate);
gotoxy(22,30);printf("Enter quantity of the item:");
scanf("%d",&item.quantity);
gotoxy(22,32);printf("Enter name of the item:");
scanf("%s",item.name);
fseek(file,0,SEEK_END);fwrite(&item,sizeof(item),1,file);
fclose(file);
gotoxy(22,34);printf("Enter new record(Y/N)?");
}
d_mainmenu();
}
/*function to check availability of code*/
void c_code(char y[])
{
int flag;
FILE *file;
file=fopen("record.txt","rb");
while(1){
system("cls");
window(20,58,23,36);
gotoxy(32,18);printf(" ADD ARTICLES ") ;
flag=1;
rewind(file);
gotoxy(22,25);printf("Enter new code of the article:");
scanf(" %[^\n]",y);
while(fread(&item,sizeof(item),1,file)==1){
if (strcmp(y,item.code)==0){
flag=0;
gotoxy(26,30);printf("code already exists");
gotoxy(29,32);printf("enter again");getch();
break;
}
}
if (flag==1)
break;
}
}
/*function for editing*/
void edit()
{
int flag=0,choice;
char x[ACS],y[ACS];
FILE *file;
int size;
system("cls");
//textcolor(0);
//textbackground(11);
window(20,63,20,46);
gotoxy(35,18);printf("EDIT RECORDS");
;
gotoxy(25,23);printf("enter item code: ");
scanf("%s",x);
flag=check(x);
if(flag==0){
file=fopen("record.txt","r+b");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)==0){
//textcolor(0);
gotoxy(25,27);printf("name = %s",item.name);
gotoxy(25,28);printf("code = %s",item.code);
gotoxy(25,29);printf("rate = %g",item.rate);
gotoxy(25,30);printf("quantity = %d",item.quantity);
gotoxy(25,32);; printf("do you want to edit this record(y/n):");
fflush(file);
if(toupper(getche())=='Y'){
//textcolor(0);
gotoxy(25,34); printf("1- edit name ");
gotoxy(25,35); printf("2- edit code ");
gotoxy(25,36); printf("3- edit rate ");
gotoxy(25,37); printf("4- edit quantity ");
gotoxy(25,39); ; printf(" enter your choice(1, 2, 3, 4) ");
scanf("%d",&choice);
switch(choice){
case 1:
system("cls");
window(23,48,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24); printf(" enter new name: ");
scanf("%s",item.name);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 2:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
c_code(y);
strcpy(item.code,y);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 3:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
printf(" enter new rate: ");
scanf("%f",&item.rate);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 4:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
printf(" enter new quantity: ");
scanf("%d",&item.quantity);
size=sizeof(item);
fseek(file,-size,1);fwrite(&item,sizeof(item),1,file);
break;
}
gotoxy(27,30);printf("--- item edited---");
break;
}
}
}
}
if (flag==1){
gotoxy(32,30);printf("item does not exist");
gotoxy(36,32);printf("TRY ABGAIN");
}
getch();
fclose(file);
d_mainmenu();
}
/*function to display all records*/
void d_all()
{
int i,j=1;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
fflush(file);
while(fread(&item,sizeof(item),1,file)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
gotoxy(27,47);/*textcolor(0)*/;printf("press any key to see more...........");
getch();
system("cls");
dis_con();
i=26;
continue;
}
}
getch();
if (i==26) {
gotoxy(24,30); printf("-- no articles found --");
}
getch();
fclose(file);
d_mainmenu();
}
/*function to display by quantity*/
void d_quan()
{
int i,j=1;
int a,b;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter lower range: ");
scanf("%d",&a);
gotoxy(16,21);printf("enter upper range:");
scanf("%d",&b);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((item.quantity>=a)&&(item.quantity<=b)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
gotoxy(27,47);printf("press any key to see more...........");
getch();
system("cls");
dis_con();
i=26;
continue;
}
}
}
getch();
if (i==26){
gotoxy(28,30); printf(" no item found ");
}
getch();
d_search();
fclose(file);
}
/*function to display by rate*/
void d_rate(){
int i,j=1;
float a,b;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter lower range: ");
scanf("%f",&a);
gotoxy(16,21);printf("enter upper range: ");
scanf("%f",&b);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((item.rate>=a)&&(item.rate<=b)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
gotoxy(27,47);printf("press any key to see more...........");
getch();
system("cls");
dis_con();
i=26;
continue;
}
}
}
getch();
if (i==26){
gotoxy(28,30); printf(" no item found ");
}
getch();
fclose(file);
d_search();
}
/*function to display by code*/
void d_code()
{
int i,j=1;
char x[4]={0};
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter item code: ");
scanf("%s",x);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((strcmp(item.code,x)==0)){
display(&item,i,j);
i++;
j++;
break;
}
}
if (i==26){
gotoxy(28,30); printf("no item found");
}
getch();
fclose(file);
d_search();
}
/*function to display window for item display*/
void dis_con()
{
int i;
system("cls");
gotoxy(20,10);
;
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(1);
gotoxy(32,17);printf("RECORDS") ;
//textcolor(8);
gotoxy(18,23);printf ("SN Item Name Item Code Rate Quantity");
}
/*function to display in screen*/
void display(rec *item,int i,int j)
{
gotoxy(16,i);//textcolor(13);
printf("%4d",j);
printf("%9s",item->name);
printf("%12s",item->code);
printf("%14.2f",item->rate);
printf("%11d",item->quantity);
}
/*function to delete records*/
void del()
{
int flag;
char x[ANS];
FILE *file,*file1;
system("cls");
//textbackground(11);
//textcolor(0);
window(23,51,25,34);
gotoxy(29,18);printf("DELETE ARTICLES");
gotoxy(27,27);printf("enter item code: ");
scanf("%s",x);
flag=check(x);
if(flag==0){
file1=fopen("record1.txt","ab");
file=fopen("record.txt","rb");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)!=0)
fwrite(&item,sizeof(item),1,file1);
}
gotoxy(27,29);printf("---item deleted---");
remove("record.txt");
rename("record1.txt","record.txt");
}
if (flag==1){
gotoxy(25,29);printf("---item does not exist---");
gotoxy(30,31);printf("TRY AGAIN");
}
fclose(file1);
fclose(file);
getch();
d_mainmenu();
}
/*function to check validity of code while editing and deleting*/
int check(char x[ANS])
{
FILE *file;
int flag=1;
file=fopen("record.txt","rb");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)==0){
flag=0;
break;
}
}
fclose(file);
return flag;
}
/*function to display box*/
void window(int a,int b,int c,int d)
{
int i;
system("cls");
gotoxy(20,10);
//textcolor(1);
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(4);
for (i=a;i<=b;i++){
gotoxy(i,17);printf("\xcd");
gotoxy(i,19);printf("\xcd");
gotoxy(i,c);printf("\xcd");
gotoxy(i,d);printf("\xcd");
}
gotoxy(a,17);printf("\xc9");
gotoxy(a,18);printf("\xba");
gotoxy(a,19);printf("\xc8");
gotoxy(b,17);printf("\xbb");
gotoxy(b,18);printf("\xba");
gotoxy(b,19);printf("\xbc");
//textcolor(4);
for(i=c;i<=d;i++){
gotoxy(a,i);printf("\xba");
gotoxy(b,i);printf("\xba");
}
gotoxy(a,c);printf("\xc9");
gotoxy(a,d);printf("\xc8");
gotoxy(b,c);printf("\xbb");
gotoxy(b,d);printf("\xbc");
//textbackground(11);
//textcolor(0);
}
kjl
ReplyDeleteCn u tell its modules
ReplyDeletei want to download and execute this program, please send me full project with form designs and source code
ReplyDeleteto my e-Id gloragabriel@gmail.com.
hello sir, can u send full source code of store management software to my email savitkumarkashyap@gmail.com.
ReplyDeletecan u pls snd me the full source code of this program and all ur c projects its urgent
ReplyDeletevaniaveasna@yahoo.com
hej.. I want to do this project at my own, can you please send me design modules to me because i am using osx and many of header files are not supported..
ReplyDeletemy id is farooqabb@gmail.com
nyc work
ReplyDeleteMay i know how you use the conio.h in codeblocks
ReplyDeleteI mean you used the Textcolor function in codeblocks.. But, I cannot
DeletePlz send dis code sir shahmanthan1209@gmail.com
ReplyDeletePlz send dis code sir shahmanthan1209@gmail.com
ReplyDeleteHi sir I need dis source code to run in fedora so plz send me source code
ReplyDeleteCan u please send me this source code ,I m using turbo c and it's not running.
ReplyDeleteDr.abhinavsrivastava@gmail.com
Such an advanced code...it works well.....I get most of it, but I got to study it as well hehehehe
ReplyDeleteSuch an advanced code...it works well.....I get most of it, but I got to study it as well hehehehe
ReplyDeletecan u please send me the code at dasgupta.sanhita04@gmail.com
ReplyDeletehyyy
ReplyDeleteactually this coed 100s of errors...?!?!
ReplyDeleteSCW, can you send me full source code of Departmen Store Management Project to my email ydaljir@gmail.com.
ReplyDeletesir send me this code at luqmanakram123@gmail.com
ReplyDeleteCan you send me full source code?? shazidhasanriam@gmail.com
ReplyDeleteThis comment has been removed by the author.
ReplyDeletecan you send me full source code to pvaldy@yahoo.com
ReplyDeleteplease, thank you
Plz send the code shamiunhasibbhuiyan@gmail.com
ReplyDeletePlz send the code shamiunhasibbhuiyan@gmail.com
ReplyDelete