KEMBAR78
Address Book Management System | PDF | Command Line Interface | Computer Programming
0% found this document useful (0 votes)
31 views19 pages

Address Book Management System

The Address Book Management System is a modular C program that allows users to manage personal contact information through a command-line interface, featuring functionalities such as adding, searching, editing, and deleting contacts with data validation. It emphasizes clean coding practices and lays the groundwork for future enhancements like file storage and GUI integration. The project demonstrates effective use of C programming concepts and aims to improve user experience and data integrity.

Uploaded by

fasilay352
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views19 pages

Address Book Management System

The Address Book Management System is a modular C program that allows users to manage personal contact information through a command-line interface, featuring functionalities such as adding, searching, editing, and deleting contacts with data validation. It emphasizes clean coding practices and lays the groundwork for future enhancements like file storage and GUI integration. The project demonstrates effective use of C programming concepts and aims to improve user experience and data integrity.

Uploaded by

fasilay352
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

PROJECT

Address Book Management System

BY
PAVAN KUMAR G V
gvpavanec008@gmail.com
PROJECT DESCRIPTION

Abstract

The Address Book Management System is a modular C program designed to handle personal
contact information through a command-line interface. It enables users to create, search, edit,
delete, and view contacts, using structured data management with validation to ensure accuracy
and avoid duplication.
Built using structures and modular functions, the system emphasizes clean coding practices,
input validation, and user-friendly interaction. Though currently memory-based, it lays the
foundation for enhancements like file storage and GUI integration, making it a scalable and
practical application of core C programming concepts.
Features implemented
• • Add New Contacts
• • Search by Name, Phone, or Email
• • Edit Contact Information
• • Delete Existing Contacts
• • Display All Stored Contacts
• • Email & Mobile Number Validation
•File based storage using.CSV
Requirements
Tools and Requirements :
• Operating System: Windows / Linux
• Compiler: GCC (via MinGW on Windows or native on Linux)
• Language: C Programming
• Terminal: Command Prompt / Bash Shell for execution

Modules Used
• main.c
• contact.h /contact.c
• file.c / file.h
• Defination.c
• Address Book.CSV
Address Book – Feature Descriptions
1. Add Contact
•Allows users to add a new contact by entering:
•Name
•Phone Number (validated for format and uniqueness)
•Email Address (validated for format and uniqueness)
•Duplicate checking ensures no two contacts have the same phone/email.
2. List Contacts
Displays all saved contacts in a readable format.
Each contact includes: Name, Phone, and Email.
Helps the user quickly review all stored entries.

3. Search Contact
Enables users to search for a contact using one of three criteria:
By Name
By Phone Number
By Email
Displays the matched contact(s), if found.
4. Edit Contact
After searching for a contact, users can update any of its fields.
Prompts user to confirm and enter new values.
Ensures validation is applied on updated values.

5. Delete Contact
Allows the user to remove a contact permanently.
Similar to the search feature: user searches the contact, and on confirmation, it is deleted
from memory.
6. Input Validation
•Ensures data quality by:
•Checking phone numbers (e.g., 10-digit format)
•Validating email structure (e.g., contains @ and domain)
•Rejecting duplicates

7. Modular Design
Functions are separated logically (e.g., search, edit, create), making the
program clean and easy to expand.
Validation rules in project

Phone Number Validation

Goal:
Ensure the phone number entered by the user:
•Has exactly 10 digits
•Contains only numeric characters
•Is not already present in the contact list (no duplicates)

Logic:

•Read the phone number as a string.


•Check:
•Length is 10
•All characters are digits using isdigit() or manual check
•Then loop through existing contacts to check for duplicates using strcmp().
Email Validation
Goal:
Ensure the email entered by the user:
Has a valid structure (e.g., contains @ and a domain)
Is not already used in the address book

Logic:
Read the email as a string.
Check:
Contains one @
Has at least one . after @
Use strchr() and strstr() to locate @ and ..
Loop through existing contacts to ensure it is not a duplicate.
Why Validation?
• Prevents bad data from entering the system Ensures CSV file remains
clean and structured Improves user trust and application robustness.

• Sample Inputs/Outputs :
Enter Name: Pavan
Enter Email : pavan.g@gmail.com
Enter Phone: 8367012026
Contact added successfully!
Sample Outputs
Conclusion:
• The Address Book project successfully demonstrates the use of C programming,
modular design, and data validation to manage personal contact information. It
offers essential features like add, search, edit, and delete, while ensuring
accuracy and user-friendly interaction.

Future Scope
• Implement file read/write to store data permanently.
• Add GUI using tools like Qt, GTK, or Python Tkinter.
• Add support for cloud sync and sorting options.

You might also like