This was done in C program using visual studios, my codes works, but it doesn\'t
ID: 3872461 • Letter: T
Question
This was done in C program using visual studios, my codes works, but it doesn't do what I need it to do, please keep my same code, and edit it to give me what I have written down. I provided all my source files and header files , I am not sure if it's a problem with my main function or one of the source files as well, please also give me the code and a brief step on how to enter in the database(maybe I'm entering it wrong ) I want my code output to be like the picture I written out. Not like the last picture, I am making a database project that should allow me to make multiple entries, be able to save it to a disk file, be able to read it from the disk and display it, My problem is, it always override the data I previously entered, if I type "55555" then "44444" it deletes the "5555" instead of adding "4444" to the other line Can someone suggest what code I am missing and where to place it, to have my output the way I have it written on the piece of paper?Explanation / Answer
Given below is the changed main file. Output shown below. In case of issues let me know through comment. If it helped, please rate the answer. thank you
#include "header.h"
int main(int argc, char* argv[])
{
link ptr, firstptr = NULL, lastptr = NULL;
char sel;
while (true)
{
printf(" Select Option: ");
printf("(1) Enter new database ");
printf("(2) Read database fromn disk ");
printf("(3) Save current database ");
printf("(4) Display current database in memory ");
printf("(5) Exit the database ");
sel = _getche();
switch (sel)
{
case '1':
{
ptr = liquor();
if (!firstptr)
firstptr = lastptr = ptr;
else {
lastptr->next = ptr;
lastptr = ptr;
break;
}
printf("Do you want to choose another option ?");
sel = _getche();
if (sel == 'n' || sel == 'N')
break;
}
case '2':
firstptr = readdb();
if (firstptr == NULL)
{
printf(" The specified file does not exist. Try again ");
break;
}
break;
case '3':
writedb(firstptr);
break;
case '4':
dispdb(firstptr);
break;
case '5':
exit(0);
default:
printf("This was an invalid option.TRY AGAIN");
}
}
}
output
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
warning: this program uses gets(), which is unsafe.
Enter Quantity: 5
Enter Description: 5
Enter Price: 5
Enter Discount: 5
Enter Amount: 5
Do you want to choose another option ?n
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
3
Enter name for database file: q.q
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
Enter Quantity: 4
Enter Description: 4
Enter Price: 4
Enter Discount: 4
Enter Amount: 4
Segmentation fault: 11
amoeba-2:db raji$ clear
amoeba-2:db raji$ g++ dbmain.cpp
amoeba-2:db raji$ ./a.out
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
warning: this program uses gets(), which is unsafe.
Enter Quantity: 5
Enter Description: 5
Enter Price: 5
Enter Discount: 5
Enter Amount: 5
Do you want to choose another option ?n
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
3
Enter name for database file: q.q
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
Enter Quantity: 4
Enter Description: 4
Enter Price: 4
Enter Discount: 4
Enter Amount: 4
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
3
Enter name for database file: 1.1
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
^C
amoeba-2:db raji$ g++ dbmain.cpp
amoeba-2:db raji$ ./a.out
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
warning: this program uses gets(), which is unsafe.
Enter Quantity: 5
Enter Description: 5
Enter Price: 5
Enter Discount: 5
Enter Amount: 5
Do you want to choose another option ?n
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
3
Enter name for database file: q.q
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
1
Enter Quantity: 4
Enter Description: 4
Enter Price: 4
Enter Discount: 4
Enter Amount: 4
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
3
Enter name for database file: q.q
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
2
Enter name for database file: q.q
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
4
Quantity Description Price Discount Amount
5 5 5 5 5
4 4 4 4 4
Select Option:
(1) Enter new database
(2) Read database fromn disk
(3) Save current database
(4) Display current database in memory
(5) Exit the database
5
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.