GOVERNMENT WOMEN RESIDENCE POLYTECHNIC, TASGAON CERTIFCATE This is to certify that following group members of Sr. Roll no. No. 1 19107 2 Enrollment no. Exam Seat no Name of student Anushka Chavan 3 Third/ Forth Semester of Diploma in Computer Engineering, G.R.W.P,Tasgaon Institute (Institute Code: 1228 ) has completed the mini project entitled “ Contact management system " Satisfactorily in the subject Data structure using C (Subject Code : 22317) for the Academic Year 2020-2021. Mini project Guide Head of the Department Principal 1 Acknowledgement It is my great pleasure to acknowledge my research guide Ms. Sonali Dohe in Data structure using C , Government Women Residence Polytechnic, Tasgaon who introduced me to a fascinating realm of Digital Techniques. Her invaluable guidance, constant inspiration, unending support helped me a lot to focus My views in proper perspective. Her tireless enthusiasm has always been a source of inspiration for me. My deepest personal regards are due for her forever. It is great privilege for me to express my sincere thanks to Dr. Pardeshi S.A. , In-charge Principal Government Women Residence Polytechnic, Tasgaon for his valuable suggestions ,and constant encouragement for my project work. I sincerely acknowledge the help and co-operation from teaching and non- teaching staff of the Department of the Conputer Engineering, Government Women Residence Polytechnic, Tasgaon. Place: Tasgaon Date : 2 Part A – Mini -Project Proposal " Contact management system" 1. Brief Introduction: The "Contact Management System" has been developed to override the problems prevailing in the practicing manual system. This software is supported to eliminate and in some cases reduce the hardships faced by this existing system. Moreover this system is designed for the particular need of the company to carry out operations in a smooth and effective manner. The application is reduced as much as possible to avoid errors while entering the data. It also provides error message while entering invalid data. No formal knowledge is needed for the user to use this system. Thus by this all it proves it is user-friendly. Contact Management System , as described above, can lead to error free, secure, reliable and fast management system. It can assist the user to concentrate on their other activities rather to concentrate on the record keeping. Thus it will help organization in better utilization of resources. Every organization, whether big or small, has challenges to overcome and managing the information of Credential, Contact, Profile, Mobile, Emails. Every Contact Management System has different Contact needs, therefore we design exclusive employee management systems that are adapted to your managerial requirements. This is designed to assist in strategic planning, and will help you ensure that your organization is equipped with the right level of information and details for your future goals. Also, for those busy executive who are always on the go, our systems come with remote access features, which will allow you to manage your workforce anytime, at all times. These systems will ultimately allow you to better manage resources. 2. Aim of Mini-project: To prepare the miniproject report on "Contact management system" and implement , compile and run the C program. To develop a “Phonebook contact” application using c programming. 3 This program is very useful now-a-days to store complete information undersingle contact number. 3. Intended Course Outcomes: 1. To create a project using C-programming and its features. 2. To implement features like control statement, structures and file handlings. 3. To be familiar with resource reusability by making user defined function. 4. To make the program easy while running it. 4. Literature Review: Books: 1. 2. 3. CRM Fundamentals Contact management system Data structure using C textbook Learning Websites: 1. https://www.slideshare.net/mobile/romie1995/contact-management-system-phonebook-management-system 2. https://www.slideshare.net/mobile/dineshsahu44/contact-management-system71156442 3. https://www.codewithc.com/mini-project-in-c-contact-management-system/ 4. https://www.webcoursesbangkok.com/blog/contact-management-system/ 4 5. Proposed Methodology: 1. We first selected the topic for the Mini-project by conducting group discussion. 2. We started to collect information on the concept via various sources such as reference books and internet. 3. We studied various reference books. 4. We presented part A to the teacher. 5. We started to work on part B. 6. We collected information on part B. 7. We learnad all about Data structure using C . 8. Then we learn how to implement C programs. 9. We prepared the part B and presented in front of teacher. 10 . Made required corrections and submitted Mini-project. 6. Resources Required: Sr. No. 1. 2. Reference Book CRM Fundamentals Software Project Management Author Name Scott Kostojohn, Brian Paulen, Mathew Johnson Bob Hughes,Mike Cotterell 7. Action Plan: Sr. No. 1 Details of activity Start Date End Date Name of team members Select the topic of Mini-project. 2 Collect the information from internet and reference books. 3 Prepare part A. 4 Present part A in front of teacher. 5 Collect information of part B. 6 Prepare part B. 7 Present part B in front of teacher. Anushka Santosh Chavan Shruti Tayappa Kamble Aishwarya Sundar Bandgar 5 8 Submitted the Mini-project Part B – Mini -Project Report 1. Rationale: The mini project 'Contact Management' is the sample project for managing contact details. The project aims at developing contact management system using the C language that enables an organization to maintain its library. The project demonstrates the creation of a user interface of a system, without the use of C Graphics library. The application uses basic C function to generate menus, show message boxes and print text on the screen. To display customized text with colors and fonts according to application requirements, functions have been created in the application, which fetch the exact video memory addresses of a target location, to write text at a particular location. The application also implements the concept of structures to define the contact items. It also effectively applies the various C concepts such as file operations, looping and branching constructs and string manipulation functions. Control statement C language possesses such decision making capabilities by supporting the follow statements: •If statement •Switch statement •Conditional operator statement These statements are popularly known as decision-making statements. Since these statements 'control the flow execution, they are known as control statements. 6 1. control statement The if-statement is a powerful decision making statement and is used to control the floexecution of statements. It is basically a two-way decision statement and is used in conjunction with an expression. It takes the following form: If (test expression) It allows the computer to evaluate the expression first and then, depending on whether the value expression (relation or condition) is 'true' (or non-zero) of false' (zero),it transfers the controlto a particular statement. This point of program has two paths to folow, one for the true condition and the other for the false condition as shown below: The if statement may be implemented in different forms depending on the complexity of conditions to be tested.the different forms are: •Simple if statement •If...else statement • Nested if.....else statement Else if ladder. 2. Switch statement:C has a built-in multiway decision statement known as a switch. The switch statement tests the value of a given variable (or expression) against a list of case values and when a match is found, a block of statements associated with that case is executed. The general form of the switch statement is as shown below: 7 switch (expression) { case value-1: block-1 break; case value-2: block-2 break; .................... .................... default: default-block break; } statement-x: The expression is an integer expression or characters. value-1,value-2..are constants or constant expressions (evaluable to an integral constant) und are known as case labels. Each of these values should be unique within a switch statement. block-1.block-2.are Statement lists and may contain zero or more statements. There is no need to put braces around these blocks. Note that case labels end with a colon:). 3. Conditional operator statement:- The e language has an unusual operator, useful for making two-way decisions. This operator is a combination of? And takes three operands. This operator is popularly known as the conditional operators. The general form of use of the conditional operator is as follows: Conditional expression? expression1:expression2 The conditional expression is evaluated first. if the result is nonzero.expressionl is evaluated and is retumed as the value of the conditional expression.Otherwise.expression2 is evaluated and its value is retumed. 8 2. Course Outcomes Addressed: 1. To get an idea about making a simple project using C. 2. To be able to solve problems by compiling and Debugging. 3. To concise the memory of program as far as possible. 4. To be able to work in groups as a team sharing different responsibilities. 5. To learn about the use of user defined function, structure, array and data file in C. 3. Literature Review: Books: 1. CRM Fundamentals 2. Contact management system 3. Data structure using C textbook Learning Websites: 1. https://www.slideshare.net/mobile/romie1995/contact-managementsystem-phone-book-management-system 2. https://www.slideshare.net/mobile/dineshsahu44/contactmanagement-system-71156442 3. https://www.codewithc.com/mini-project-in-c-contact-managementsystem/ 4. https://www.webcoursesbangkok.com/blog/contact-managementsystem/ 4. Proposed Methodology: 9 The first and the most prominent step of establishing a contact management system is to engage directly with the customer who is seeking a solution to his/her problem through the product or service the company is providing. Contact management can be initiated by implementing one of the following ways. You can directly engage with the customer by asking him about the products or services being promoted or advertised by the company. You can make cold calling, which includes calling up a particular person and asking him whether he or she might be interested in the new product or scheme inaugurated by the company. You can contact prospects by internal or external references, i.e., known acquaintances, relatives, or friends of a pre-existing customer. You can make prospects take online surveys and past track record of the web surfing of the customers. You can participate in online events and exhibition events where potential customers can give their details and express their perspectives about the product or service of a company. When the lead has been created by acting upon the strategies mentioned above, it is then time to build on the lead. It is strongly recommended to know as much as possible information about the preferences of a customer and try to acquire extensive knowledge about how much money potential customer is willing to spend. It will convert a customer into ever paying client. Consistent engaging with the customers ensures the customer that an organization pays special heed on providing value-added incentives. Through direct interaction with the customer, company personnel can guide their respected customers towards the official website of a company, and utilize telephonic conversation to gain firsthand knowledge about the needs of the customers. 5. Actual Resources used: 10 Sr. No. 1. Reference Book CRM Fundamentals 2. Textbook - Data structure using C 3. Software Project Management Author Name Scott Kostojohn, Brian Paulen, Mathew Johnson ---- Bob Hughes,Mike Cotterell 6. Conclusion: So far, we’ve discussed all the critical aspects of the contact management automated system. So far, whatever has been said, it should be taken into consideration that the success of any business, whether it is a large organization or a small startup solely relies on the level of satisfaction of the customer. Just because of these reasons, large organizations emphasize significantly on the automated contact management system to reduce the company overhead and enhance their revenue as an outcome. 7. Output of the Microproject: • Algorithm1. Start. 2. Display the options on the screen. 3. Read name, address, father name, mother name, mobile number, gender. 4. Print "WELCOME TO CONTACT MANAGEMENT SYSTEM" and "Menu" on the screen. a. Add contact b. Print all contacts c. Modify contacts d. Search contact 11 e. Delete contact f. Close phone book 5. Now for Addrecord(),arranging data as Enter name ,Enter address ,Enter phone no, Email ID and finally operations record saved ,Enter any key. 6. Now for listrecord(),arranging data as a. if data is empty print file opening error in listing b. Elseprint your record: name,address,mobile no, Email ID c. After all these print enter any key 7. Now for searchrecord(),arranging data as a. if data is insufficient print error in opening b. Else c. print enter name of contact to be searched and i. If (strcmp(p.name,name)0) ii. print detail information about name and name,address,mobilenum, Email. d. After entering all these, print enter any key 8. Now for deleterecord(),arranging the data as a. If (f=null) b. print contact's data not added yet i. else ii.if(f=null) iii. print file opening error iv. Else v. Print enter contact's details. 9. if (flag!=1) 12 a. print no contact's record to delete b. Else c. print record deleted successfully d. After entering all the data print enter any key 10.for modifyrecord(),arranging the data as a. If (f==null) b. print contact's data not added yet c. Else d. enter contact's name to modify i. Print enter name , enter address ,mobile number, Email after entering the data ii. print your data is modified iii. Else iv. print data is not found v. Finally print enter any key. 11.Redisplay the menu for user required input. • Program code - #include<stdio.h> #include<conio.h> #include<string.h> #include<process.h> #include<stdlib.h> #include<dos.h> { 13 struct contact longph; char name[20],add[20],email[30]; } list; char query[20].name[20]: FILE *fp, *ft; inti,n,ch,1,found; int main() { main: system("cls"): /*************Main menu *********************** */ printf("\n\t **** Welcome to Contact Management System ****"); printf("\n\n\n\t\t\&MAIN MENU\n\t\t Add a new Contact\n\t\t[2] List all Contacts\n\t\t[3] Search for contact\n\t\t[4] Edit a Contact\n\t\t[5] Delete a Contact\n\t\t[0] \n\t\t[1] Exit\n\t\t=== ===\n\t\t"); printf("Enter the choice:"); scanf("%d",&ch); switch(ch) { case 0: printf("\n\n\t\tAre you sure you want to exit?"); break; /* *********************Add new contacts************ */ case 1: system("cls"): fp=fopen("contact.dll","a"); for (;:) { 14 fflush(stdin): printf("To exit enter blank space in the name input\nName (Use identical):"); scanf("%[^\n]",&list.name); if(stricmp(list.name,")-0 || stricmp(list.name," ")=0) break; fflush(stdin); printf("Phone:");: scanf("%ld",&list.ph); fflush(stdin); printf("address:"); scanf("%[^\n]",&list.add); fflush(stdin); printf("email address:"); gets(list.email); printf("\n"); fwrite(&list,sizeof(list), 1,fp); } fclose(fp); break; *****************list of contacts******** /******* ******* case 2: system("cls"); printf("\n\t\t= \n\t\t\tLIST OF CONTACTS\n\t\t=b \n\nName\ t\tPhone No\t Address\t\tE-mail ad.\n \n\n")3B for(i=97; i<=122; i=i+1) fp=fopen("contact.dll","r"); fflush(stdin); found-0; 15 while(fread(&list,sizeof(list), 1,fp)=1) { if(list.name[0]=i || list.name[0]i-32) { printf("\nNamelt: %s\nPhone\t: %ld\nAddress\t: %s\nEmail\t: %s\n",list.name, list.ph,list.add,list.email); found++; } } if(found!=0) { printf(": [%c]-(%d)\n\n",i-32,found); getch(): } fclose(fp); } break; /** ***search contacts* *** case 3: system("cls"); do { found-0; printf("\n\n\t..:CONTACT SEARCH\n\t= \n\t..::Name of contact to search: "): fflush(stdin); scanf("%[^\n]",&query); I-strlen(query); 16 fp=fopen("contact.dll","r"); system("els"); printf("\n\n..:Search result for %s' \n- \n",query); while(fread(&list,sizeof(list), 1.fp)==1) { for(i-0; i<=l; i++) name[i]=list.name[i]; name[I]="\0'; if(stricmp(name,query)0) { printf("\n..:Name\t: %s\n..::Phone\t: %ld\n..::Address\t: %s\n..::Email\t: %s\n",list.name,list.ph,list.add,list.email): found++; if (found%4=0) printf("..:Press any key to continue..."); getch(); } } } if(found0) printf("\n..:No match found!"); else printf("n..:%d match(s) found!",found); felose(fp); printf("\n .:Try again?\n'n\t[1] Yes\itlef0] No\n\t"): scanf("%d",&ch); } while(ch=1); break; 17 *editcontacts" ** case 4: system("cls"): fp-fopen("contact.dll","r"); ft=fopen("temp.dat","w"); fflush(stdin); printf("..:Edit contact\n= \n\n\t.:Enter the name of contact to edit:"); scanf("%[^\n]",name); while (fread(&list,sizeof(list), 1,fp)==1) { if(striemp(name,list.name)!=0) fwrite(&list,sizeof(list), 1,ft); } fflush(stdin); printf("\n\n..:Editing %s'\n\n",name); printf("..:Name(Use identical):"); scanf("%[^\n]",&list.name) fflush(stdin); printf("..:Phone:"); scanf("%ld",&list.ph); fflush(stdin); printf(".:address:"); scanf("%[^\n]",&list.add); fflush(stdin); printf("..::email address:"); gets(list.email); printf("\n"); 18 fwrite(&list,sizeof(list),1,ft); fclose(fp); fclose(ft); remove("contact.dll"); rename("temp.dat","contact.dll"); break; **deletecontacts* *** **/ ****/ case 5: system("cls"); fflush(stdin); printf("\n\n\t..:DELETE A CONTACT\n\t= \n\t..::Enter the name of contact to delete:"); scanf("%[^\n]",&name); fp=fopen("contact.dll","r"); fi-fopen("temp.dat","w"); while(fread(&list,sizeof(list), 1,fp)!=0) if (stricmp(name,list.name)!-0) fwrite(&list,sizeof(list), 1,ft); fclose(fp); felose(ft); remove("contact.dll"): rename("temp.dat","contact.dll"); break; default: printf("Invalid choice"); break; } 19 printf("\n\n\n..:Enter the Choice:\n\n\t[1] Main Menu\ele[0] Exit\n"); scanf("%d",&ch); switch (ch) case 1: goto main; case 0: break; default: printf("Invalid choice"); break; return 0; } • output 20 21 8. Skill Developed/learning out of this Microproject: We learn about contact management system. We become able to develop a “Phonebook contact” application using c programming. 9. Application of this Miniproject: It may help collecting perfect management in details. In a very short time, the collection will be obvious, simple and sensible. It will help a person know the management of passed year perfectly and vividly. It also helps in current all works relative to Contact Management System. It will be also reduced the cost of collecting the management & collection procedure will go on smoothly. Our project aims at Business process automation, i.e. we have tried to computerize various processes of Contact Management System. • In computer system the person has to fill the various forms & number of copies of the forms can be easily generated at a time. •In computer system, it is not necessary to create the manifest but we can directly print it, which saves our time. •To assist the staff in capturing the effort spent on their respective working areas. •To utilize resources in an efficient manner by increasing their productivity through automation. 22 • The system generates types of information that can be used for various purposes. • It satisfy the user requirement. •Be easy to understand by the user and operator. •Be easy to operate Have a good user interface. •Be expandable Delivered on schedule within the budget. 10. Area of Future Improvement: It becomes even difficult to store contacts with two or more contact numbers. It becomes easy for the user to store complete information (e-mail id, address,e.t.c) about his contact. 23