Professional Documents
Culture Documents
Term Work -1
Implement a Shopping Cart System for An E-Store In C To Demonstrate The Various
Features Of User Defined Functions With The Following Functionalities.
1)Add Item
2)Delete Item
3)Display Item
4)Billing Information
#include <stdio.h>
#include <stdlib.h>
void main()
int scdetails[3][4]={
{0,0,0,0},
{0,1,10,2000},
{0,2,5,1000}
};
int origstock_count[3]={0,10,5};
int total=0,choice,pid,pqty;
for(;;)
scanf("%d",&choice);
switch(choice)
scanf("%d%d",&pid,&pqty);
total=addItem(scdetails,pid,pqty,total);
break;
Advance C Lab
case 2:printf("Enter Product ID And Quantity ");
scanf("%d%d",&pid,&pqty);
total=deleteItem(scdetails,pid,pqty,total);
break;
case 3:displayItem(scdetails,origstock_count);
break;
case 4:billing(scdetails,origstock_count);
break;
case 5:exit(1);
total=total+pqty*scdetails[pid][3];
scdetails[pid][2]-=pqty;
return total;
total=total-pqty*scdetails[pid][3];
scdetails[pid][2]+=pqty;
return total;
int i=1,item_cost;
do
item_cost=(origstock_count[i]-scdetails[i][2])*scdetails[i][3];
Advance C Lab
if(item_cost>0)
printf("%d\t%d\t%d\t",scdetails[i][1],(origstock_count[i]-scdetails[i][2]),item_cost);
i++;
}while(i<=2);
int i=1,item_cost;
do
item_cost=(origstock_count[i]-scdetails[1][2])*scdetails[1][3];
if(item_cost>0)
printf("%d\t%d",scdetails[i][1],(origstock_count[i]-scdetails[1][2]));
i++;
}while(i<2);
}
Advance C Lab
Output
Enter
1.Add
2.Delete
3.Display
4.Billing
5.Exit
Enter
1.Add
2.Delete
3.Display
4.Billing
5.Exit
Enter
1.Add
2.Delete
3.Display
4.Billing
5.Exit
1 2 4000 2 3 3000
Enter
1.Add
Advance C Lab
2.Delete
3.Display
4.Billing
5.Exit
Term Work 2
Implement A Simple Calculator Application In C. Includes The Modules For Following
1)Read The Two Numbers And The Operations (+,-*/)
2)Modules for Addition, Subtraction, Multiplication And Division
3)Display The Results
Use Pointers To Function For Add, Subtract, Multiply and Divide Operations.
#include <stdio.h>
printf("Sum Is:");
printf("%d",a+b);
printf("Diff is:");
printf("%d",a-b);
printf("Product Is:");
printf("%d",a*b);
printf("Result is:");
printf("%d",a/b);
void main()
{
Advance C Lab
void(*calc[])(int,int)={Add,sub,Multiply,Divide};
scanf("%d",&choice);
scanf("%d%d",&a,&b);
while(choice<5&&choice>0)
(*calc[choice-1])(a,b);
scanf("%d",&choice);
if(choice<5&&choice>0)
scanf("%d%d",&a,&b);
else
break;
}
Advance C Lab
Enter
1.Add
2.Subtract
3.Multiply
4.Divide
Enter A and B:
10 20
Sum Is:30
Enter Choice :2
Enter
1.Add
2.Subtract
3.Multiply
4.Divide
20 10
Diff is:10
Enter Choice :3
Enter
1.Add
2.Subtract
3.Multiply
4.Divide
55
Product Is:25
Enter Choice :4
Enter
1.Add
2.Subtract
3.Multiply
Advance C Lab
4.Divide
50 2
Result is:25
Enter Choice :
Advance C Lab
Term Work 3
Implement a Simple Banking Application in C by Making Use Of Array Of Structures With
Following Functionalities.
1)Create A New Account
2)Deposit Amount
3)Withdraw Amount
4)Balance Enquiry
#include <stdio.h>
struct account
char name[20];
int accid;
int balance;
};
strcpy(arracc[indexacc].name,name);
arracc[indexacc].accid=10000+indexacc;
arracc[indexacc].balance=0;
indexacc++;
return indexacc;
int custaccindex=accno-10000;
arracc[custaccindex].balance+=amtdep;
int custaccindex=accno-10000;
arracc[custaccindex].balance-=amtwithdraw;
Advance C Lab
}
int custaccindex=accno-10000;
printf("Balance Is %d\n",arracc[custaccindex].balance);
void main()
char name[10];
int choice,custaccno,amtdep,amtwithdraw,countacc=1;
for(;;)
printf("Enter Choice");
scanf("%d",&choice);
switch(choice)
scanf("%s",name);
countacc=create(arracc,name,&countacc);
break;
scanf("%d%d",&custaccno,&amtdep);
deposit(arracc,custaccno,amtdep);
break;
scanf("%d%d",&custaccno,&amtwithdraw);
withdraw(arracc,custaccno,amtwithdraw);
break;
scanf("%d",&custaccno);
balenq(arracc,custaccno);
Advance C Lab
break;
case 5:exit(0);
}
Advance C Lab
Term Work 4
Implement a Simple Inventory Using Data Files In C, Includes the Modules
1)Add/Delete a New Post
2)Manufacture/Sale Transaction
3)Display A Particular Part
4)Display a Stock Of All Parts
Use Separate files for each of the above operations and execute them with make utility.
Main Function
#include <stdio.h>
#include <stdlib.h>
#include "inv.h"
char con;
int opt=0;
do
printf(" Menu\n");
printf("1...Add an item\n");
printf("4...Make Transaction\n");
printf("5...Delete an item\n");
printf("6...Exit\n");
scanf("%d",&opt);
switch (opt)
case 1:
Advance C Lab
read_part();
break;
case 2:
print_part();
break;
case 3:
query_part();
break;
case 4:
transaction();
break;
case 5:
delete_part();
break;
case 6:
exit(0);
default:
}while(opt != 6);
return 0;
}
Advance C Lab
Cr Function
#include "inv.h"
void read_part() {
FILE *outfile;
inventory input;
char c='y';
if (outfile == NULL)
exit (1);
printf("Stock : ");
printf("Price : ");
printf("Press y or Y to continue:");
fflush(stdin);
scanf("%c",&c);
fclose(outfile);
}
Advance C Lab
Pr Function
#include "inv.h"
void print_part()
FILE *infile;
inventory npart;
infile=fopen("Part.dat","r");
while(fread(&npart,sizeof(npart),1,infile))
npart.part_no,npart.name,npart.stock,npart.price);
fclose(infile);
}
Advance C Lab
T function
#include "inv.h"
char con;
int opt=0;
printf(" Menu\n");
printf("1...Add an item\n");
printf("4...Make Transaction\n");
printf("5...Exit\n");
scanf("%d",&opt);
switch (opt) {
case 1:
read_part();
opt=0;
break;
case 2:
print_part();
opt=0;
break;
case 3:
query_part();
opt=0;
break;
case 4:
transaction();
opt=0;
Advance C Lab
break;
case 5:
exit(0);
default:
printf("Wrong option\n");
scanf(" %c",&con);
return 0;
}
Advance C Lab
Delete Function
#include "inv.h"
void delete_part()
FILE *infile;
FILE *tmpFile;
int n, found=0;
inventory npart;
infile=fopen("Part.dat","r");
tmpFile=fopen("tmp.dat","w");
scanf("%d",&n);
while(fread(&npart,sizeof(npart),1,infile)!=NULL)
if(npart.part_no == n)
found = 1;
else
if(!found)
else
printf("Part No %d deleted\n",n);
fclose(infile);
fclose(tmpFile);
remove("Part.dat");
Advance C Lab
rename("tmp.dat", "Part.dat");
}
Advance C Lab
Tr Function
#include "inv.h"
void transaction()
FILE *infile1;
FILE *infile2;
long inv_size,trans_size;
char c;
inventory npart;
transact t;
inv_size=sizeof(npart);
trans_size=sizeof(t);
infile1=fopen("Part.dat","r+");
infile2=fopen("Trans.dat","a");
scanf("%d",&t.part_no);
fflush(stdin);
scanf("%c",&t.type);
c=t.type;
scanf("%d",&t.quantity);
if (feof(infile1))
else
if (c=='m' || c=='M')
fclose(infile1);
fclose(infile2);
}
Advance C Lab
Query Function
#include "inv.h"
void query_part()
FILE *infile;
int n;
inventory npart;
infile=fopen("Part.dat","r");
scanf("%d",&n);
while(!feof(infile))
fread(&npart,sizeof(npart),1,infile);
if(npart.part_no == n)
break;
if (feof(infile))
else
npart.part_no,npart.name,npart.stock,npart.price);
fclose(infile);
}
Advance C Lab
Inv Function
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct {
int part_no;
char name[30];
int stock;
float price;
} inventory;
typedef struct {
int part_no;
char date[10];
char type;
int quantity;
} transact;
Term Work 5
Write and execute a C++ program to read n students details-Name, USN, And Marks in 3
Subjects. Calculate and display the total, percentage and grade obtained for each student.
Refer The Following Table For Grading
>=80 Grade is A
>=70 and <80 Grade B
>=60 and <70 Grade C
#include <iostream>
#include<cstring>
class Student
public:char name[30];
char usn[10];
int marks[3];
int i;
strcpy(this->name,name);
strcpy(this->usn,usn);
for(i=0;i<=2;i++)
this->marks[i]=marks[i];
int computeTotal()
int i,total=0;
for(i=0;i<=2;i++)
total+=this->marks[i];
}
Advance C Lab
return total;
};
int main()
char name[20],usn[10];
int i,j,n,total=0,marks[3];
double avg=0.0;
cin>>n;
for(i=1;i<=n;i++)
total=0;
cin>>name;
cin>>usn;
for(j=0;j<=2;j++)
cin>>marks[j];
Student st=Student(name,usn,marks);
total+=st.computeTotal();
avg=total/3;
cout<<"\n";
if(avg>=80)
else
if(avg>=70&&avg<80)
else
Advance C Lab
cout<<"Grade C\n";
}
Advance C Lab
Output
Enter No Of Students :3
Avg Is :87
Grade A
Avg Is :55
Grade C
Avg Is :43
Grade C
Term Work 6
Write and Execute C++ Program with Function Overloading To Calculate The Area Of Circle,
Rectangle and a Triangle.
#include <iostream>
int area(int);
int area(int,int);
float area(float,float);
main()
int r,l,b;
float bs,ht;
cin>>r;
cin>>l>>b;
cin>>bs>>ht;
cout<<"\n";
cout<<"\n";
cout<<"\n";
int area(int r)
return (3.14*r*r);
return(l*b);
Advance C Lab
}
return(0.5*bs*ht);
class area
int r,l,b;
float bs,ht;
public:
void read();
void display();
};
Advance C Lab
Output
Enter The Sides Of The Circle :3
Term Work 7
Write And Execute a C++ Program To Implement the COMPLEX number class and perform the
following operations:
1.Read a COMPLEX number
2.Display a COMPLEX number
3.Add 2 COMPELX numbers(use objects as function arguments)
4.Add an Integer number to one of the COMPLEX number
#include <iostream>
class COMPLEX
private:int realp;
int imgp;
public:void readValues(void)
cin>>realp>>imgp;
};
COMPLEX C;
C.realp=S1.realp+S2.realp;
C.imgp=S1.imgp+S2.imgp;
return C;
}
Advance C Lab
COMPLEX ADD(int ival,COMPLEX S2)
COMPLEX C;
C.realp=ival+S2.realp;
C.imgp=S2.imgp;
return C;
cout<<comp.realp<<"+i"<<comp.imgp
<<endl;
return out;
int main()
COMPLEX C1,C2,C3,C4;
int choice,ival;
cin>>choice;
switch(choice)
case 1:C1.readValues();
C2.readValues();
cout<<"\nC1="<<C1;
cout<<"C2="<<C2;
cout<<"------------"<<endl;
C3=ADD(C1,C2);
cout<<"C3="<<C3;
break;
cin>>ival;
Advance C Lab
COMPLEX C4;
C1.readValues();
cout<<"\n ival="<<ival<<endl;
cout<<"C1="<<C1;
cout<<"-------------------"<<endl;
C4=ADD(ival,C1);
cout<<"C4="<<C4;
break;
break;
}
Advance C Lab
Output
1.To Add Two Complex Objects
23
34
C1=2+i3
C2=3+i4
------------
C3=5+i7
2nd Option
Enter An Integer:
13
ival=3
C1=1+i3
-------------------
C4=4+i3
Term Work 8
1) Write and execute a C++ program to implement the following class hierarchy
MANAGER
PRODUCTION SALES
MANAGER MANAGER
#include <cstring>
class Manager
public:
char name[10];
int age,basicSal,hra,da,all,tAll;
Manager(){}
{
Advance C Lab
strcpy(this->name,name);
this->age = age;
objectCount++;
cout<<"Gross is:"<<this->basicSal*(this->hra+this->da+this->all)/100;
return objectCount;
};
public:
objectCount++;
float grossSal;
cout<<"\nGross is:"<<grossSal<<"\n";
};
public:
objectCount++;
float grossSal;
cout<<"\nGross is:"<<grossSal<<"\n";
};
int Manager::objectCount = 0;
int main()
int basicSal;
Manager *mgr;
Advance C Lab
cin>>basicSal;
mgr->computeSal(basicSal);
mgr->computeSal(basicSal);
cout<<"\n";
Output
Enter basic salary:10000
Gross is:24500
Net is:19600
Gross is:32500
Net is:26000
Total objects: 4